{ "info": { "author": "Cillian de Roiste", "author_email": "cillian.deroiste@gmail.com", "bugtrack_url": null, "classifiers": [ "Framework :: Plone", "License :: OSI Approved :: GNU Affero General Public License v3", "Programming Language :: JavaScript", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Software Development :: Testing" ], "description": "A test layer for running JavaScript test jobs on a TestSwarm instance\n=====================================================================\n\nThis uses plone.app.testing.layers.PLONE_ZSERVER as a base to start a plone instance. The test job can be configured either from buildout or overridden with shell environment variables. After the job is scheduled the plone instance runs until the timeout is reached. Results are not yet collected from the TestSwarm instance.\n\n\nHow to configure your project to use collective.testswarm\n---------------------------------------------------------\n\nFirst you will need to set up a testswarm instance: https://github.com/jquery/testswarm\n\nAdd a user (e.g. tsuser) and find out the auth key for that user (mysql: select auth from users where name = \"tsuser\";). This is the user account that your tests can use for adding test jobs. Use these details in the buildout section described below or pass them as environment variables (uppercase) to the test runner::\n\n $ TS_USER=myuser ./bin/test\n\nyour.product/setup.py::\n\n extras_require={\n 'test': 'collective.testswarm'\n }\n\nbuildout.cfg::\n\n [test]\n recipe = zc.recipe.testrunner\n eggs = your.product [test]\n environment = testswarm-instance\n\n [testswarm-instance]\n ts_url = http://testswarm\n ts_user = tsuser\n ts_auth = asdf1234asdf #select auth from users where name = \"tsuser\";\n ts_job_name = Test collective.testswarm\n ts_urls = http://localhost:55555/plone/example-qunit-suite\n ts_suites = QUnit example\n ts_browsers = popularbeta\n ts_max_jobs = 1\n ZSERVER_HOST = 55555\n ZSERVER_PORT = localhost\n\nHow to use the collective.testswarm layer\n-----------------------------------------\n\nyour.product/your/product/tests/layers.py::\n\n from plone.app.testing import PloneSandboxLayer\n\n from collective.testswarm.layers import TESTSWARM_LAYER\n\n class YourProductLayer(PloneSandboxLayer):\n defaultBases = (TESTSWARM_LAYER, )\n\n def setUpPloneSite(self, portal):\n self.applyProfile(portal, 'your.product:testswarm')\n\n YOURPRODUCT_LAYER = YourProductLayer()\n\nyour.product/your/product/tests/test_swarm.py::\n\n import unittest2 as unittest\n\n from layers import YOURPRODUCT_LAYER\n\n\n class TestSwarmTestCase(unittest.TestCase):\n layer = YOURPRODUCT_LAYER\n\n def test_your_product_swarm(self):\n \"\"\" You need one test for the testrunner to sniff out\n \"\"\"\n\n\n\n\n\n\n\ncollective.testswarm changelog\n==============================\n\n0.3 (2011-07-24)\n----------------\n\n- Removing the accent from my name in setup.py [cillian]\n\n\n0.2 (2011-07-24)\n----------------\n\n- Nothing changed, just trying to push another release to avoid a\n UnicodeEncodeError on the author field [cillian]\n\n\n0.1 (2011-07-24)\n----------------\n\n- Initial release, has only been used for running its own tests\n [cillian]\n\n\n\n\nContributors\n============\n\n- Cillian de Roiste (Syslab.com GmbH)", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://cillian.wordpress.com", "keywords": "Plone TestSwarm JavaScript Continuous-Integration", "license": "AGPLv3+", "maintainer": null, "maintainer_email": null, "name": "collective.testswarm", "package_url": "https://pypi.org/project/collective.testswarm/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/collective.testswarm/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://cillian.wordpress.com" }, "release_url": "https://pypi.org/project/collective.testswarm/0.3/", "requires_dist": null, "requires_python": null, "summary": "Plone TestSwarm integration package", "version": "0.3" }, "last_serial": 788232, "releases": { "0.3": [ { "comment_text": "", "digests": { "md5": "b2369a016ab9c3cc83c97eafa133e580", "sha256": "48ebe0a1b4e3c72144b323143d00d95848d7d466f0a122a5552a76a2b7b4e6cc" }, "downloads": -1, "filename": "collective.testswarm-0.3.tar.gz", "has_sig": false, "md5_digest": "b2369a016ab9c3cc83c97eafa133e580", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10078, "upload_time": "2011-07-24T23:49:29", "url": "https://files.pythonhosted.org/packages/45/06/5108f937899c7e30c98b75bb3dae09ebd9c8c7c6f3e727efb7263c674394/collective.testswarm-0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b2369a016ab9c3cc83c97eafa133e580", "sha256": "48ebe0a1b4e3c72144b323143d00d95848d7d466f0a122a5552a76a2b7b4e6cc" }, "downloads": -1, "filename": "collective.testswarm-0.3.tar.gz", "has_sig": false, "md5_digest": "b2369a016ab9c3cc83c97eafa133e580", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10078, "upload_time": "2011-07-24T23:49:29", "url": "https://files.pythonhosted.org/packages/45/06/5108f937899c7e30c98b75bb3dae09ebd9c8c7c6f3e727efb7263c674394/collective.testswarm-0.3.tar.gz" } ] }