virtue


Namevirtue JSON
Version 2023.8.2 PyPI version JSON
download
home_page
SummaryAfter trial comes virtue. A test runner for good.
upload_time2023-08-22 09:25:55
maintainer
docs_urlNone
authorJulian Berman
requires_python>=3.8
licenseMIT
keywords test runner testing tests unittest
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ======
Virtue
======

|PyPI| |Pythons| |CI| |ReadTheDocs| |Precommit|

.. |PyPI| image:: https://img.shields.io/pypi/v/Virtue.svg
  :alt: PyPI version
  :target: https://pypi.org/project/Virtue/

.. |Pythons| image:: https://img.shields.io/pypi/pyversions/Virtue.svg
  :alt: Supported Python versions
  :target: https://pypi.org/project/Virtue/

.. |CI| image:: https://github.com/Julian/Virtue/workflows/CI/badge.svg
  :alt: Build status
  :target: https://github.com/Julian/Virtue/actions?query=workflow%3ACI

.. |ReadTheDocs| image:: https://readthedocs.org/projects/virtue/badge/?version=stable&style=flat
  :alt: ReadTheDocs status
  :target: https://virtue.readthedocs.io/en/stable/

.. |Precommit| image:: https://results.pre-commit.ci/badge/github/Julian/Virtue/main.svg
   :alt: pre-commit.ci status
   :target: https://results.pre-commit.ci/latest/github/Julian/Virtue/main


``virtue`` is a modern, extensible,
`unittest <https://docs.python.org/3/library/unittest.html>`_ compliant
test runner.

It is *not* a test framework (it doesn't contain a ``TestCase`` subclass
and it never will).

Usage
-----

Running a ``unittest``-based suite works essentially as it does for
``twisted``'s ``trial``, i.e.::

    $ python -m virtue mypackage.tests

will run the tests subpackage of a given importable package.

More docs are coming. Sorry.


Contributing
------------

I'm Julian Berman.

``virtue`` is on `GitHub <http://github.com/Julian/Virtue>`_.

Get in touch, via GitHub or otherwise, if you've got something to contribute,
it'd be most welcome!

You can also generally find me on Libera (nick: ``Julian``) in various
channels, including ``#python``.

If you feel overwhelmingly grateful, you can also `sponsor me
<https://github.com/sponsors/Julian/>`_.

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "virtue",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "test runner,testing,tests,unittest",
    "author": "Julian Berman",
    "author_email": "Julian+Virtue@GrayVines.com",
    "download_url": "https://files.pythonhosted.org/packages/ef/43/eb79da2654d5c02503a843afd7e01e2625602e6c84446fd81198360ca287/virtue-2023.8.2.tar.gz",
    "platform": null,
    "description": "======\nVirtue\n======\n\n|PyPI| |Pythons| |CI| |ReadTheDocs| |Precommit|\n\n.. |PyPI| image:: https://img.shields.io/pypi/v/Virtue.svg\n  :alt: PyPI version\n  :target: https://pypi.org/project/Virtue/\n\n.. |Pythons| image:: https://img.shields.io/pypi/pyversions/Virtue.svg\n  :alt: Supported Python versions\n  :target: https://pypi.org/project/Virtue/\n\n.. |CI| image:: https://github.com/Julian/Virtue/workflows/CI/badge.svg\n  :alt: Build status\n  :target: https://github.com/Julian/Virtue/actions?query=workflow%3ACI\n\n.. |ReadTheDocs| image:: https://readthedocs.org/projects/virtue/badge/?version=stable&style=flat\n  :alt: ReadTheDocs status\n  :target: https://virtue.readthedocs.io/en/stable/\n\n.. |Precommit| image:: https://results.pre-commit.ci/badge/github/Julian/Virtue/main.svg\n   :alt: pre-commit.ci status\n   :target: https://results.pre-commit.ci/latest/github/Julian/Virtue/main\n\n\n``virtue`` is a modern, extensible,\n`unittest <https://docs.python.org/3/library/unittest.html>`_ compliant\ntest runner.\n\nIt is *not* a test framework (it doesn't contain a ``TestCase`` subclass\nand it never will).\n\nUsage\n-----\n\nRunning a ``unittest``-based suite works essentially as it does for\n``twisted``'s ``trial``, i.e.::\n\n    $ python -m virtue mypackage.tests\n\nwill run the tests subpackage of a given importable package.\n\nMore docs are coming. Sorry.\n\n\nContributing\n------------\n\nI'm Julian Berman.\n\n``virtue`` is on `GitHub <http://github.com/Julian/Virtue>`_.\n\nGet in touch, via GitHub or otherwise, if you've got something to contribute,\nit'd be most welcome!\n\nYou can also generally find me on Libera (nick: ``Julian``) in various\nchannels, including ``#python``.\n\nIf you feel overwhelmingly grateful, you can also `sponsor me\n<https://github.com/sponsors/Julian/>`_.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "After trial comes virtue. A test runner for good.",
    "version": "2023.8.2",
    "project_urls": {
        "Documentation": "https://virtue.readthedocs.io/",
        "Funding": "https://github.com/sponsors/Julian",
        "Homepage": "https://github.com/Julian/Virtue",
        "Issues": "https://github.com/Julian/Virtue/issues/",
        "Source": "https://github.com/Julian/Virtue"
    },
    "split_keywords": [
        "test runner",
        "testing",
        "tests",
        "unittest"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "91d864bed6650e2ab8e510e52fe82b5471e12d9e6bb100c6710dcd9ff5c5ebd4",
                "md5": "6501c78f46d3767ef5713d6c9d7b512e",
                "sha256": "671ef49ab33de583c6108da5249546460b3042732deb1e44554c8291b3efd534"
            },
            "downloads": -1,
            "filename": "virtue-2023.8.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "6501c78f46d3767ef5713d6c9d7b512e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 22770,
            "upload_time": "2023-08-22T09:25:53",
            "upload_time_iso_8601": "2023-08-22T09:25:53.871960Z",
            "url": "https://files.pythonhosted.org/packages/91/d8/64bed6650e2ab8e510e52fe82b5471e12d9e6bb100c6710dcd9ff5c5ebd4/virtue-2023.8.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ef43eb79da2654d5c02503a843afd7e01e2625602e6c84446fd81198360ca287",
                "md5": "356b61a89075b99c4478e75bf959cba9",
                "sha256": "8ced7dd508d187897c49de18760c91a211ac7787d579d372a51a607e8c207c8e"
            },
            "downloads": -1,
            "filename": "virtue-2023.8.2.tar.gz",
            "has_sig": false,
            "md5_digest": "356b61a89075b99c4478e75bf959cba9",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 20783,
            "upload_time": "2023-08-22T09:25:55",
            "upload_time_iso_8601": "2023-08-22T09:25:55.525140Z",
            "url": "https://files.pythonhosted.org/packages/ef/43/eb79da2654d5c02503a843afd7e01e2625602e6c84446fd81198360ca287/virtue-2023.8.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-22 09:25:55",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sponsors",
    "github_project": "Julian",
    "github_not_found": true,
    "lcname": "virtue"
}
        
Elapsed time: 0.10480s