{
"info": {
"author": "Ryan Kaskel",
"author_email": "dev@ryankaskel.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 5 - Production/Stable",
"Environment :: Web Environment",
"Framework :: Django",
"Intended Audience :: Developers",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 2.6",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3.2",
"Programming Language :: Python :: 3.3",
"Topic :: Software Development :: Testing"
],
"description": "django-discoverage\n==================\n\nAdds `coverage `_ to Django 1.6's test\nrunner and Carl Meyer and Jannis Leidel's `django-discover-runner\n`_.\n\nInspired by `django-coverage `_.\n\ndjango-discoverage works with Django 1.4 and above. If you are using Django 1.4\nor 1.5, django-discover-runner is required and will be automatically\ninstalled. That package backports the implementation of ``DiscoverRunner``\nincluded in Django 1.6.\n\nQuick usage\n-----------\n\nTo run the tests, type:\n\n ./manage.py test [options] [appname ...]\n\nTo run the tests without code coverage (i.e. run ``django-discover-runner``\ninstead), type:\n\n ./manage.py test --no-coverage [options] [appname ...]\n\nIf you want to use the ``--no-coverage`` option, make sure you add\n``discoverage`` to your ``INSTALLED_APPS``.\n\nDetailed usage\n--------------\n\nOne of the objectives of Django's ``DiscoverRunner`` (previously\n``django-discover-runner``) is to allow the separation of a Django app's tests\nfrom the code it's testing. Since tests no longer reside in an app,\n``django-discoverage`` needs a different way to know which apps to include in\nthe coverage report. The runner does this in two ways which are discussed below.\n\nFirst, it tries to infer which apps you are testing from the name of the package\nin which the test's module lives. For example, if you have an app ``blog`` and\nyou test the view of the app in the module ``tests.blog.test_views``, the app\nwill be included in the coverage report. The same happens if the app is a\nsubpackage and appears in ``INSTALLED_APPS`` as ``myproject.blog``.\n\nThis behavior is controlled by the ``PKG_NAME_APP_DISCOVERY`` setting.\n\nAlthough not on by default, tested apps can also be guessed from the name of the\ntest's module. For example, if ``MODULE_NAME_APP_DISCOVERY`` is ``True`` and\nthere is a module named ``tests.test_blog``, the ``blog`` app will be included\nin the report. You can override the regular expression used to extract the app\nname using the ``MODULE_NAME_DISCOVERY_PATTERN`` setting.\n\nThe second way in which ``django-discoverage`` finds apps is by looking for an\niterable of app names (named by default ``TESTS_APPS``) in three places:\n\n1. On a ``TestCase`` instance in the suite.\n2. In the ``TestCase`` subclass's module (``test*.py`` by default).\n3. In the ``TestCase`` subclass's immediate package. If ``MyTestCase`` is in the\n package ``tests.myapp.test_views``, the runner inspects ``tests.myapp``. It\n does not currently traverse parent packages.\n\nLet's say you had the following test module, ``tests.blog.test_views``::\n\n TESTS_APPS = ('blog',)\n\n class MyTestCase(TestCase):\n TESTS_APPS = ('mycoolapp', 'myproject.anothercoolapp')\n ...\n\nAll modules in the apps ``blog``, ``mycoolapp``, and\n``myproject.anothercoolapp`` will be included in the report along with any apps\nlisted in ``test.blog.TESTS_APPS``.\n\nModules specified in ``OMIT_MODULES`` will *not*, however, appear in the report.\n\nSettings\n--------\n\n``PKG_NAME_APP_DISCOVERY``\n Determines whether tested apps are guessed from a test module's package\n name. It is on by default.\n\n``MODULE_NAME_APP_DISCOVERY``\n Determines whether tested apps are guessed from a test module's name.\n\n``MODULE_NAME_DISCOVERY_PATTERN``\n A regular expression with a single capturing group that extracts the app name\n from a module name (e.g. \"blog\" from ``test_blog``). Defaults to\n ``\"test_?(\\w+)\"``.\n\n``TESTED_APPS_VAR_NAME``\n The name of the iterable ``django-discoverage`` looks for in the three places\n listed above. Defaults to ``TESTS_APPS``.\n\n``COVERAGE_OMIT_MODULES``\n Modules not to be traced by ``coverage``. See the `coverage API\n documentation`_ for more details. Defaults to ``['*test*']``.\n\n``COVERAGE_EXCLUDE_PATTERNS``\n A list of regular expressions that impact coverage reporting. If a line of\n tested code matches one of the patterns in the list, it will not count as a\n missed line. See the `coverage API documentation`_ for more details.\n\n Defaults to:\n\n * ``def get_absolute_url(self):``\n * ``def __unicode__(self):``\n * ``def __str__(self):``\n * Any statement with ``import *`` in it\n\n.. _Coverage API documentation: http://nedbatchelder.com/code/coverage/api.html#coverage.coverage\n\nChange Log\n----------\n\n1.0.0 (2013-08-27)\n~~~~~~~~~~~~~~~~~~\n\n* Handle ``ImproperlyConfigured`` exception raised by ``django-discover-runner``\n* The runner is now successfully used in several projects so it's moving to 1.0.\n\n0.7.2 (2013-06-19)\n~~~~~~~~~~~~~~~~~~\n\n* Require django-discover-runner 1.0 which now backports Django 1.6's\n implementation of ``DiscoverRunner``.\n\n0.7.1 (2013-06-18)\n~~~~~~~~~~~~~~~~~~\n\n* Only install django-discover-runner if the version of Django installed is\n lower than 1.6\n\n0.7.0 (2013-06-05)\n~~~~~~~~~~~~~~~~~~\n\n* Support for Django 1.6 and its implementation of\n `DiscoverRunner `_.\n\n0.6.2 (2013-03-13)\n~~~~~~~~~~~~~~~~~~\n\n* Change the default of ``COVERAGE_OMIT_MODULES`` back to ``['*test*']``\n\n0.6.1 (2013-03-06)\n~~~~~~~~~~~~~~~~~~\n\n* Include South's test database patching\n\n0.6.0 (2013-02-05)\n~~~~~~~~~~~~~~~~~~\n\n* Python 3 support\n* Test suite for app discovery methods\n* ``--no-coverage`` option",
"description_content_type": null,
"docs_url": null,
"download_url": "UNKNOWN",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/ryankask/django-discoverage",
"keywords": null,
"license": "BSD",
"maintainer": null,
"maintainer_email": null,
"name": "django-discoverage",
"package_url": "https://pypi.org/project/django-discoverage/",
"platform": "UNKNOWN",
"project_url": "https://pypi.org/project/django-discoverage/",
"project_urls": {
"Download": "UNKNOWN",
"Homepage": "https://github.com/ryankask/django-discoverage"
},
"release_url": "https://pypi.org/project/django-discoverage/1.0.0/",
"requires_dist": null,
"requires_python": null,
"summary": "Adds coverage to Django's DiscoverRunner.",
"version": "1.0.0"
},
"last_serial": 850096,
"releases": {
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "8a4fd0023973e0f3550e7c92e22a97cc",
"sha256": "3dbdc85ffa5b253018e2ee3c5ad3f3df46bb286699ccb85a9f1b105013ba6604"
},
"downloads": -1,
"filename": "django-discoverage-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "8a4fd0023973e0f3550e7c92e22a97cc",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3566,
"upload_time": "2012-10-24T14:29:18",
"url": "https://files.pythonhosted.org/packages/a7/90/9bf37e79102b27f51e212deafd8187131454a253c37be2d0b06f1e7467e5/django-discoverage-0.1.0.tar.gz"
}
],
"0.2.0": [
{
"comment_text": "",
"digests": {
"md5": "e6eddaca99683f9d8279161d844b28f8",
"sha256": "7741176ea4fee32350d39e69f1dfb4d8505caf4850c57007d6d008580a72454f"
},
"downloads": -1,
"filename": "django-discoverage-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "e6eddaca99683f9d8279161d844b28f8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3583,
"upload_time": "2012-10-24T15:03:33",
"url": "https://files.pythonhosted.org/packages/75/ac/154155f78776fe8084db24a2dde6305b35cdd8e123fa30402c29d46db088/django-discoverage-0.2.0.tar.gz"
}
],
"0.2.1": [
{
"comment_text": "",
"digests": {
"md5": "568187114b92f3fe488bb7169dfe748a",
"sha256": "60c28a6fc9fd3dd20a7a0f1013fdb8ae2517f4617ad5122efe094fcce17f21d0"
},
"downloads": -1,
"filename": "django-discoverage-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "568187114b92f3fe488bb7169dfe748a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3578,
"upload_time": "2012-10-24T15:12:15",
"url": "https://files.pythonhosted.org/packages/74/cd/fcbe61c55094de286abf5af2a2ce688937f528fd93f27ea48115fec1dd22/django-discoverage-0.2.1.tar.gz"
}
],
"0.3.0": [
{
"comment_text": "",
"digests": {
"md5": "08eb81ed0ad67968538c9ebc064f1dd7",
"sha256": "aba01b76c8729c76b059497c3191b773993a79547c098e3c756b35ea37ff0d84"
},
"downloads": -1,
"filename": "django-discoverage-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "08eb81ed0ad67968538c9ebc064f1dd7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3993,
"upload_time": "2012-10-25T07:51:13",
"url": "https://files.pythonhosted.org/packages/a8/40/17be732f5c8272632554d7a4bbe42ed496243fd3d561a8f4516ee48fd3a4/django-discoverage-0.3.0.tar.gz"
}
],
"0.3.1": [
{
"comment_text": "",
"digests": {
"md5": "7974b79c925bda301bef08a0ebee5a97",
"sha256": "6de192bb96ecdd0750239f37be853c8e3a44679ad9591485a6253e0b9e04ae36"
},
"downloads": -1,
"filename": "django-discoverage-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "7974b79c925bda301bef08a0ebee5a97",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3959,
"upload_time": "2012-10-25T08:03:49",
"url": "https://files.pythonhosted.org/packages/39/d2/84be18a177558f21f956a7b91efac742d2ecf23f5cf20ebbae79a901f9e9/django-discoverage-0.3.1.tar.gz"
}
],
"0.4.0": [
{
"comment_text": "",
"digests": {
"md5": "d9fc5a8f92084210f25813fe030e93ff",
"sha256": "3410e2b65612d9d9f33978bc247f4797900b1ff121462ead461d520facc7cbb4"
},
"downloads": -1,
"filename": "django-discoverage-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "d9fc5a8f92084210f25813fe030e93ff",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5004,
"upload_time": "2012-10-26T10:43:35",
"url": "https://files.pythonhosted.org/packages/ad/81/f3e8979494b508021dd2d0344cbd18160e60b35b72e6adf8729129e590b4/django-discoverage-0.4.0.tar.gz"
}
],
"0.5.0": [
{
"comment_text": "",
"digests": {
"md5": "02efd288fca33efc6c7680c9fa18cfad",
"sha256": "e6c805b004d01fa00fb0ea3656e90861f2bdf9da7c83aae9150cd6621903385c"
},
"downloads": -1,
"filename": "django-discoverage-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "02efd288fca33efc6c7680c9fa18cfad",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5226,
"upload_time": "2012-12-11T12:14:26",
"url": "https://files.pythonhosted.org/packages/6b/37/28830df803f8cb36db8b69274cbad25263bb9a73d7cf44473205b3ccd6b9/django-discoverage-0.5.0.tar.gz"
}
],
"0.6.0": [
{
"comment_text": "",
"digests": {
"md5": "84b0f078683e8a6cb0b5ff3668bf6b51",
"sha256": "eed64cc7b740d37884d04cb56ea0db0fb97d77ec2e3da62a279ccdca2bcb966b"
},
"downloads": -1,
"filename": "django-discoverage-0.6.0.tar.gz",
"has_sig": false,
"md5_digest": "84b0f078683e8a6cb0b5ff3668bf6b51",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5955,
"upload_time": "2013-02-05T08:02:13",
"url": "https://files.pythonhosted.org/packages/ca/9c/eab47582b32e028e90f44bc0392b6c2fedc2bdeb599f11230f8d01a3a2d6/django-discoverage-0.6.0.tar.gz"
}
],
"0.6.1": [
{
"comment_text": "",
"digests": {
"md5": "456983c287bfe190f293d326c5f8595a",
"sha256": "1281ad68b93949565c0e338733e07aa3a5f11e1fc89970f61d30d6c9309efe9e"
},
"downloads": -1,
"filename": "django-discoverage-0.6.1.tar.gz",
"has_sig": false,
"md5_digest": "456983c287bfe190f293d326c5f8595a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6062,
"upload_time": "2013-03-06T11:53:56",
"url": "https://files.pythonhosted.org/packages/bc/66/071269ae6b480819f8fe078ed7d281822215b827c3ccc0a2d03a2d149ea1/django-discoverage-0.6.1.tar.gz"
}
],
"0.6.2": [
{
"comment_text": "",
"digests": {
"md5": "637a5dad3b134aebad88c62ebb2f3c66",
"sha256": "acb7b5c17674e7655ccd5ea8497ba813361892a24f59c137247ad6eb0faa2b9b"
},
"downloads": -1,
"filename": "django-discoverage-0.6.2.tar.gz",
"has_sig": false,
"md5_digest": "637a5dad3b134aebad88c62ebb2f3c66",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6102,
"upload_time": "2013-03-13T12:53:59",
"url": "https://files.pythonhosted.org/packages/71/94/3de30c7f1a62e1b4b3e0fa80fb2ee25b92d6126ab03dae1d81690ecf79a1/django-discoverage-0.6.2.tar.gz"
}
],
"0.7.0": [
{
"comment_text": "",
"digests": {
"md5": "7121a419a6da4e9c23870531ad463e8a",
"sha256": "1575a93ebeea1805dba9be7766fe58d11d01423d18cf44a29c96f5eeed9d8d43"
},
"downloads": -1,
"filename": "django-discoverage-0.7.0.tar.gz",
"has_sig": false,
"md5_digest": "7121a419a6da4e9c23870531ad463e8a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6259,
"upload_time": "2013-06-05T15:12:11",
"url": "https://files.pythonhosted.org/packages/e3/66/4a31cf2a33334c9f527dc5aef1f575ba98bdb4143841ef1824575d30d1e5/django-discoverage-0.7.0.tar.gz"
}
],
"0.7.1": [
{
"comment_text": "",
"digests": {
"md5": "9aac1b6a80454c2efbe62ac1a4443909",
"sha256": "ff1ba8813b9c00ca862d912a138ecc9d095713de68f3677d8aebcb56848951c7"
},
"downloads": -1,
"filename": "django-discoverage-0.7.1.tar.gz",
"has_sig": false,
"md5_digest": "9aac1b6a80454c2efbe62ac1a4443909",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6439,
"upload_time": "2013-06-18T09:02:36",
"url": "https://files.pythonhosted.org/packages/b6/b5/35bf8cfcd2c06ecc1fb2ff8134204711d565a36d17be71eb716cd92c2851/django-discoverage-0.7.1.tar.gz"
}
],
"0.7.2": [
{
"comment_text": "",
"digests": {
"md5": "5c818ecf1a4d81140a90c1f805552b29",
"sha256": "f16cceba3c54b0cebb3ad9423ed66c6b73dd3387441838cf49f0600e3dda28d0"
},
"downloads": -1,
"filename": "django-discoverage-0.7.2.tar.gz",
"has_sig": false,
"md5_digest": "5c818ecf1a4d81140a90c1f805552b29",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6553,
"upload_time": "2013-06-19T10:08:43",
"url": "https://files.pythonhosted.org/packages/df/30/fe7bc344cbb8b7ce79389705c0562d0742a2cc787bceddcec9f8de432891/django-discoverage-0.7.2.tar.gz"
}
],
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "c1af5714fce44bb76a90a90696b358ca",
"sha256": "86ec070a0bb7707b4653f766ab18b4a9385ec0160083ac3c67a1051686299abc"
},
"downloads": -1,
"filename": "django-discoverage-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "c1af5714fce44bb76a90a90696b358ca",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6677,
"upload_time": "2013-08-27T08:43:41",
"url": "https://files.pythonhosted.org/packages/31/57/1d441a9db40a46ef663ca0ae0d91afd191efa54ae64ff7a04cefa4cec554/django-discoverage-1.0.0.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "c1af5714fce44bb76a90a90696b358ca",
"sha256": "86ec070a0bb7707b4653f766ab18b4a9385ec0160083ac3c67a1051686299abc"
},
"downloads": -1,
"filename": "django-discoverage-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "c1af5714fce44bb76a90a90696b358ca",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6677,
"upload_time": "2013-08-27T08:43:41",
"url": "https://files.pythonhosted.org/packages/31/57/1d441a9db40a46ef663ca0ae0d91afd191efa54ae64ff7a04cefa4cec554/django-discoverage-1.0.0.tar.gz"
}
]
}