Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Even more Web Platform Tests #146

Open
wants to merge 63 commits into
base: next
Choose a base branch
from

Conversation

koddsson
Copy link
Collaborator

@koddsson koddsson commented Dec 10, 2021

These are the last of the tests that we can put in here before we need to start tracking info such as expires outside of the document.cookie variable.

dependabot bot and others added 30 commits August 24, 2020 21:58
Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 8.0.1 to 8.0.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 3.9.7 to 4.0.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v3.9.7...v4.0.2)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pretty-quick](https://github.com/azz/pretty-quick) from 2.0.1 to 3.0.0.
- [Release notes](https://github.com/azz/pretty-quick/releases)
- [Commits](prettier/pretty-quick@v2.0.1...v3.0.0)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [prettier](https://github.com/prettier/prettier) from 2.0.5 to 2.1.1.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/master/CHANGELOG.md)
- [Commits](prettier/prettier@2.0.5...2.1.1)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [mocha](https://github.com/mochajs/mocha) from 8.1.1 to 8.1.3.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](mochajs/mocha@v8.1.1...v8.1.3)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.11.0 to 7.11.5.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.11.5/packages/babel-preset-env)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [husky](https://github.com/typicode/husky) from 4.2.5 to 4.3.0.
- [Release notes](https://github.com/typicode/husky/releases)
- [Changelog](https://github.com/typicode/husky/blob/master/CHANGELOG.md)
- [Commits](typicode/husky@v4.2.5...v4.3.0)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [karma](https://github.com/karma-runner/karma) from 5.1.1 to 5.2.2.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](karma-runner/karma@v5.1.1...v5.2.2)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [pretty-quick](https://github.com/azz/pretty-quick) from 3.0.0 to 3.0.2.
- [Release notes](https://github.com/azz/pretty-quick/releases)
- [Commits](prettier/pretty-quick@v3.0.0...v3.0.2)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [node-fetch](https://github.com/bitinn/node-fetch) from 2.6.0 to 2.6.1.
- [Release notes](https://github.com/bitinn/node-fetch/releases)
- [Changelog](https://github.com/node-fetch/node-fetch/blob/master/docs/CHANGELOG.md)
- [Commits](node-fetch/node-fetch@v2.6.0...v2.6.1)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [prettier](https://github.com/prettier/prettier) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/master/CHANGELOG.md)
- [Commits](prettier/prettier@2.1.1...2.1.2)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* return undefined values

* tests: add tests covering undefined cases
* Run prettier check during test script

* Make all files prettier
Bumps [mocha](https://github.com/mochajs/mocha) from 8.1.3 to 8.2.1.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](mochajs/mocha@v8.1.3...v8.2.1)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 8.0.3 to 8.0.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [prettier](https://github.com/prettier/prettier) from 2.1.2 to 2.2.0.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/master/CHANGELOG.md)
- [Commits](prettier/prettier@2.1.2...2.2.0)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.2 to 4.1.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v4.0.2...v4.1.2)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.10.4 to 7.12.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.12.7/packages/babel-preset-typescript)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.11.5 to 7.12.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.12.7/packages/babel-preset-env)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Upgrade to node 14, the current LTS

* Rename karma.conf.js -> karma.conf.cjs

* Compile TypeScript into ES2020 syntax

* Fix TypeScript violations

* Use `karma-chai` instead of just `chai`.

* Simplify karma tests

* Actually include tests in javascript in the repo

* Remove chai import from tests

* Convert config files to JSON

* Fix some linting issues

* Only lint JS and TS files

* Restructure project slightly

* Remove unneeded declaration file

* Remove babel and karma-esm packages

* Rename husky to have a cjs extension

* Include all files in `dist/` in package

* Update banner-cli command
* Remove coveralls

* Remove coverage reporting from tests

* Remove unused packages
* Update packages that require a non-major version bump

* Update ESLint to latest version

* Fix ESLint violations after ESLint upgrade

* Set eslint config as root config

* Test in Firefox instead of Chrome

Chrome 87 just shipped the CookieStore implementation and it's not
possible to null out the `window.cookieStore` variable. So we're
switching to test in Firefox which hasn't implemented the feature yet so
that we can continue to test.

Not a great solution but maybe we can find a better one in the future,
this should do for now.

* Actually use FirefoxHeadless and not Firefox
* Throw TypeError if get is called without arguments

See step 4 in "The get(options) method" section in the [CookieStore
Spec][cookiestore]:

>If options is empty, then return a promise rejected with a TypeError.

[cookiestore]: https://wicg.github.io/cookie-store/#ref-for-dom-cookiestore-get-options%E2%91%A4

* Refactor sanitizeOptions to use TypeScript generics

* Implement getting a cookie by URL

* Add cookieStore get arguments WPT tests

* Set `assert_equals` variable directly

* Actually parse URL and check its origin
koddsson and others added 23 commits February 17, 2021 11:53
* Add all "get" WPT tests

* Allow empty object to be passed to `getAll`

* Pass options directly to `get`

* Add CookieInit interface

* Add additional helper methods for WPT tests

* Remove regex check for cookie name

* Strengthen options type check

* Add missing functionality for delete function

* Add missing functionality for the `set` function

* add cookieStore delete WPT tests

* Set TypeScript target to ES2018

* Make the Travis build pass
* Throw error if name is empty and value has =

If name’s length is 0 and value contains U+003D (=), then return failure.

https://wicg.github.io/cookie-store/#set-a-cookie

* Update test

* Add rest of Web Platform Tests

* Update Web Platform Tests

* Remove delete test

* Run tests on `/test` URL path

* Make sure clean up after Web Platform Tests

* Refactor code

* Re-copy delete test from WPT

* Make sure deleted cookies have no value in event

* Move conditionals into block

* Slice last character of string correctly

* Only add path to cookiestring if it isn't /

* Add test back in

* Make CookieListItem property optional

* Remove DeletedCookieListItem

* Remove CookieInit

* Follow the spec more strictly

Co-authored-by: Keith Cirkel <[email protected]>

* Clean up comments

* Initialize `expires` and `domain`

Co-authored-by: Keith Cirkel <[email protected]>
The Dependabot configuration file was invalid so this removes it entirely--we don't need it. This, in effect, still achieves the same goal as in markcellus#113.
Bumps [glob-parent](https://github.com/gulpjs/glob-parent) from 5.1.1 to 5.1.2.
- [Release notes](https://github.com/gulpjs/glob-parent/releases)
- [Changelog](https://github.com/gulpjs/glob-parent/blob/main/CHANGELOG.md)
- [Commits](gulpjs/glob-parent@v5.1.1...v5.1.2)

---
updated-dependencies:
- dependency-name: glob-parent
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Add rest of Web Platform Tests

* Expose `assert.deepEqual` to Web Platform Tests

* `__Secure` prefixed cookies are secure

* Set `sameSite` to `lax` when item is secure

* Set path to `/` when name is prefixed with __Host

* Default `changed` and `deleted` to empty arrays

* Make sure to fail when name is empty and value includes `=`

* Expires can be a date

* Remove unneeded serviceworker test setup file

* Move karma single run option into config file

* Setup service worker registration for tests

* CookieMatchType is unused

* Fix service worker tests

* Implement CookieStoreManager for service workers

* Make sure all the servive worker tests run

* Don't throw errors in `getAll`

* Clean up ordered cookies after test run

* Allow passing of empty object to `getAll`

* Add ability to skip tests that we can't pass right now

* Don't expose CookieStore on the global object

* Update README

* Fix tests

* Update Web Platform Test

* Set return type of get Symbol method
for (const name of names) {
for (const environment of environments) {
const idl_name = `${name}_${environment}`;
it.skip(idl_name);
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that I'm skipping all the IDL tests for now.

@koddsson koddsson marked this pull request as ready for review December 10, 2021 13:46
Copy link
Owner

@markcellus markcellus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@markcellus
Copy link
Owner

markcellus commented Aug 18, 2022

@koddsson this looks good 👍 . Is there anything holding this up from being merged? (nvm, see my next comment below)

@markcellus markcellus force-pushed the next branch 2 times, most recently from eab392f to 1d12201 Compare August 18, 2022 13:03
@markcellus
Copy link
Owner

markcellus commented Aug 18, 2022

@koddsson apologies but I ended rebasing next branch with master and it caused this branch to be out of date (won't happen again). Rebasing this branch with next branch (which applies your commits on top of the updated ones) should get it straight.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants