WebTest的扩展,包含有用的额外功能,包括requests风格的认证。
项目描述
WebTest的扩展,包含有用的额外功能,包括requests风格的认证。
安装
$ pip install -U webtest-plus
用法
import unittest
from myapp import app
from webtest_plus import TestApp
class TestMyApp(unittest.TestCase):
def setUp(self):
self.app = TestApp(app)
def test_protected_endpoint(self):
response = self.app.get("/secret/", expect_errors=True)
assert response.status_code == 401
# Requests-style authentication
response = self.app.get("/secret/", auth=("admin", "passw0rd"))
assert response.status_code == 200
def test_more_secrets(self):
# Another way to authenticate
self.app.authenticate(username="admin", password="passw0rd")
assert self.app.get("/secret/").status_code == 200
self.app.deauthenticate()
assert self.app.get("/secret/", expect_errors=True).status_code == 401
def test_posting_json(self):
# Testing json requests and responses
response = self.app.post_json("/postsecret/", {"secret": "myprecious"},
auth=("admin", "passw0rd"))
assert response.request.content_type == "application/json"
def test_clicking(self):
response = self.app.get("/")
response = response.click("Protected link", auth=("admin", "passw0rd"))
assert response.status_code == 200
def test_token_auth(self):
response = self.app.get('/secret-requires-token/', expect_errors=True)
assert response.status_code == 401
# Authenticate with JWT
response = self.app.get('/secret-requires-token',
auth='yourlongtokenhere', auth_type='jwt')
assert response.status_code == 200
功能
基本HTTP认证
自动跟随重定向
框架无关
需求
Python >= 2.6 或 >= 3.3
许可证
MIT许可。有关更多详细信息,请参阅捆绑的LICENSE文件。
变更日志
1.0.0 (2017-05-17)
修复使用auth时处理utf编码值的处理 (#3)。感谢@biern的捕捉和补丁。
放弃对Python 2.6的支持。
针对Python 3.6进行测试。
0.3.3 (2015-03-17)
实现TestApp.head。
0.3.2 (2014-06-04)
修复导致未绑定局部错误的bug。
0.3.1 (2014-05-31)
修复Python 2上的字符串编码错误。
0.3.0 (2014-05-31)
添加对JSON Web Token认证的支持。
0.2.1 (2013-11-24)
将认证添加到TestResponse.click和TestResponse.clickbutton。
0.2.0 (2013-10-15)
添加对JSON方法(例如app.post_json等)的支持。
0.1.0 (2013-10-06)
第一个版本。
HTTP基本认证正常工作。
项目详情
关闭
webtest-plus-1.0.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2bebad7ac36c895daffa09def88d27c0cd9683e142a84a518b82b264a3a06872 |
|
MD5 | 27337684ba5b79e644bf36c70faf5575 |
|
BLAKE2b-256 | d39fa05220d4c2dca02c1a0db58246aa2639f22665800b8366bd0306069e26a4 |
关闭
webtest_plus-1.0.0-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 70c1eb5092863d2d769984c5aee56d577817a189bee149e622e4ecb68caf3270 |
|
MD5 | fdc8bf81d810e7471415f5af95001905 |
|
BLAKE2b-256 | 7d777c2bd17a367266f2a74f844917107fd2e5d876b219c96557df4ee4dde511 |