# HitchRunPy
[![Main branch status](https://github.com/hitchdev/hitchrunpy/actions/workflows/regression.yml/badge.svg)](https://github.com/hitchdev/hitchrunpy/actions/workflows/regression.yml)
HitchRunPy is a tool to run, test and profile snippets of python code.
HitchRunPy was developed to run executable specifications
using [HitchStory](https://hitchdev.com/hitchstory) that define
Python APIs.
As such it can be used with HitchStory to build effective replacements
for unit tests and integration tests where the 'spec' is a python API.
HitchRunPy is used to run the executable specifications for all libraries
on [HitchDev](https://hitchdev.com/).
## Example
```python
from hitchrunpy import ExamplePythonCode
ExamplePythonCode(
'/path/to/bin/python',
'/path/to/working_directory',
).with_code((
'with open("examplefile", "w") as handle:'
' handle.write("exampletext")'
)).run()
```
## Install
```sh
$ pip install hitchstory
```
## Using HitchRunPy
- [CProfile](https://hitchdev.com/hitchrunpy/using/alpha/cprofile)
- [Run with environment variables](https://hitchdev.com/hitchrunpy/using/alpha/environment-vars)
- [Exceptions](https://hitchdev.com/hitchrunpy/using/alpha/exceptions)
- [Include files](https://hitchdev.com/hitchrunpy/using/alpha/include-files)
- [Interact with running code](https://hitchdev.com/hitchrunpy/using/alpha/interact-with-running-code)
- [Setup code](https://hitchdev.com/hitchrunpy/using/alpha/setup-code)
- [Error occurred](https://hitchdev.com/hitchrunpy/using/alpha/syntax-errors)
- [Timeout](https://hitchdev.com/hitchrunpy/using/alpha/timeout)
- [Use modules](https://hitchdev.com/hitchrunpy/using/alpha/variables)
## Why use HitchRunPy?
HitchRunPy combined with HitchStory serves as an effective replacement for unit tests
in the situation where unit tests are most effective.
Raw data
{
"_id": null,
"home_page": "https://github.com/hitchtest/hitchrunpy",
"name": "hitchrunpy",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7.0",
"maintainer_email": "",
"keywords": "test,python",
"author": "Colm O'Connor",
"author_email": "Colm O'Connor <colm.oconnor.github@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/26/a6/baeefa148df4c385ced68569f792a3808da4d03d940fdba8ea125aebaf7d/hitchrunpy-0.11.3.tar.gz",
"platform": null,
"description": "# HitchRunPy\n\n[![Main branch status](https://github.com/hitchdev/hitchrunpy/actions/workflows/regression.yml/badge.svg)](https://github.com/hitchdev/hitchrunpy/actions/workflows/regression.yml)\n\nHitchRunPy is a tool to run, test and profile snippets of python code.\n\nHitchRunPy was developed to run executable specifications\nusing [HitchStory](https://hitchdev.com/hitchstory) that define\nPython APIs.\n\nAs such it can be used with HitchStory to build effective replacements\nfor unit tests and integration tests where the 'spec' is a python API.\n\nHitchRunPy is used to run the executable specifications for all libraries\non [HitchDev](https://hitchdev.com/).\n\n## Example\n\n\n```python\nfrom hitchrunpy import ExamplePythonCode\n\nExamplePythonCode(\n '/path/to/bin/python',\n '/path/to/working_directory',\n).with_code((\n 'with open(\"examplefile\", \"w\") as handle:'\n ' handle.write(\"exampletext\")'\n)).run()\n```\n\n\n## Install\n\n```sh\n$ pip install hitchstory\n```\n\n## Using HitchRunPy\n\n- [CProfile](https://hitchdev.com/hitchrunpy/using/alpha/cprofile)\n- [Run with environment variables](https://hitchdev.com/hitchrunpy/using/alpha/environment-vars)\n- [Exceptions](https://hitchdev.com/hitchrunpy/using/alpha/exceptions)\n- [Include files](https://hitchdev.com/hitchrunpy/using/alpha/include-files)\n- [Interact with running code](https://hitchdev.com/hitchrunpy/using/alpha/interact-with-running-code)\n- [Setup code](https://hitchdev.com/hitchrunpy/using/alpha/setup-code)\n- [Error occurred](https://hitchdev.com/hitchrunpy/using/alpha/syntax-errors)\n- [Timeout](https://hitchdev.com/hitchrunpy/using/alpha/timeout)\n- [Use modules](https://hitchdev.com/hitchrunpy/using/alpha/variables)\n\n\n\n## Why use HitchRunPy?\n\nHitchRunPy combined with HitchStory serves as an effective replacement for unit tests\nin the situation where unit tests are most effective.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Run and interact with snippets of python code.",
"version": "0.11.3",
"split_keywords": [
"test",
"python"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "39e804f91cd8546c095c15042500c2123bdf473ee445c5b11b80a3ce08cd0aa8",
"md5": "1535c36de0aebedaa84823d05d091a2f",
"sha256": "282bfa48e808755d917a6a42f00e1694b7e46d29721482e718135b29dff2f558"
},
"downloads": -1,
"filename": "hitchrunpy-0.11.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1535c36de0aebedaa84823d05d091a2f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7.0",
"size": 18278,
"upload_time": "2023-04-07T13:47:38",
"upload_time_iso_8601": "2023-04-07T13:47:38.966634Z",
"url": "https://files.pythonhosted.org/packages/39/e8/04f91cd8546c095c15042500c2123bdf473ee445c5b11b80a3ce08cd0aa8/hitchrunpy-0.11.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "26a6baeefa148df4c385ced68569f792a3808da4d03d940fdba8ea125aebaf7d",
"md5": "d4135d515fd803671d97c82c7d12765a",
"sha256": "2df12e8ddf51d630f3d6388836bff1e8268fc2dc408383b7a52dbd6dd974d3e3"
},
"downloads": -1,
"filename": "hitchrunpy-0.11.3.tar.gz",
"has_sig": false,
"md5_digest": "d4135d515fd803671d97c82c7d12765a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7.0",
"size": 19009,
"upload_time": "2023-04-07T13:47:43",
"upload_time_iso_8601": "2023-04-07T13:47:43.256835Z",
"url": "https://files.pythonhosted.org/packages/26/a6/baeefa148df4c385ced68569f792a3808da4d03d940fdba8ea125aebaf7d/hitchrunpy-0.11.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-04-07 13:47:43",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "hitchtest",
"github_project": "hitchrunpy",
"lcname": "hitchrunpy"
}