Revision f650ee99
Added by koszko over 1 year ago
| test/haketilo_test/unit/test_content.py | ||
|---|---|---|
| 88 | 88 |
} |
| 89 | 89 |
|
| 90 | 90 |
repo_query_cacher.start = () => data_set("cacher_started", true);
|
| 91 |
haketilo_apis.start = () => data_set("apis_started", true);
|
|
| 91 | 92 |
|
| 92 | 93 |
enforce_blocking = policy => data_set("enforcing", policy);
|
| 93 | 94 |
|
| ... | ... | |
| 118 | 119 |
|
| 119 | 120 |
@pytest.mark.ext_data({'content_script': content_script})
|
| 120 | 121 |
@pytest.mark.usefixtures('webextension')
|
| 121 |
@pytest.mark.parametrize('target1', ['dynamic_before'])#, 'dynamic_after'])
|
|
| 122 |
@pytest.mark.parametrize('target1', ['dynamic_before', 'dynamic_after'])
|
|
| 122 | 123 |
@pytest.mark.parametrize('target2', [
|
| 123 | 124 |
'scripts_blocked', |
| 124 | 125 |
'payload_error', |
| ... | ... | |
| 144 | 145 |
assert data['bad_request_returned'] == False |
| 145 | 146 |
|
| 146 | 147 |
assert data['cacher_started'] == True |
| 148 |
assert data.get('apis_started', False) == (target2 == 'payload_ok')
|
|
| 147 | 149 |
|
| 148 | 150 |
for obj in (data['good_request_result'], data['enforcing']): |
| 149 | 151 |
assert obj['allow'] == False |
| ... | ... | |
| 162 | 164 |
|
| 163 | 165 |
def vars_made_by_payload(driver): |
| 164 | 166 |
vars_values = driver.execute_script( |
| 165 |
'return [1, 2].map(n => window[`hak_injected_${n}`]);'
|
|
| 166 |
) |
|
| 167 |
if vars_values != [None, None]: |
|
| 167 |
''' |
|
| 168 |
return [ |
|
| 169 |
...[1, 2].map(n => window[`hak_injected_${n}`]),
|
|
| 170 |
window.haketilo_version |
|
| 171 |
]; |
|
| 172 |
''') |
|
| 173 |
if vars_values != [None, None, None]: |
|
| 168 | 174 |
return vars_values |
| 169 | 175 |
|
| 170 | 176 |
if target2 == 'payload_error': |
| ... | ... | |
| 174 | 180 |
} |
| 175 | 181 |
elif target2 == 'payload_ok': |
| 176 | 182 |
vars_values = WebDriverWait(driver, 10).until(vars_made_by_payload) |
| 177 |
assert vars_values == [1, 2] |
|
| 183 |
assert vars_values[:2] == [1, 2] |
|
| 184 |
assert type(vars_values[2]) == str |
|
| 178 | 185 |
|
| 179 | 186 |
@pytest.mark.ext_data({'content_script': content_script})
|
| 180 | 187 |
@pytest.mark.usefixtures('webextension')
|
Also available in: Unified diff
prepare for exposing APIs to injected scripts