You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Charlie 0600fb35cc
Ctl iFrame (#42)
1 week ago
.github/workflows Use Github Actions for `npm test` (#29) 4 months ago
TEMPLATES Add ESLint standard config (#26) 4 months ago
crawler Apply linting to inline scripts (#27) 4 months ago
features Add fonts test case (#38) 1 month ago
privacy-protections Ctl iFrame (#42) 1 week ago
security CSP Extension ID leak PoC (#35) 2 months ago
tracker-reporting Apply linting to inline scripts (#27) 4 months ago
.eslintignore Add ESLint standard config (#26) 4 months ago
.eslintrc Apply linting to inline scripts (#27) 4 months ago
.gitignore Expand readme, add templates, do a bit of a clean up (#16) 6 months ago
README.md Fix spelling of immediately. (#39) 1 month ago
git.sh Add endpoint for auto update via GH hooks. (#17) 6 months ago
index.html Add fonts test case (#38) 1 month ago
package-lock.json Apply linting to inline scripts (#27) 4 months ago
package.json Glitch didn't like the way node version was specified. 2 months ago
server.js Iframe downloading (#37) 1 month ago

README.md

Privacy Test Pages

🛡 Collection of pages for testing various privacy and security features of browsers and browser extensions.

How to use it?

The site with all tests is live here. All tests run either on page load or provide instructions on how to run them.

Privacy Protections Tests

Those tests by default require clicking a button to start, but can be run immediately on page load when loaded with a ?run query or by calling a global runTests() function. Results from those pages are available in the global results object that can be downloaded as JSON using "download results" button.

Contributing

Please note that we are not taking external contributions for new test pages, but we welcome all bug reports.

How to create a new test?

  • Templates for both simple and complex tests (Privacy Protections Tests) can be found in the TEMPLATES directory.
  • Please remember to link new test page from index.html.
  • Once you have a PR with a new page please assign it to one of the AoR DRIs (@brindy, @kdzwinel).

Test domains

We have couple of test domains, that all resolve to privacy-test-pages.glitch.me, which help us simulate various scenarios:

  • good.third-party.site - non-tracking third party, it's not on our blocklist and will not be blocked by our clients
  • broken.third-party.site - tracking third party that we can't block (e.g. due to brekage), it's on our blocklist, but it will not be blocked by our clients
  • bad.third-party.site - tracking third party that's on our blocklist and our clients will block

How to test it locally

If you are working on a simple page you can start any local server (e.g. python -m SimpleHTTPServer 8000) in the main folder of the project.

If you are working on a complex page you may need to run our custom server (node server.js) which will require you to install all dependencies first (npm i).

How to deploy it?

After PR is merged test pages are automatically deployed to glitch (code) and github pages (legacy).