Commit Graph

41 Commits

Author SHA1 Message Date
Nikolay Vitkov
aefbde60d7
refactor: align names (#10903) 2023-09-13 21:57:26 +02:00
jrandolf
9b6f1de8b9
feat: implement typed events (#10889) 2023-09-13 15:47:55 +02:00
jrandolf
7e74439c51
chore: enable 'return-await` (#10832) 2023-09-01 09:49:33 +02:00
jrandolf
900a1f227d
chore: turn on rulesdir/use-using (#10806) 2023-08-30 10:02:59 +00:00
Nikolay Vitkov
f4c711e25b
chore: BiDi close error (#10687) 2023-08-04 14:45:38 +02:00
Julian Descottes
186b994fba
test: upstream test and expectation for Firefox sync to puppeteer v20.9.0 (#10622) 2023-07-25 08:30:03 +02:00
Nikolay Vitkov
de09b058ba
chore: update Prettier and other deps (#10555) 2023-07-17 10:52:54 +02:00
Nikolay Vitkov
d0d738d2fc
chore: readd browser setup hook (#10478) 2023-07-03 14:01:29 +02:00
Nikolay Vitkov
ff8529696d
ci: remove before hooks (#10431) 2023-06-21 19:41:09 +00:00
Nikolay Vitkov
9aee41a53d
chore: run more BiDi test (#10355) 2023-06-12 14:50:30 +02:00
Nikolay Vitkov
3552d97360
chore: update dependencies (#10336) 2023-06-07 11:17:31 +00:00
Nikolay Vitkov
4d0dbbc517
feat: add page.removeExposedFunction (#10297) 2023-06-02 14:08:36 +02:00
Nikolay Vitkov
9abd48a062
fix: content() not showing comments outside html tag (#10293) 2023-06-01 21:51:16 +02:00
Nikolay Vitkov
070ee03d31
chore: network module for BiDi (#10159) 2023-05-22 14:52:31 +02:00
Nikolay Vitkov
2808240c71
chore: implement Frames for BiDi (#10121) 2023-05-15 16:39:47 +02:00
Nikolay Vitkov
4615607b7d
chore: add test console after navigation (#10110) 2023-05-04 09:43:12 +00:00
Nikolay Vitkov
e4b57c279a
chore: add EsLint rule for no-floating-promises (#10084) 2023-04-26 09:53:02 +00:00
Nikolay Vitkov
5e79d53bd3
refactor: tests use toHaveLength and waitEvent (#10061) 2023-04-25 15:02:25 +02:00
Nikolay Vitkov
95c99e84b8
chore: add PDF print for BiDi (#9914) 2023-03-27 11:39:40 +02:00
Nikolay Vitkov
36c029b38d
fix: waitForNavigation issue with aborted events (#9883) 2023-03-21 10:22:57 +01:00
Nikolay Vitkov
9ccde6ebf5
chore: added * pattern for test expectations (#9870) 2023-03-20 10:59:50 +01:00
Nikolay Vitkov
9b54365df5
chore: Add Page.Console event to BiDi (#9700) 2023-02-20 13:00:29 +01:00
Nikolay Vitkov
eefe9583d0
chore: Add EsLint rule import/order (#9685) 2023-02-15 15:09:31 -08:00
Henrik Skupin
404839d175
Refactor test expectation status for recent Firefox Nightly builds (#9642) 2023-02-10 12:45:40 +01:00
Alex Rudenko
06e816bbfa
feat(chromium): roll to Chromium 110.0.5479.0 (r1083080) (#9500)
Closes #9470
2023-01-12 11:31:20 +01:00
jrandolf
87c08fd86a
fix!: remove puppeteer.devices in favor of KnownDevices (#9075)
This PR removes the deprecated `puppeteer.devices` in favor of a new
exported object `KnownDevices`. `devices` can also be exported, but has
been deprecated.
2022-10-10 15:30:12 +02:00
jrandolf
9f4f43a28b fix!: deprecate indirect error imports (#9072) 2022-10-06 23:52:51 +02:00
Egor Andreyuk
8f6b2c9b7c
fix: waitForRequest works with async predicate (#9058) 2022-10-05 20:46:34 +02:00
jrandolf
f42336cf83
feat: separate puppeteer and puppeteer-core (#9023)
This PR moves the puppeteer source code into separate mono-repo packages:

- `puppeteer` and `puppeteer-core` are now separated into their own
packages.
- `puppeteer-core` has a new exports called `puppeteer-core/internal`
for internal usage.

Tests and various tools have been updated to accommodate the migration.
2022-10-05 14:17:03 +02:00
Alex Rudenko
31e7b608d5
chore: implement basic evaluate in BiDi (#8989)
Only the basic return values are supported.
The follow-up PRs will re-use the shared code
from the ExecutionContext and introduce Frame
in BiDi.
2022-09-21 08:10:50 +02:00
jrandolf
633e7cfdf9
feat: add text query handler (#8956) 2022-09-15 11:12:13 +00:00
jrandolf
7c4f41fadc
chore: use injections for wait tasks (#8943)
This PR refactors wait tasks to use injected scripts.
2022-09-15 08:22:20 +02:00
Alex Rudenko
504c7a1ae6
chore: implement custom mocha interface for the runner (#8929)
Instead of checking skipped tests in mocha-utils this PR
implements a custom mocha interface for better flexibility
when skipping tests. That should allow skipping tests without
running before and after hooks.
2022-09-09 11:12:18 +02:00
Alex Rudenko
d8830cbc55
chore: implement a test runner on top of mocha (#8866)
* chore: implement a test runner on top of mocha

This PR implements a test runner on top of mocha
that performs multiple mocha runs as defined in
TestSuites.json and compares the outcome of the runs
against TestExpectations.json. This allows us to
remove most of helpers from mocha-utils and be more
flexible when defining the test configurations.
2022-09-08 10:32:39 +00:00
Alex Rudenko
a870c258bf
chore: update expectations for Firefox when evaluate fails (#8890) 2022-09-02 09:41:34 +00:00
jrandolf
6b4a99fcfa
chore: migrate addStyleTag (#8879)
* chore: remove unnecessary type signature

* chore: fix tests

* chore: migrate `addStyleTag`

* chore: fix tests

* chore: fix tests
2022-09-01 17:52:08 +02:00
jrandolf
8f11237a67
chore: migrate addScriptTag (#8878) 2022-09-01 17:09:57 +02:00
jrandolf
26c3acbb07
feat!: type inference for evaluation types (#8547)
This PR greatly improves the types within Puppeteer:

- **Almost everything** is auto-deduced.
  - Parameters don't need to be specified in the function. They are deduced from the spread.
  - Return types don't need to be specified. They are deduced from the function. (More on this below)
  - Selections based on tag names correctly deduce element type, similar to TypeScript's mechanism for `getElementByTagName`.
- [**BREAKING CHANGE**] We've removed the ability to declare return types in type arguments for the following reasons:
  1. Setting them will indubitably break auto-deduction.
  2. You can just use `as ...` in TypeScript to coerce the correct type (given it makes sense).
- [**BREAKING CHANGE**] `waitFor` is officially gone.

To migrate to these changes, there are only four things you may need to change:
- If you set a return type using the `ReturnType` type parameter, remove it and use `as ...` and `HandleFor` (if necessary).
 `evaluate<ReturnType>(a: number, b: number) => {...}, a, b)`
 `(await evaluate(a, b) => {...}, a, b)) as ReturnType`
 `evaluateHandle<ReturnType>(a: number, b: number) => {...}, a, b)`
 `(await evaluateHandle(a, b) => {...}, a, b)) as HandleFor<ReturnType>`
- If you set any type parameters in the *parameters* of an evaluation function, remove them.  
 `evaluate(a: number, b: number) => {...}, a, b)`
 `evaluate(a, b) => {...}, a, b)`
- If you set any type parameters in the method's declaration, remove them.
 `evaluate<(a: number, b: number) => void>((a, b) => {...}, a, b)`
 `evaluate(a, b) => {...}, a, b)`
2022-06-23 11:29:46 +02:00
jrandolf
84712cbc28
chore: use Google's TS style guide's format config (#8542) 2022-06-22 15:25:44 +02:00
jrandolf
570087ea94
chore: use strict typing in tests (#8524)
* The testing tsconfig.json inherits from the base TS config.
  * A lot of type assertions have been inserted...a lot.
* All testing utilities have migrated to TS.
* text-diff is being replaced with diff for TS compatibility.
* ProtocolError has been added to PuppeteerErrors and PuppeteerErrors is no longer a record (it's been frozen).
* Fixes a small bug where null was an allowable media type in emulation (should be undefined).
2022-06-15 12:09:22 +02:00
jrandolf
80373f7a12
chore: use composite builds for tests (#8522) 2022-06-15 12:05:25 +02:00