A Python wrapper for envjasmine
Project description
This is a thin python wrapper around the envjasmine JavaScript testing framework.
Installation
You can install pyenvjasmine using pip or easy_install:
pip install pyenvjasmine
easy_install pyenvjasmine
Or you can grab the latest sources and install it from there:
python setup.py install
Also, you can use it directly from the sources directory, in development mode (useful if you want to contribute to the project):
pip install -e .
Running pyenvjasmine tests
To run the tests on this code here (as opposed to your JavaScript code you want to test), install pyenvjasmine and then run:
nosetests --cover-package=pyenvjasmine --cover-erase \ --with-coverage --with-doctest $*
Run your own tests
The easiest way is to put your “specs” (JavaScript tests) into some directory in your code, then in your python tests, add a new TestCase with just one test that runs all your JavaScript tests.
The simplest solution is to set capture_output to False, so you see the output from the js tests on the console. Something like this:
import unittest from pyenvjasmine.runner import TestRunner class JavaScriptTests(unittest.TestCase): def test_my_javascript(self): runner = TestRunner( testdir='/path/to/my/testdir', configfile='relative/path/to/configfile') runner.run(capture_output=False)
If you want a more integrated test control, you could set capture_output to True, then parse the test output that is returned from the run() method, with something like this:
import unittest from pyenvjasmine.runner import TestRunner class JavaScriptTests(unittest.TestCase): def test_my_javascript_no_output(self): runner = TestRunner( testdir='/path/to/my/testdir', configfile='relative/path/to/configfile') res = runner.run(capture_output=True) lines = res.splitlines() self.assertTrue('Failed: 0' in lines)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.