{ "info": { "author": "George King", "author_email": "george.w.king@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "License :: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication", "Programming Language :: Python :: 3 :: Only", "Topic :: Software Development :: Testing" ], "description": "writeup v0\nDedicated to the public domain under CC0: https://creativecommons.org/publicdomain/zero/1.0/.\n\n\n# iotest\n\niotest is a small tool for testing command line programs. By default it writes the stdout and stderr of the program under test to files, and then compares them to expected results using `git diff`. Here are some reasons I like it:\n- Specify complicated, multiline text expectations without fiddling with escape characters in test code.\n- Clearly differentiate between stdout and stderr, with default success/failure status code expectations.\n- Test output is placed sensibly in the `_build` directory for easy inspection.\n- Simple test case prototyping reduces test case redundancy without complicated inheritence overrides (conflicts result in an error).\n\niotest is available via pip for easy distribution. Alternatively, the script can be freely copied into a project; there is a single python dependency (pithy utility library), also available through pip.\n\n\n# License\n\niotest dedicated to the public domain. It is written and maintained by George King.\n\n\n# Usage\n\nTo run all tests in the `test` directory:\n$ iotest test/\n\niotest will look for test cases, which are indicated by the presence of a `.iot`, `.out`, or `.err` file. The filename stem (the part before dot/extension) indicates the name of the test case. This is then used to find a test executable with the matching stem. For example, if we have a test case file `thing.iot` and corresponding executable file `thing.py`, iotest will run `thing.py` and compare its output to the expectations specified in `thing.iot`. If there is more than one test case file, e.g. `thing.iot` and `thing.err`, then they will be combined together as long as they do not conflict (in other words, `thing.iot` cannot also specify a stderr expectation).\n\n\n# Issues\n\nPlease file issues to the github repository: github.com/gwk/iotest.\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/gwk/iotest", "keywords": "testing", "license": "CC0", "maintainer": "", "maintainer_email": "", "name": "iotest", "package_url": "https://pypi.org/project/iotest/", "platform": "", "project_url": "https://pypi.org/project/iotest/", "project_urls": { "Homepage": "https://github.com/gwk/iotest" }, "release_url": "https://pypi.org/project/iotest/0.1/", "requires_dist": null, "requires_python": "", "summary": "iotest is a small tool for testing programs based on input and output.", "version": "0.1" }, "last_serial": 2648525, "releases": { "0.0.0": [], "0.1": [ { "comment_text": "", "digests": { "md5": "62fe614a28ced52009ef9815543a359f", "sha256": "2988b3b0893fe3442017541f3aca3ef529e7b7df421cbe85eefce0bf7ab3ddf1" }, "downloads": -1, "filename": "iotest-0.1.tar.gz", "has_sig": false, "md5_digest": "62fe614a28ced52009ef9815543a359f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13796, "upload_time": "2017-02-17T02:22:56", "url": "https://files.pythonhosted.org/packages/e7/1c/12cca0feb58cb45743ce6410269e80b0dcac5e1b7e07e876aeb4bbd640ac/iotest-0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "62fe614a28ced52009ef9815543a359f", "sha256": "2988b3b0893fe3442017541f3aca3ef529e7b7df421cbe85eefce0bf7ab3ddf1" }, "downloads": -1, "filename": "iotest-0.1.tar.gz", "has_sig": false, "md5_digest": "62fe614a28ced52009ef9815543a359f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13796, "upload_time": "2017-02-17T02:22:56", "url": "https://files.pythonhosted.org/packages/e7/1c/12cca0feb58cb45743ce6410269e80b0dcac5e1b7e07e876aeb4bbd640ac/iotest-0.1.tar.gz" } ] }