Name | test-server JSON |
Version |
0.0.47
JSON |
| download |
home_page | None |
Summary | Server for testing HTTP clients |
upload_time | 2025-09-12 22:44:01 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=2.7 |
license | None |
keywords |
test
testing
server
http server
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Documentation for test_server package
[](https://github.com/lorien/test_server/actions/workflows/test.yml)
[](https://github.com/lorien/test_server/actions/workflows/test.yml)
[](https://github.com/lorien/test_server/actions/workflows/mypy.yml)
[](https://coveralls.io/github/lorien/test_server)
[](http://user-agent.readthedocs.org)
Simple HTTP Server for testing HTTP clients.
## Installation
Run `pip install -U test_server`
## Usage Example
```python
from unittest import TestCase
import unittest
from urllib.request import urlopen
from test_server import TestServer, Response, HttpHeaderStorage
class UrllibTestCase(TestCase):
@classmethod
def setUpClass(cls):
cls.server = TestServer()
cls.server.start()
@classmethod
def tearDownClass(cls):
cls.server.stop()
def setUp(self):
self.server.reset()
def test_get(self):
self.server.add_response(
Response(
data=b"hello",
headers={"foo": "bar"},
)
)
self.server.add_response(Response(data=b"zzz"))
url = self.server.get_url()
info = urlopen(url)
self.assertEqual(b"hello", info.read())
self.assertEqual("bar", info.headers["foo"])
info = urlopen(url)
self.assertEqual(b"zzz", info.read())
self.assertTrue("bar" not in info.headers)
unittest.main()
```
Raw data
{
"_id": null,
"home_page": null,
"name": "test-server",
"maintainer": null,
"docs_url": null,
"requires_python": ">=2.7",
"maintainer_email": null,
"keywords": "test, testing, server, http server",
"author": null,
"author_email": "Gregory Petukhov <lorien@lorien.name>",
"download_url": "https://files.pythonhosted.org/packages/32/71/b099a867ca78033f3bb6877520c1c1d0aaedb5fdb7192a225ad0bc3967f4/test_server-0.0.47.tar.gz",
"platform": null,
"description": "# Documentation for test_server package\n\n[](https://github.com/lorien/test_server/actions/workflows/test.yml)\n[](https://github.com/lorien/test_server/actions/workflows/test.yml)\n[](https://github.com/lorien/test_server/actions/workflows/mypy.yml)\n[](https://coveralls.io/github/lorien/test_server)\n[](http://user-agent.readthedocs.org)\n\nSimple HTTP Server for testing HTTP clients.\n\n\n## Installation\n\nRun `pip install -U test_server`\n\n\n## Usage Example\n\n```python\nfrom unittest import TestCase\nimport unittest\nfrom urllib.request import urlopen\n\nfrom test_server import TestServer, Response, HttpHeaderStorage\n\n\nclass UrllibTestCase(TestCase):\n @classmethod\n def setUpClass(cls):\n cls.server = TestServer()\n cls.server.start()\n\n @classmethod\n def tearDownClass(cls):\n cls.server.stop()\n\n def setUp(self):\n self.server.reset()\n\n def test_get(self):\n self.server.add_response(\n Response(\n data=b\"hello\",\n headers={\"foo\": \"bar\"},\n )\n )\n self.server.add_response(Response(data=b\"zzz\"))\n url = self.server.get_url()\n info = urlopen(url)\n self.assertEqual(b\"hello\", info.read())\n self.assertEqual(\"bar\", info.headers[\"foo\"])\n info = urlopen(url)\n self.assertEqual(b\"zzz\", info.read())\n self.assertTrue(\"bar\" not in info.headers)\n\n\n unittest.main()\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "Server for testing HTTP clients",
"version": "0.0.47",
"project_urls": {
"homepage": "http://github.com/lorien/test_server"
},
"split_keywords": [
"test",
" testing",
" server",
" http server"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "249e5d9b72588ccc8cbbf0ce6c202ae2e771e5e16f8b4b35e8298f6350bacc69",
"md5": "66aeafbb6ccafb28f17d0b3a6aed3b84",
"sha256": "b3f16569d67ffedc244063a5d3e17f1a99208bbe136d78dae92f169909640fbb"
},
"downloads": -1,
"filename": "test_server-0.0.47-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "66aeafbb6ccafb28f17d0b3a6aed3b84",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=2.7",
"size": 12638,
"upload_time": "2025-09-12T22:43:59",
"upload_time_iso_8601": "2025-09-12T22:43:59.905645Z",
"url": "https://files.pythonhosted.org/packages/24/9e/5d9b72588ccc8cbbf0ce6c202ae2e771e5e16f8b4b35e8298f6350bacc69/test_server-0.0.47-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3271b099a867ca78033f3bb6877520c1c1d0aaedb5fdb7192a225ad0bc3967f4",
"md5": "e29cb9fe3645ef719c9c61a58ed5a4ec",
"sha256": "75c22712fa0151a26692940890c449ddf8edade360289cebc7244ab101542d7e"
},
"downloads": -1,
"filename": "test_server-0.0.47.tar.gz",
"has_sig": false,
"md5_digest": "e29cb9fe3645ef719c9c61a58ed5a4ec",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=2.7",
"size": 16969,
"upload_time": "2025-09-12T22:44:01",
"upload_time_iso_8601": "2025-09-12T22:44:01.282788Z",
"url": "https://files.pythonhosted.org/packages/32/71/b099a867ca78033f3bb6877520c1c1d0aaedb5fdb7192a225ad0bc3967f4/test_server-0.0.47.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-12 22:44:01",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "lorien",
"github_project": "test_server",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "test-server"
}