20
20
21
21
import deid
22
22
23
- HARMFUL_STRING = 'My SSN is 372819127'
24
- HARMLESS_STRING = 'My favorite color is blue'
25
- GCLOUD_PROJECT = os .getenv ('GCLOUD_PROJECT' )
26
- WRAPPED_KEY = ('CiQAz0hX4+go8fJwn80Fr8pVImwx+tmZdqU7JL+7TN/S5JxBU9gSSQDhFHpFVy'
27
- 'uzJps0YH9ls480mU+JLG7jI/0lL04i6XJRWqmI6gUSZRUtECYcLH5gXK4SXHlL'
28
- 'rotx7Chxz/4z7SIpXFOBY61z0/U=' )
29
- KEY_NAME = ('projects/python-docs-samples-tests/locations/global/keyRings/'
30
- 'dlp-test/cryptoKeys/dlp-test' )
31
- SURROGATE_TYPE = 'SSN_TOKEN'
32
- CSV_FILE = os .path .join (os .path .dirname (__file__ ), 'resources/dates.csv' )
23
+ HARMFUL_STRING = "My SSN is 372819127"
24
+ HARMLESS_STRING = "My favorite color is blue"
25
+ GCLOUD_PROJECT = os .getenv ("GCLOUD_PROJECT" )
26
+ WRAPPED_KEY = (
27
+ "CiQAz0hX4+go8fJwn80Fr8pVImwx+tmZdqU7JL+7TN/S5JxBU9gSSQDhFHpFVy"
28
+ "uzJps0YH9ls480mU+JLG7jI/0lL04i6XJRWqmI6gUSZRUtECYcLH5gXK4SXHlL"
29
+ "rotx7Chxz/4z7SIpXFOBY61z0/U="
30
+ )
31
+ KEY_NAME = (
32
+ "projects/python-docs-samples-tests/locations/global/keyRings/"
33
+ "dlp-test/cryptoKeys/dlp-test"
34
+ )
35
+ SURROGATE_TYPE = "SSN_TOKEN"
36
+ CSV_FILE = os .path .join (os .path .dirname (__file__ ), "resources/dates.csv" )
33
37
DATE_SHIFTED_AMOUNT = 30
34
- DATE_FIELDS = [' birth_date' , ' register_date' ]
35
- CSV_CONTEXT_FIELD = ' name'
38
+ DATE_FIELDS = [" birth_date" , " register_date" ]
39
+ CSV_CONTEXT_FIELD = " name"
36
40
37
41
38
- @pytest .fixture (scope = ' module' )
42
+ @pytest .fixture (scope = " module" )
39
43
def tempdir ():
40
44
tempdir = tempfile .mkdtemp ()
41
45
yield tempdir
42
46
shutil .rmtree (tempdir )
43
47
44
48
45
49
def test_deidentify_with_mask (capsys ):
46
- deid .deidentify_with_mask (GCLOUD_PROJECT , HARMFUL_STRING ,
47
- ['US_SOCIAL_SECURITY_NUMBER' ])
50
+ deid .deidentify_with_mask (
51
+ GCLOUD_PROJECT , HARMFUL_STRING , ["US_SOCIAL_SECURITY_NUMBER" ]
52
+ )
48
53
49
54
out , _ = capsys .readouterr ()
50
- assert ' My SSN is *********' in out
55
+ assert " My SSN is *********" in out
51
56
52
57
53
58
def test_deidentify_with_mask_ignore_insensitive_data (capsys ):
54
- deid .deidentify_with_mask (GCLOUD_PROJECT , HARMLESS_STRING ,
55
- ['US_SOCIAL_SECURITY_NUMBER' ])
59
+ deid .deidentify_with_mask (
60
+ GCLOUD_PROJECT , HARMLESS_STRING , ["US_SOCIAL_SECURITY_NUMBER" ]
61
+ )
56
62
57
63
out , _ = capsys .readouterr ()
58
64
assert HARMLESS_STRING in out
@@ -62,82 +68,87 @@ def test_deidentify_with_mask_masking_character_specified(capsys):
62
68
deid .deidentify_with_mask (
63
69
GCLOUD_PROJECT ,
64
70
HARMFUL_STRING ,
65
- ['US_SOCIAL_SECURITY_NUMBER' ],
66
- masking_character = '#' )
71
+ ["US_SOCIAL_SECURITY_NUMBER" ],
72
+ masking_character = "#" ,
73
+ )
67
74
68
75
out , _ = capsys .readouterr ()
69
- assert ' My SSN is #########' in out
76
+ assert " My SSN is #########" in out
70
77
71
78
72
79
def test_deidentify_with_mask_masking_number_specified (capsys ):
73
- deid .deidentify_with_mask (GCLOUD_PROJECT , HARMFUL_STRING ,
74
- [ ' US_SOCIAL_SECURITY_NUMBER' ],
75
- number_to_mask = 7 )
80
+ deid .deidentify_with_mask (
81
+ GCLOUD_PROJECT , HARMFUL_STRING , [ " US_SOCIAL_SECURITY_NUMBER" ], number_to_mask = 7
82
+ )
76
83
77
84
out , _ = capsys .readouterr ()
78
- assert ' My SSN is *******27' in out
85
+ assert " My SSN is *******27" in out
79
86
80
87
81
88
def test_deidentify_with_fpe (capsys ):
82
89
deid .deidentify_with_fpe (
83
90
GCLOUD_PROJECT ,
84
91
HARMFUL_STRING ,
85
- [' US_SOCIAL_SECURITY_NUMBER' ],
86
- alphabet = ' NUMERIC' ,
92
+ [" US_SOCIAL_SECURITY_NUMBER" ],
93
+ alphabet = " NUMERIC" ,
87
94
wrapped_key = WRAPPED_KEY ,
88
- key_name = KEY_NAME )
95
+ key_name = KEY_NAME ,
96
+ )
89
97
90
98
out , _ = capsys .readouterr ()
91
- assert ' My SSN is' in out
92
- assert ' 372819127' not in out
99
+ assert " My SSN is" in out
100
+ assert " 372819127" not in out
93
101
94
102
95
103
def test_deidentify_with_fpe_uses_surrogate_info_types (capsys ):
96
104
deid .deidentify_with_fpe (
97
105
GCLOUD_PROJECT ,
98
106
HARMFUL_STRING ,
99
- [' US_SOCIAL_SECURITY_NUMBER' ],
100
- alphabet = ' NUMERIC' ,
107
+ [" US_SOCIAL_SECURITY_NUMBER" ],
108
+ alphabet = " NUMERIC" ,
101
109
wrapped_key = WRAPPED_KEY ,
102
110
key_name = KEY_NAME ,
103
- surrogate_type = SURROGATE_TYPE )
111
+ surrogate_type = SURROGATE_TYPE ,
112
+ )
104
113
105
114
out , _ = capsys .readouterr ()
106
- assert ' My SSN is SSN_TOKEN' in out
107
- assert ' 372819127' not in out
115
+ assert " My SSN is SSN_TOKEN" in out
116
+ assert " 372819127" not in out
108
117
109
118
110
119
def test_deidentify_with_fpe_ignores_insensitive_data (capsys ):
111
120
deid .deidentify_with_fpe (
112
121
GCLOUD_PROJECT ,
113
122
HARMLESS_STRING ,
114
- [' US_SOCIAL_SECURITY_NUMBER' ],
115
- alphabet = ' NUMERIC' ,
123
+ [" US_SOCIAL_SECURITY_NUMBER" ],
124
+ alphabet = " NUMERIC" ,
116
125
wrapped_key = WRAPPED_KEY ,
117
- key_name = KEY_NAME )
126
+ key_name = KEY_NAME ,
127
+ )
118
128
119
129
out , _ = capsys .readouterr ()
120
130
assert HARMLESS_STRING in out
121
131
122
132
123
133
def test_deidentify_with_date_shift (tempdir , capsys ):
124
- output_filepath = os .path .join (tempdir , ' dates-shifted.csv' )
134
+ output_filepath = os .path .join (tempdir , " dates-shifted.csv" )
125
135
126
136
deid .deidentify_with_date_shift (
127
137
GCLOUD_PROJECT ,
128
138
input_csv_file = CSV_FILE ,
129
139
output_csv_file = output_filepath ,
130
140
lower_bound_days = DATE_SHIFTED_AMOUNT ,
131
141
upper_bound_days = DATE_SHIFTED_AMOUNT ,
132
- date_fields = DATE_FIELDS )
142
+ date_fields = DATE_FIELDS ,
143
+ )
133
144
134
145
out , _ = capsys .readouterr ()
135
146
136
- assert ' Successful' in out
147
+ assert " Successful" in out
137
148
138
149
139
150
def test_deidentify_with_date_shift_using_context_field (tempdir , capsys ):
140
- output_filepath = os .path .join (tempdir , ' dates-shifted.csv' )
151
+ output_filepath = os .path .join (tempdir , " dates-shifted.csv" )
141
152
142
153
deid .deidentify_with_date_shift (
143
154
GCLOUD_PROJECT ,
@@ -148,24 +159,26 @@ def test_deidentify_with_date_shift_using_context_field(tempdir, capsys):
148
159
date_fields = DATE_FIELDS ,
149
160
context_field_id = CSV_CONTEXT_FIELD ,
150
161
wrapped_key = WRAPPED_KEY ,
151
- key_name = KEY_NAME )
162
+ key_name = KEY_NAME ,
163
+ )
152
164
153
165
out , _ = capsys .readouterr ()
154
166
155
- assert ' Successful' in out
167
+ assert " Successful" in out
156
168
157
169
158
170
def test_reidentify_with_fpe (capsys ):
159
- labeled_fpe_string = ' My SSN is SSN_TOKEN(9):731997681'
171
+ labeled_fpe_string = " My SSN is SSN_TOKEN(9):731997681"
160
172
161
173
deid .reidentify_with_fpe (
162
174
GCLOUD_PROJECT ,
163
175
labeled_fpe_string ,
164
176
surrogate_type = SURROGATE_TYPE ,
165
177
wrapped_key = WRAPPED_KEY ,
166
178
key_name = KEY_NAME ,
167
- alphabet = 'NUMERIC' )
179
+ alphabet = "NUMERIC" ,
180
+ )
168
181
169
182
out , _ = capsys .readouterr ()
170
183
171
- assert ' 731997681' not in out
184
+ assert " 731997681" not in out
0 commit comments