Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: sitescripts/testpages/README.md

Issue 29328589: Issue 3122 - Add testpages.web.sitekey_frame URL handler (Closed)
Patch Set: Created Sept. 24, 2015, 3:45 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: sitescripts/testpages/README.md
diff --git a/sitescripts/testpages/README.md b/sitescripts/testpages/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..24fce7da995b24a0ae9d65f199f0b427e515a47c
--- /dev/null
+++ b/sitescripts/testpages/README.md
@@ -0,0 +1,53 @@
+# sitescripts.testpages
+
+## Introduction
+
+This package contains all the dynamic URL handlers required for the otherwise
+static testpages.adblockplus.org project. This allows us to create test cases
+for things like sitekeys which require web responses to be generated
+dynamically.
+
+
+## Usage
+
+First create a `sitescripts.ini` file which contains the relevant options in the
+`multiplexer` and `testpages` sections. (For an example of how these work take
+a look at the included `.sitescripts.example.ini` file.)
+
+Then launch the CMS test server, pointing at the `testpages.adblockplus.org`
+repository and making sure to specify a `PYTHON_PATH` environment variable that
+points at your copy of sitescripts. For example:
+
+ cd testpages.adblockplus.org
+ PYTHON_PATH=/path/to/sitescripts ../cms/runserver.py
+
+For more information about the `sitescripts.ini` configuration file have a look
+at the main documentation for this repository. For more information about
+running the CMS test server in unison with sitescripts take a look at the
+documentation for the CMS.
+
+### sitescripts.testpages.web.sitekey_frame
+
+For test cases that test the $sitekey filter option you can use the make use of
+the `/sitekey-frame` URL handler. The handler renders a template of your
+choosing, passing in the public key and signature variables. For this you will
+need to have a suitable RSA key file, a Jinja2 template that makes use of the
+`public_key` + `signature` variables and a suitable `sitescripts.ini`
+configuration.
+
+Here's an example configuration:
+
+```
+[multiplexer]
+sitescripts.testpages.web.sitekey_frame =
+
+[testpages]
+sitekeyFrameTemplate=%(root)s/testpages.adblockplus.org/templates/sitekey_frame.tmpl
+sitekeyPath=%(root)s/testpages.adblockplus.org/static/site.key
+```
+
+The handler automatically sets the correct `X-Adblock-Key` response header but
+it's important that the template also populates the `data-adblockkey` attribute
+of the html element with the public key and signature. For example:
+
+ <html data-adblockkey="{{ public_key + "_" + signature }}">

Powered by Google App Engine
This is Rietveld