{ "info": { "author": "Mario Orlandi", "author_email": "morlandi@brainstorm.it", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Framework :: Django :: 2.0", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Testing :: Unit" ], "description": "djtest\n======\n\nAn interactive test runner for Django projects.\n\nPurposes:\n\n- keep the list of apps available for test in a local configuration file\n- display the list of all available unit tests (-l option)\n- run unit tests for apps specified on command line\n- cleanup a test \"media folder\" before each execution\n- optionally filter the list of unit tests to be executed (-f option)\n\nInstallation\n------------\n\n::\n\n pip install djtest\n\nor:\n\n::\n\n pip install git+https://github.com/morlandi/djtest\n\n\nSample usage\n------------\n\n::\n\n Using config file \"./.djtest.conf\"\n usage: djtest [-h] [-v {0,1,2,3}] [-m] [-n] [-f FILTER] [-l] [apps [apps ...]]\n\n Targets may specify either: 'all' for all available apps, and app name (one or\n more), or a specific test module/method\n\n positional arguments:\n apps\n\n optional arguments:\n -h, --help show this help message and exit\n -v {0,1,2,3}, --verbosity {0,1,2,3}\n Verbosity level. (default: 2)\n -m, --no-migrations Skip migrations. (default: False)\n -n, --dry-run Don't execute commands, just pretend. (default: False)\n -f FILTER, --filter FILTER\n Filtering: run only test methods matching specified\n pattern\n -l, --list List available test methods\n --version show program's version number and exit\n\n Available apps: tasks, wallet_clients, frontend_api, trading_api, backend\n\n\nSample config file\n------------------\n\nA sample \"skeleton\" config file \"./.djtest.conf\" is automatically created on first run.\n\nYou should edit it to specify the list of testable apps.\n\n::\n\n [general]\n project=myproject\n test_settings_module=myproject.settings.test_settings\n test_settings_no_migrations_module=myproject.settings.test_settings_no_migrations\n media_folder=\"../public/test_media/\"\n apps=app1, app2, appN\n\n\nSample \"test settings\" module\n-----------------------------\n\n::\n\n from myproject.settings.settings import *\n\n LANGUAGE_CODE = 'en'\n TIME_ZONE = 'UTC'\n EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'\n\n ...\n\nSample \"test settings - no migrations\" module\n---------------------------------------------\n\n::\n\n from myproject.settings.test_settings import *\n\n class DisableMigrations(object):\n\n def __contains__(self, item):\n return True\n\n def __getitem__(self, item):\n #return \"notmigrations\"\n return None\n\n\n MIGRATION_MODULES = DisableMigrations()\n\n\n\n\nHistory\n=======\n\nv0.1.4\n------\n* config file: use either ',' or spaces as separators in the app list\n\nv0.1.3\n------\n* --deprecations switch added\n\nv0.1.2\n------\n* cleanup\n\nv0.1.1\n------\n* add test settings example to Readme\n\nv0.1.0\n------\n* published on PyPI\n\nv0.0.3\n------\n* added versioning\n* added support for unittest.TestCase\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/morlandi/djtest", "keywords": "django test", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "djtest", "package_url": "https://pypi.org/project/djtest/", "platform": "", "project_url": "https://pypi.org/project/djtest/", "project_urls": { "Homepage": "https://github.com/morlandi/djtest" }, "release_url": "https://pypi.org/project/djtest/0.1.4/", "requires_dist": null, "requires_python": "", "summary": "Interactive test runner for Django projects", "version": "0.1.4" }, "last_serial": 5971418, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "b6901a0f96a9a450df4c3b524a14d299", "sha256": "52794288a0381d525ea023cbce353accababc5b7fbd112110e661f64263f80be" }, "downloads": -1, "filename": "djtest-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b6901a0f96a9a450df4c3b524a14d299", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6043, "upload_time": "2019-04-22T16:27:49", "url": "https://files.pythonhosted.org/packages/12/f8/9f137c5eac7a150c7128c3018f36e13af3b39e90b63869ce325c81b92d0d/djtest-0.1.0-py2.py3-none-any.whl" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "09d7093a9088b88f87bdb11ecd5b61f6", "sha256": "7e6231350ffaa2fb72ceb0a53081c464cde7f0c59acd31ca4018a272fd76a80c" }, "downloads": -1, "filename": "djtest-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "09d7093a9088b88f87bdb11ecd5b61f6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6304, "upload_time": "2019-04-22T16:53:55", "url": "https://files.pythonhosted.org/packages/f9/3a/789aabd25177c72a2e45bd9ded62b754b66320ccf6d894ba9f92dc91a887/djtest-0.1.1-py2.py3-none-any.whl" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "a6bafe3d3ee11263b9e344adc7bd60cf", "sha256": "51eec20ef2479c1b4cfcc7fcf10133569fabc63859cfc066757f1b921fa47a80" }, "downloads": -1, "filename": "djtest-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a6bafe3d3ee11263b9e344adc7bd60cf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6236, "upload_time": "2019-04-22T16:59:18", "url": "https://files.pythonhosted.org/packages/85/46/bed7acd5c420278ad05604d9daeca0943831285dc7a410e247f2494acc3c/djtest-0.1.2-py2.py3-none-any.whl" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "ed60e8e290b7956e359a8bfab44e36ca", "sha256": "374674f3916fd66993bab1e44344ae3d3f51e5b1efbb66a179a507c40e90e117" }, "downloads": -1, "filename": "djtest-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ed60e8e290b7956e359a8bfab44e36ca", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6288, "upload_time": "2019-09-11T05:55:51", "url": "https://files.pythonhosted.org/packages/0c/23/34d4bf556f81c1b4d5944bfd0fb4c14d8e32d82afdcd57cfad85934f7cde/djtest-0.1.3-py2.py3-none-any.whl" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "cae8d6c293bdee91c472d8a4df3f8d10", "sha256": "9423875875a858072f31164fef144ebb6baad921028f07ed6347087f7ddc4846" }, "downloads": -1, "filename": "djtest-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cae8d6c293bdee91c472d8a4df3f8d10", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6341, "upload_time": "2019-10-14T12:59:38", "url": "https://files.pythonhosted.org/packages/04/66/ab9d30322bd2c181f918f93eaebf1ee3fd817df41f15716e57223cd979ad/djtest-0.1.4-py2.py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cae8d6c293bdee91c472d8a4df3f8d10", "sha256": "9423875875a858072f31164fef144ebb6baad921028f07ed6347087f7ddc4846" }, "downloads": -1, "filename": "djtest-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cae8d6c293bdee91c472d8a4df3f8d10", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6341, "upload_time": "2019-10-14T12:59:38", "url": "https://files.pythonhosted.org/packages/04/66/ab9d30322bd2c181f918f93eaebf1ee3fd817df41f15716e57223cd979ad/djtest-0.1.4-py2.py3-none-any.whl" } ] }