fix tests
fix tests broken by lack of certs - pytest.ini provides environment variables that load tests/test_certs
This commit is contained in:
parent
d1dffcff0e
commit
422a28cd8d
13 changed files with 134 additions and 28 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
|
@ -11,6 +11,8 @@ __pycache__
|
|||
# Ignore items in test (report, cache, etc), except files starting with test
|
||||
tests/*
|
||||
!tests/test*
|
||||
!tests/test_certs
|
||||
!tests/pytest.ini
|
||||
|
||||
# Ignore logs/data/certs
|
||||
logs/
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ install:
|
|||
- pip install pipenv
|
||||
- pipenv install --dev
|
||||
|
||||
script: pipenv run python -m pytest --cov=./
|
||||
script: pipenv run python -m pytest --cov=./ tests
|
||||
|
||||
after_success:
|
||||
- codecov
|
||||
1
Pipfile
1
Pipfile
|
|
@ -21,6 +21,7 @@ pytest-cov = "*"
|
|||
testfixtures = "*"
|
||||
codecov = "*"
|
||||
autoflake = "*"
|
||||
pytest-env = "*"
|
||||
|
||||
[pipenv]
|
||||
allow_prereleases = true
|
||||
|
|
|
|||
9
Pipfile.lock
generated
9
Pipfile.lock
generated
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"_meta": {
|
||||
"hash": {
|
||||
"sha256": "077603b06fdb2e79c639d5006db173afd97762d435e05e987a3c9b2ba6e6fedf"
|
||||
"sha256": "309c2ca578f67a8663325695e4d283f7e3f604c7cec451bf57e71af7dcdb7294"
|
||||
},
|
||||
"pipfile-spec": 6,
|
||||
"requires": {},
|
||||
|
|
@ -531,6 +531,13 @@
|
|||
"index": "pypi",
|
||||
"version": "==2.7.1"
|
||||
},
|
||||
"pytest-env": {
|
||||
"hashes": [
|
||||
"sha256:7e94956aef7f2764f3c147d216ce066bf6c42948bb9e293169b1b1c880a580c2"
|
||||
],
|
||||
"index": "pypi",
|
||||
"version": "==0.6.2"
|
||||
},
|
||||
"requests": {
|
||||
"hashes": [
|
||||
"sha256:11e007a8a2aa0323f5a921e9e6a2d7e4e67d9877e85773fba9ba6419025cbeb4",
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ test_script:
|
|||
# Note that you must use the environment variable %PYTHON% to refer to
|
||||
# the interpreter you're using - Appveyor does not do anything special
|
||||
# to put the Python version you want to use on PATH.
|
||||
- "pipenv run python -m pytest --cov=./"
|
||||
- "pipenv run python -m pytest --cov=./ tests"
|
||||
|
||||
after_test:
|
||||
- "pipenv run python -m codecov"
|
||||
5
tests/pytest.ini
Normal file
5
tests/pytest.ini
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
[pytest]
|
||||
env =
|
||||
BUMPER_CA=tests/test_certs/ca.crt
|
||||
BUMPER_CERT=tests/test_certs/bumper.crt
|
||||
BUMPER_KEY=tests/test_certs/bumper.key
|
||||
26
tests/test_certs/bumper.crt
Normal file
26
tests/test_certs/bumper.crt
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIEXDCCA0SgAwIBAgICBnowDQYJKoZIhvcNAQELBQAwJTEPMA0GA1UEChMGQnVt
|
||||
cGVyMRIwEAYDVQQDEwlCdW1wZXIgQ0EwHhcNMTkwNjA2MTMwMTE3WhcNMjkwNjA2
|
||||
MTMwMTE3WjApMQ8wDQYDVQQKEwZCdW1wZXIxFjAUBgNVBAMTDUJ1bXBlciBTZXJ2
|
||||
ZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDN94pW5U+IJ70BQRKO
|
||||
5Va2Inuef9AMvTm11pZMStvIskuzCi+fiIXhrPyKXRNbg21MX9eTrbEfc8t1sBKU
|
||||
3rYdZ+JteE+9f4pJjHXEyJSMiPZcmGKC3CbSZyuPgw9asLch6FENrwDcxEV7HbJd
|
||||
oINOjwVqXXPdsSRk2GPuvHjvlwC0h0vt/fErQhlD8U3TIIRDtCfg0BSQUuLXBfJh
|
||||
R1aksl2nwWQTu62akWTxlZ7hQnkk1WldjIqQarjyaY7Uh0L0/kRpnbhmnW085gzc
|
||||
E2bi0YwZ7WPwAwPvEszJr30piPtt71JzPPvPUdIcsTj2HotWyAT1ljdxfaKvWgI3
|
||||
HemrAgMBAAGjggGQMIIBjDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
|
||||
BQUHAwIGCCsGAQUFBwMBMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFMiQCLdfA6g8
|
||||
0xTW2wROUJ42R06hMB8GA1UdIwQYMBaAFKYPByFyuubjTQKzczNsX045VPDbMIIB
|
||||
CwYDVR0RBIIBAjCB/4ILZWNvdmFjcy5jb22CDSouZWNvdmFjcy5jb22CC2Vjb3Vz
|
||||
ZXIubmV0gg0qLmVjb3VzZXIubmV0ggtlY292YWNzLm5ldIINKi5lY292YWNzLm5l
|
||||
dIIIbWFjYm9vazGCCWxvY2FsaG9zdIcEfwAAAYcQAAAAAAAAAAAAAAAAAAAAAYcQ
|
||||
/oAAAAAAAAAAAAAAAAAAAYcQ/oAAAAAAAAAE2n0e5bOcu4cECgABKIcQ/oAAAAAA
|
||||
AABAPHz//ktLWIcQ/oAAAAAAAAD+dglg8MXdSIcQ/oAAAAAAAAALkYrhchk/YIcQ
|
||||
/oAAAAAAAAAY1ZBa52Ist4cECgABCocEfwAAATANBgkqhkiG9w0BAQsFAAOCAQEA
|
||||
QSFKoR3LxCk0N1eaNm44WF7ho57l1XhqQKWojljsJYWoc+LwcWamdyfTJ5M1o07/
|
||||
yIMh16VRFnjr1NPTk9WmLCcy5VN0oP24XAF9VeX5Q2Rkj8j3e7RmRn5jn0BH6sxk
|
||||
X/a9GMuEqSDYi6j9ggi9AEdAM8tyfcEkXEP3pdVW29je8F0u7Hia42zGUjGwjndl
|
||||
2Q8mYBKr0ViG1UV7bKAEJl/WvnOTxpp8ZSTLr6RSleGZ7JvCGpISPzNgeIuPRKOT
|
||||
D77LiGnDdKgJnuwx266tuKV5AN4B3okG/AqbmFtB/LFfNE2769g94pG6jpVZpSum
|
||||
kq2jok6bnc1fdGkO0ou15w==
|
||||
-----END CERTIFICATE-----
|
||||
27
tests/test_certs/bumper.key
Normal file
27
tests/test_certs/bumper.key
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEowIBAAKCAQEAzfeKVuVPiCe9AUESjuVWtiJ7nn/QDL05tdaWTErbyLJLswov
|
||||
n4iF4az8il0TW4NtTF/Xk62xH3PLdbASlN62HWfibXhPvX+KSYx1xMiUjIj2XJhi
|
||||
gtwm0mcrj4MPWrC3IehRDa8A3MRFex2yXaCDTo8Fal1z3bEkZNhj7rx475cAtIdL
|
||||
7f3xK0IZQ/FN0yCEQ7Qn4NAUkFLi1wXyYUdWpLJdp8FkE7utmpFk8ZWe4UJ5JNVp
|
||||
XYyKkGq48mmO1IdC9P5EaZ24Zp1tPOYM3BNm4tGMGe1j8AMD7xLMya99KYj7be9S
|
||||
czz7z1HSHLE49h6LVsgE9ZY3cX2ir1oCNx3pqwIDAQABAoIBADpMVLXf1jEdvlu6
|
||||
hXw44eBPxlnIp6TTcqBLiuMxVSBrhw24Vl57kBmekyS+z5nZi3hQsH42baoPZol7
|
||||
Ouc0WqvcGbUOltN2ZDgJL9RxScq1gbYX09piYgKv/R5z5EaxOkS4syiCXmYej+QX
|
||||
NcNWiZQU212N8hvP5hM9RJvwcPKvcpQIrW5NdcMvhok+kd/abJcIzXhLXEyLcrRJ
|
||||
XZh6cCesUZQnZWPVecM+bc/Wt9U5pbw/PNTTiQSFW6wrjCOXVKA57p/zmeb3EWFd
|
||||
V/rlho+QXLBo9I0DLZKScCfMHgVoguK5Ud7drGiB5rPlgPAv0sFW7fhUd1j7hX7H
|
||||
l4uDrqECgYEA+6xJgJzJp//6eR3wNiSp/4Y8vY+WCtWNCOwhJbw1a8co5Sex0vAk
|
||||
0y3mye+4rOgRbfXhhpPm+y+EnHbXlVk8Ux37OfxHviewCiRbkjRU3uycE60ZFtLr
|
||||
rdqA9FNwutfz3AJqJ/zjVoMneeO7h/GkIAHqxOJHAACV/+lObrSMO0MCgYEA0YIV
|
||||
M032bk+q9zgfd0IY1ZdUhUS2QyQhMY380F+Dym69Xv2FmG+zeynJT5jxrZs3kmcN
|
||||
X9jnscTIMGO70EHq2sI/h9IFfqr/7iTlbwgpYeKEPYqWkmuetiKziVOL/Uf4USPd
|
||||
bQiWRIaQpSZFXUCjVrKL8nGdxhA73iOuQKLmjXkCgYEA2mHxlex2/5Sbn6Ve31yJ
|
||||
NvUgl8yUgeo0a12alcfvAwrabZ44K7W9/pGCBhBBy6fEGAqYG9MTRztAcxSclTfN
|
||||
pMILUZGcH2EI3IQYAZHvY1ElTd2SO7/iSgWkiF4vH7JsJKjjvLcv/c3o31fBToFb
|
||||
zXpcYWOIAHSBtIKaUG3SkUkCgYBiJq4l9f1gWqR+42Uiau3ViusG8FTvCYsfeySY
|
||||
vlawzMadLOqcqqAMMFxmlQGMUq5rQSor4CNTzhv3R5Iik+8iA2TeDY+Tcyspd1Gh
|
||||
fdJdUFChwD6gZBjbvVAdIu3vf/sekE3ZGe/ENMKpDE/syy56nHUh5QaEVvClNlQZ
|
||||
ZffbCQKBgHM2fk3Nlsjk7UCVb8P2hZdX4gx83OJDJPfIfpu/Sf5vPDpmeADI0L30
|
||||
wlMLo+px1bYBqP6sNx0E1iaBces+WqALnR1tIypItVJmZF7eGeWmJ/KJX1FwtYec
|
||||
D0cElOusX7pIo6s3lTw4KMxPOMPYRt75zlboVEi+z4cNOCXjf49B
|
||||
-----END RSA PRIVATE KEY-----
|
||||
19
tests/test_certs/ca.crt
Normal file
19
tests/test_certs/ca.crt
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIDKTCCAhGgAwIBAgICBnUwDQYJKoZIhvcNAQELBQAwJTEPMA0GA1UEChMGQnVt
|
||||
cGVyMRIwEAYDVQQDEwlCdW1wZXIgQ0EwHhcNMTkwNjA2MTMwMTE3WhcNMjkwNjA2
|
||||
MTMwMTE3WjAlMQ8wDQYDVQQKEwZCdW1wZXIxEjAQBgNVBAMTCUJ1bXBlciBDQTCC
|
||||
ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPOE/zW15yRS7jZhlF0K1s8c
|
||||
8tN5tYWVieeGCbmdk89vtTA/doYbvbP0ut95OUSS8YEDP98UdqzoTXpYqNehnk5q
|
||||
VjRyHyXxv2KekhxmTmv+f5OXns8fCgoNlOWAugAlXgk+LGy7non+RLNQ5/vh8E/C
|
||||
IE0lbxelptkOMirboFPP4LIFqHMjERlC6m63LBftVjRCjDzoWtN9XNCquan27fBd
|
||||
5/I3wdEBdDcGA7heGPXKrkzyaiZUncHQD3oqbn05ScUFvSJAs7bz4Qdslkna7zK1
|
||||
AAJoXEBAjWTTau8xp4Fp1qzloMMh0RrqCBgeBlGeL6OcqvMUNRrFNnuDxEXXuTsC
|
||||
AwEAAaNjMGEwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O
|
||||
BBYEFKYPByFyuubjTQKzczNsX045VPDbMB8GA1UdIwQYMBaAFKYPByFyuubjTQKz
|
||||
czNsX045VPDbMA0GCSqGSIb3DQEBCwUAA4IBAQCy0dzBuANBlmL58XtvwvrSxhJr
|
||||
oBscfqeYRvWaUkSAbVX4aH7UsUQWDiLtJZdLsWxMLl0LqbDo+t3I8kpSxOAkJ+Dn
|
||||
zkLAL2ze0ivZEYkLqGXhO+lEK8YcFWJxkgIA/aykmI7suQyv/1x67mTpCVbxMjbI
|
||||
iVv11L2o9Ilu/ZLIlRg5G3vnTz7Eql3JMFUN+hHzEzuNTyl9JkSUIZJLQyqg3u4Y
|
||||
NIGD3nxFiNM1LL17Baz2EjfloAoSyaPGZUzKyRT2BUzHCs2vBNnbTN+XRBHJGZX/
|
||||
VU76YW8l/f6OPzP6XR3noI6Rpm5OpTOrQTTqmYkcb3QwhBD3I4Aqyjs/qxIT
|
||||
-----END CERTIFICATE-----
|
||||
27
tests/test_certs/ca.key
Normal file
27
tests/test_certs/ca.key
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIIEpQIBAAKCAQEA84T/NbXnJFLuNmGUXQrWzxzy03m1hZWJ54YJuZ2Tz2+1MD92
|
||||
hhu9s/S633k5RJLxgQM/3xR2rOhNelio16GeTmpWNHIfJfG/Yp6SHGZOa/5/k5ee
|
||||
zx8KCg2U5YC6ACVeCT4sbLueif5Es1Dn++HwT8IgTSVvF6Wm2Q4yKtugU8/gsgWo
|
||||
cyMRGULqbrcsF+1WNEKMPOha031c0Kq5qfbt8F3n8jfB0QF0NwYDuF4Y9cquTPJq
|
||||
JlSdwdAPeipufTlJxQW9IkCztvPhB2yWSdrvMrUAAmhcQECNZNNq7zGngWnWrOWg
|
||||
wyHRGuoIGB4GUZ4vo5yq8xQ1GsU2e4PERde5OwIDAQABAoIBAQCUveGcjvUWDMmP
|
||||
0d5rTlmSvB3d6fNkGsjW79o00/katSK4y6q7k2o15v/VzBecuRxmLvPucHNkfagF
|
||||
WO4Yd5FYWD87XZGE/bpmpHCehCbWc+a84dmQrWbWaSFPZWc2+5wKjT1ZVOgrZXHV
|
||||
DVAFXCYKsYpFVN4cVYQqBC/EWc3+IkQXcw8POLNwa0ml6ZyFZOcmpik/5o+EbCH2
|
||||
KL+Rqqi1iKnMKdR9HG9yg7PCk140/Zn0Z5ROWpGehFy1xNlh/+DO9Fjbkm+Zj3sU
|
||||
/X3UfRRe1Gtbt8z68fZxLqjJfBMujc+J5kSVMn0MH3vXfCLTSktGaxZmHC5xhk36
|
||||
59QzpQ7hAoGBAPdvFoaD9jJ8bF3nwIJ2uxYAhH/y9IYb4rW4FN1Dz/fBJuIZ8JO9
|
||||
NBDHX1JK1NzgjTE0mqZ0C5UQTNR9FMBVe0iTFDpndL6YcOtU0LIyHeePNGqnVWMp
|
||||
SjjrjtjSO0Uug7YKSuLOrfMtKZyN0t19KDllThoMZlxSoiTL1Jzor0BJAoGBAPvz
|
||||
N4kp8t+ngCl/BoHVEKjhtYe90m0VQflwVfl+myJwIVjtEJliAn2ZZ4uKeTqY1EGE
|
||||
cAKwikpxI3yDVetM/hrivOEcULbk1SwhcmtTaaGCAw6iLm32suPcEROnSQF/FVyj
|
||||
BxyvHyrSG7FRh6f4YcMg3G6W7VxE4IYVgoVdLPVjAoGBAKBOnK1x+aQj8KG2cIcW
|
||||
HYfXtgCfi8UHdA5/wSTJtoex4FtEqxVM09q7EQrj6J1h7pgemMOXE5n0AZL5puQl
|
||||
fcY7ZDOiq4SAh0gwnzWUOsO3iCJBX5TrP2c5VkcrjbL4u+TJLlNbzF9stzTyvdc6
|
||||
K0FkXQGLXxYZg2uLk6hFKKXhAoGAODCN+jE40Vhx5M9HjD0QchmkepmDDIDpLdA3
|
||||
3GS4BH4tcb+tLAgHtis4RI6lasQa0mHO+UqWDPQeje5cgxWwth5LMYk3FxMB1829
|
||||
zuHTdQmh1OmmoS+bxeWWiWONjJ/jC73wIB2OPeaN9oXQU025v+LcRm2ykhlqWX0C
|
||||
luuo0zECgYEA6FI0/2L+3prIQ6ravX2sWNMEFeWMEUg/ld8lHcOZ+amAuLzMvrPO
|
||||
oSVb3JQ+OQbpVsorNBjWqQwbUKTJ3zU9/ievyptCs3G39aQ2wUsDdYKfpkxnfKFe
|
||||
ZgU5YfwB54rgkQc4vCheTnWo/JuhyB5cgvtjtKOdtMKhXfwpX0bFA/w=
|
||||
-----END RSA PRIVATE KEY-----
|
||||
|
|
@ -726,7 +726,6 @@ async def test_lg_logs(aiohttp_client):
|
|||
return_value=async_return(command_getstatus_resp)
|
||||
)
|
||||
|
||||
|
||||
# Test GetGlobalDeviceList
|
||||
postbody = {
|
||||
"auth": {
|
||||
|
|
|
|||
|
|
@ -18,13 +18,6 @@ async def test_helperbot_message():
|
|||
mqtt_address = ("127.0.0.1", 8883)
|
||||
mqtt_server = bumper.MQTTServer(mqtt_address)
|
||||
await mqtt_server.broker_coro()
|
||||
#broker = mqtt_server.broker
|
||||
#mqtt_address = ("127.0.0.1", 8883)
|
||||
#mqtt_server = bumper.MQTTServer(mqtt_address)
|
||||
#broker = hbmqtt.broker.Broker(
|
||||
# mqtt_server.default_config, plugin_namespace="hbmqtt.test.plugins"
|
||||
#)
|
||||
#await broker.start()
|
||||
|
||||
# Test broadcast message
|
||||
mqtt_helperbot = bumper.MQTTHelperBot(mqtt_address)
|
||||
|
|
@ -140,12 +133,12 @@ async def test_helperbot_expire_message():
|
|||
mqtt_address = ("127.0.0.1", 8883)
|
||||
mqtt_server = bumper.MQTTServer(mqtt_address)
|
||||
await mqtt_server.broker_coro()
|
||||
#mqtt_address = ("127.0.0.1", 8883)
|
||||
#mqtt_server = bumper.MQTTServer(mqtt_address)
|
||||
#broker = hbmqtt.broker.Broker(
|
||||
# mqtt_address = ("127.0.0.1", 8883)
|
||||
# mqtt_server = bumper.MQTTServer(mqtt_address)
|
||||
# broker = hbmqtt.broker.Broker(
|
||||
# mqtt_server.default_config, plugin_namespace="hbmqtt.test.plugins"
|
||||
#)
|
||||
#await broker.start()
|
||||
# )
|
||||
# await broker.start()
|
||||
|
||||
# Test broadcast message
|
||||
mqtt_helperbot = bumper.MQTTHelperBot(mqtt_address)
|
||||
|
|
@ -209,12 +202,12 @@ async def test_helperbot_sendcommand():
|
|||
mqtt_address = ("127.0.0.1", 8883)
|
||||
mqtt_server = bumper.MQTTServer(mqtt_address)
|
||||
await mqtt_server.broker_coro()
|
||||
#mqtt_address = ("127.0.0.1", 8883)
|
||||
#mqtt_server = bumper.MQTTServer(mqtt_address)
|
||||
#broker = hbmqtt.broker.Broker(
|
||||
# mqtt_address = ("127.0.0.1", 8883)
|
||||
# mqtt_server = bumper.MQTTServer(mqtt_address)
|
||||
# broker = hbmqtt.broker.Broker(
|
||||
# mqtt_server.default_config, plugin_namespace="hbmqtt.test.plugins"
|
||||
#)
|
||||
#await broker.start()
|
||||
# )
|
||||
# await broker.start()
|
||||
|
||||
mqtt_helperbot = bumper.MQTTHelperBot(mqtt_address)
|
||||
await mqtt_helperbot.start_helper_bot()
|
||||
|
|
|
|||
|
|
@ -5,12 +5,12 @@ Bumper uses pytest for the majority of test cases. Install requirements using `
|
|||
Enter pipenv shell `pipenv shell`
|
||||
|
||||
### Run tests
|
||||
`python -m pytest`
|
||||
`python -m pytest tests`
|
||||
|
||||
### Run tests with coverage
|
||||
`python -m pytest --cov=bumper tests/`
|
||||
`python -m pytest --cov=./ tests`
|
||||
|
||||
### Run tests with coverage html report
|
||||
`python -m pytest --cov=bumper tests/ --cov-report html:tests/report`
|
||||
`python -m pytest --cov=./ tests --cov-report html:tests/report`
|
||||
|
||||
The report will be output into tests/report/index.html for further analysis.
|
||||
Loading…
Add table
Add a link
Reference in a new issue