{ "info": { "author": "Enrico Barzetti", "author_email": "enricobarzetti@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "Django CSV Tests\n================\n\nThis allows you to use a spreadsheet to define Django units tests that make requests to the Django testing client. Inspired by Robot Framework.\n\nInstallation\n------------\n\nTo get the latest stable release from PyPi\n\n.. code-block:: bash\n\n pip install django_csv_tests\n\nInstall the app\n\n.. code-block:: python\n\n INSTALLED_APPS = (\n ...,\n 'django_csv_tests',\n )\n\nUsage\n-----\n\nCreate a CSV file with the headers \"test name\", \"expect failure\", \"login as\",\n\"url\", \"method\", \"querystring\", \"post body\", \"expect status\",\n\"expect header\". Then create a test file like:\n\n.. code-block:: python\n\n import os\n\n from django.contrib.auth import get_user_model\n from django.test import TestCase\n\n from django_csv_tests import generate_tests\n\n\n class TheTestCase(TestCase):\n def setUp(self):\n self.user = get_user_model().objects.create_user(username='john.doe',\n email='john@doe.com',\n password='password')\n\n\n csv_path = os.path.join(os.path.dirname(__file__), 'tests.csv')\n generate_tests(csv_path, TheTestCase)\n\nYou can define tests as a sequence of requests with associated assertions. A\ntest is defined with a test name and one or more rows that describe requests to\nmake. If a row does not have a test name it indicates that the request defined\non that row is part of the last named test.\n\nColumn values\n+++++++++++++\n\ntest name\n~~~~~~~~~\n\nA string used to name the test.\n\nexpect failure\n~~~~~~~~~~~~~~\n\nA boolean used to indicated whether the test is expected to fail. Any non-zero\nlength string indicates True. An easy way is enter this in a spreadsheet is as\n\"x\".\n\nlogin as\n~~~~~~~~\n\nA JSON encoded string that provides the username and password of the user to log\nin as. This is passed as keyword arguments to\ndjango.contrib.auth.authenticate(). Example: {\"username\": \"john.doe\",\n\"password\": \"password\"}.\n\nurl\n~~~\n\nThe URL that the request should be made to.\n\nmethod\n~~~~~~\n\nAn HTTP method. GET and POST are supported.\n\nquerystring\n~~~~~~~~~~~\n\nA JSON encoded string that contains querystring keys and values. This becomes\n``request.GET``.\n\npost body\n~~~~~~~~~\n\nA JSON encoded string that contains data to submit in a POST request. This is\nused only if the method is POST. This becomes ``request.POST``.\n\nexpect status\n~~~~~~~~~~~~~\n\nThe HTTP status code expected for the response.\n\nexpect header\n~~~~~~~~~~~~~\n\nA JSON encoded string that contains header keys and values expected in the\nresponse. Example: A redirect response could have the header\n{\"Location\": \"http://testserver/new_location/\"}\n\nTodo\n----\n\n- Implement \"expect context\", \"expect session\", and \"expect\" directives.\n\nRun Tests\n---------\n\n.. code-block:: bash\n\n ./configure.sh\n source venv/bin/activate\n python django_csv_tests/tests/manage.py test", "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/enricobarzetti/django_csv_tests", "keywords": "django", "license": "The MIT License", "maintainer": null, "maintainer_email": null, "name": "django_csv_tests", "package_url": "https://pypi.org/project/django_csv_tests/", "platform": "OS Independent", "project_url": "https://pypi.org/project/django_csv_tests/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/enricobarzetti/django_csv_tests" }, "release_url": "https://pypi.org/project/django_csv_tests/0.1.5/", "requires_dist": null, "requires_python": null, "summary": "This allows you to use a spreadsheet to define Django units tests that make requests to the Django testing client.", "version": "0.1.5" }, "last_serial": 1389549, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "47e45f124419793b3d87619655426b89", "sha256": "60e7a63c44e515885c2a7cb4cc7b86595a708d1b96a6378100b6629fb4f34649" }, "downloads": -1, "filename": "django_csv_tests-0.1.0.tar.gz", "has_sig": false, "md5_digest": "47e45f124419793b3d87619655426b89", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3987, "upload_time": "2015-01-03T20:23:44", "url": "https://files.pythonhosted.org/packages/5d/a6/99d6bdff413663aac347e4b6a382127c8b8b1aaa03c214bb3e9c3e318cdf/django_csv_tests-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "3dc7c3dacc59eccd2b5c42b9bdd0bae9", "sha256": "e5616a6dc5d9c0af24f16b8f0c4eeb5733bea838219f4be2ecd87e1f0b26f81a" }, "downloads": -1, "filename": "django_csv_tests-0.1.1.tar.gz", "has_sig": false, "md5_digest": "3dc7c3dacc59eccd2b5c42b9bdd0bae9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3986, "upload_time": "2015-01-03T20:37:36", "url": "https://files.pythonhosted.org/packages/f9/38/3282a579cfa227dfc675acb2e2d93c8dfdb6c1065f7c687f43a8dbc47f85/django_csv_tests-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "45387562b9b3c7f123212636d1135366", "sha256": "ac3b7342e753dc41f84e50abcd43727642666ed9fffb6f51ff033ae53778310f" }, "downloads": -1, "filename": "django_csv_tests-0.1.2.tar.gz", "has_sig": false, "md5_digest": "45387562b9b3c7f123212636d1135366", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5073, "upload_time": "2015-01-04T03:58:03", "url": "https://files.pythonhosted.org/packages/81/e0/690ed8878d076188feeb31b9017303b5d042875e92e62ee2033840d939bb/django_csv_tests-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "9574a12611c87ff2376949477722d6c4", "sha256": "ee8ffb1a835382c6704800db8750a8565770d0b44ea6836546c025c6c1d9faec" }, "downloads": -1, "filename": "django_csv_tests-0.1.3.tar.gz", "has_sig": false, "md5_digest": "9574a12611c87ff2376949477722d6c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5078, "upload_time": "2015-01-04T04:02:17", "url": "https://files.pythonhosted.org/packages/1a/7a/048db3da609e2870d39c91ff4fa8a7546e62d782f5512c0c8db389babebc/django_csv_tests-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "a0151325180ef5d67ce6d246343d8fa1", "sha256": "5c1dd1016e0afe9ead78c7aa98fdc66d05a392e362780658b626a57b9eca7693" }, "downloads": -1, "filename": "django_csv_tests-0.1.4.tar.gz", "has_sig": false, "md5_digest": "a0151325180ef5d67ce6d246343d8fa1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5904, "upload_time": "2015-01-20T18:47:41", "url": "https://files.pythonhosted.org/packages/44/d7/d5cf374f1fe58b747e551edbfdd5045c9cee9477340d7f6b9d9f5d6663db/django_csv_tests-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "af814c9239eade3a1527dceb2789c8d4", "sha256": "144a8220aa6a338d2afdfb141041ed253850d9e5415ff59de484f016f612cd11" }, "downloads": -1, "filename": "django_csv_tests-0.1.5.tar.gz", "has_sig": false, "md5_digest": "af814c9239eade3a1527dceb2789c8d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6072, "upload_time": "2015-01-20T18:51:28", "url": "https://files.pythonhosted.org/packages/fe/52/e301fe4153056a96df08c93e48544f61fa10fb685d27d8c6773fe84e86f4/django_csv_tests-0.1.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "af814c9239eade3a1527dceb2789c8d4", "sha256": "144a8220aa6a338d2afdfb141041ed253850d9e5415ff59de484f016f612cd11" }, "downloads": -1, "filename": "django_csv_tests-0.1.5.tar.gz", "has_sig": false, "md5_digest": "af814c9239eade3a1527dceb2789c8d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6072, "upload_time": "2015-01-20T18:51:28", "url": "https://files.pythonhosted.org/packages/fe/52/e301fe4153056a96df08c93e48544f61fa10fb685d27d8c6773fe84e86f4/django_csv_tests-0.1.5.tar.gz" } ] }