{ "info": { "author": "Daniel Moisset", "author_email": "dmoisset@machinalis.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "Django fast TestCase\n====================\n\nThis is an alternate `TestCase` class to improve test running times (I measured\na 2x improvement on some of my projects).\n\nYou can just use it and get a speed improvement for free, as long as your\nprojects satisfy the follwoing conditions:\n\n * You use Django 1.3 (It might work with newer versions but I haven't tried)\n * Your tests use postgreSQL as a database backend, 8.0 or newer\n * Your tests usa a single-database setup\n * Your tests don't make operations on the db connection that make some state\n change that is not reverted by a savepoint rollback.\n\nIf the last point is false for a few of your tests, you can use the regular\n`django.test.TestCase` for that case, and gain the speed improvement in most of\nthem.\n\nHow to use\n----------\n\nChange your:\n\n from django.test import TestCase\n\nto:\n\n from django_fasttest import TestCase\n\nHow does it work\n----------------\n\nWhat makes it faster is that fixture parsing/loading is done once per `TestCase`\ninstead of once per test. Between tests in a same `TestCase`, the database is\nrolled back (using a pgsql savepoint) to the point just after loading the\nfixtures.\n\nAll the tests within a testcase use the same database connection (the standard\n`TestCase` class shuts down the connection between tests), and are run within \nthe same transaction. If you use transactions in your code, you'll have the\nsame limitations as you do currently in Django 1.3\n\nThe speed benefits will be more noticeable if you have many test cases that use\nlarge fixtures, and if those tests are grouped in a `TestCase`.", "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/machinalis/django-fasttest", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "django-fasttest", "package_url": "https://pypi.org/project/django-fasttest/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-fasttest/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/machinalis/django-fasttest" }, "release_url": "https://pypi.org/project/django-fasttest/0.1/", "requires_dist": null, "requires_python": null, "summary": "A variant on django.test.TestCase optimized for postgres", "version": "0.1" }, "last_serial": 744819, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "68ed22c9ec561aab9fe6c05bb07439bd", "sha256": "d7869d943968941c6947f93ab2bc3d23315e9dc5b63775077e19b78c7f77a373" }, "downloads": -1, "filename": "django-fasttest-0.1.tar.gz", "has_sig": false, "md5_digest": "68ed22c9ec561aab9fe6c05bb07439bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3483, "upload_time": "2012-01-07T16:44:55", "url": "https://files.pythonhosted.org/packages/8b/4e/5f3e04e21ef91755f01f05b07b5a37d2a5d3b42d81a6b6068e9d7a238a09/django-fasttest-0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "68ed22c9ec561aab9fe6c05bb07439bd", "sha256": "d7869d943968941c6947f93ab2bc3d23315e9dc5b63775077e19b78c7f77a373" }, "downloads": -1, "filename": "django-fasttest-0.1.tar.gz", "has_sig": false, "md5_digest": "68ed22c9ec561aab9fe6c05bb07439bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3483, "upload_time": "2012-01-07T16:44:55", "url": "https://files.pythonhosted.org/packages/8b/4e/5f3e04e21ef91755f01f05b07b5a37d2a5d3b42d81a6b6068e9d7a238a09/django-fasttest-0.1.tar.gz" } ] }