Running the Demo
Create a virtualenv:
$ virtualenv2.6 --no-site-packages /path/to/my/venv
/path/to/my/venvwill be referred to as $VENV in steps below.
Get a checkout of deformdemo:
$ git clone git://github.com/Pylons/deformdemo.git
cdto the newly checked out deformdemo package:
$ cd deformdemo
setup.py developusing the virtualenv's
$ $VENV/bin/python setup.py develop
While your working directory is still
deformdemo, start the demo application:
$ $VENV/bin/paster serve demo.ini
Visit http://localhost:8521 in a browser to see the demo.
Running the Demo's Selenium Tests
deformdemo application serves as a target for functional
testing during Deform's development. A suite of Selenium tests may be
run against a local instance of the demonstration application. It is
wise to run these tests before submitting a patch. Here's how:
Make sure you have a Java interpreter installed.
deformdemoapplication as described above in "Running the Demo". Leave the terminal window running this application open, and open another terminal window to perform the below steps.
Download Selenium Server <http://seleniumhq.org/download/> standalone jar file.
java -jar selenium-server-standalone-X.X.jar. Success is defined as seeing output on the console that ends like this:
01:49:06.105 INFO - Started SocketListener on 0.0.0.0:4444 01:49:06.105 INFO - Started org.openqa.jetty.jetty.Server@7d2a1e44
Leave the terminal window in which the selenium server is now running open, and open (yet) another terminal window.
In the newest terminal window, cd to the "deformdemo" checkout directory you created above in "Running the Demo":
$ cd /path/to/my/deformdemo/checkout
Run the tests:
$ $VENV/bin/python deformdemo/test.py
$VENVis defined as it was in "Running the Demo" above.
You will (hopefully) see Firefox pop up in a two-windowed arrangement, and it will begin to display in quick succession the loading of pages in the bottom window and some test output in the top window. The tests will run for a minute or two.
Test success means that the console window on which you ran
test.pyshows a bunch of dots, a test summary, then
OK. If it shows a traceback,
FAILED, or anything other than a straight line of dots, it means there was an error.
Fix any errors by modifying your code or by modifying the tests to expect the changes you've made.
Testing an Alternate Renderer Implementation
- Copy the
demo.inifile from this demo package to your renderer's package.
- Change the
deform.rendererkey in the
demo.inicopy to point at your renderer (it's a Python dotted name).
paster serve /path/to/your/copy/of/demo.ini.
- Run the selenium tests as above.