| 345 | |
| 346 | |
| 347 | async def test_csp_should_work(browser: Browser, is_webkit: bool) -> None: |
| 348 | async def baseline() -> None: |
| 349 | context = await browser.new_context(java_script_enabled=False) |
| 350 | page = await context.new_page() |
| 351 | await page.goto('data:text/html, <script>var something = "forbidden"</script>') |
| 352 | with pytest.raises(Error) as exc_info: |
| 353 | await page.evaluate("something") |
| 354 | if is_webkit: |
| 355 | assert "Can't find variable: something" in exc_info.value.message |
| 356 | else: |
| 357 | assert "something is not defined" in exc_info.value.message |
| 358 | await context.close() |
| 359 | |
| 360 | await baseline() |
| 361 | |
| 362 | async def override() -> None: |
| 363 | context = await browser.new_context() |
| 364 | page = await context.new_page() |
| 365 | await page.goto('data:text/html, <script>var something = "forbidden"</script>') |
| 366 | assert await page.evaluate("something") == "forbidden" |
| 367 | await context.close() |
| 368 | |
| 369 | await override() |
| 370 | |
| 371 | |
| 372 | async def test_csp_should_be_able_to_navigate_after_disabling_javascript( |