VIFIB DESCENTRALIZED CLOUD COMPUTING

SlapOS is a decentralized Cloud Computing technology that can automate the deployment and configuration of applications in a heterogeneous environment.
slapos.libnetworkcache
0.269
29
0
0
4
PASSED
Completed
SLAPOS_TEST_LOG_DIRECTORY=/srv/slapgrid/slappart9/var/log/testnode/bvi-uFcAz47dGX SLAPOS_TEST_SHARED_PART_LIST=/srv/slapgrid/slappart9/srv/shared:/srv/slapgrid/slappart9/srv/testnode/bvi/shared /srv/slapgrid/slappart9/srv/testnode/bvi/soft/65dbbd3d11daa99cf78c9566a0a4798e/bin/python_for_test setup.py test
running test
running egg_info
creating slapos.libnetworkcache.egg-info
writing requirements to slapos.libnetworkcache.egg-info/requires.txt
writing slapos.libnetworkcache.egg-info/PKG-INFO
writing namespace_packages to slapos.libnetworkcache.egg-info/namespace_packages.txt
writing top-level names to slapos.libnetworkcache.egg-info/top_level.txt
writing dependency_links to slapos.libnetworkcache.egg-info/dependency_links.txt
writing entry points to slapos.libnetworkcache.egg-info/entry_points.txt
writing manifest file 'slapos.libnetworkcache.egg-info/SOURCES.txt'
reading manifest file 'slapos.libnetworkcache.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'slapos.libnetworkcache.egg-info/SOURCES.txt'
running build_ext
Generating certificate for '0.660000944206' (key: '/tmp/tmp0.513294150197', certficate: '/tmp/tmp0.251159954538')
WARNING: Testing via this command is deprecated and will be removed in a future version. Users looking for a generic test entry point independent of test runner are encouraged to use tox.
test_generate_cert_exists (slapos.libnetworkcachetests.GenerateSignatureScriptTest) ... ok
test_generate_certificate (slapos.libnetworkcachetests.GenerateSignatureScriptTest) ... Generating a RSA private key
.........+++++
....+++++
writing new private key to '/tmp/tmp0.513294150197'
-----
ok
test_generate_key_exists (slapos.libnetworkcachetests.GenerateSignatureScriptTest) ... ok
test_download_offline (slapos.libnetworkcachetests.OfflineTest) ... ok
test_upload_offline (slapos.libnetworkcachetests.OfflineTest) ... ok
test_DirectoryNotFound_non_trustable_entry (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/7a26def0cf0ef0ad5d5f44ff020fc381606d3e6cbfc82292d73fddd74c8572752f9ee872cfc097cc5a0bfefbf99fa2710d98da8738ec54521b2e1dd9d43a9b3d HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.335057406335 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.335057406335 HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/7a26def0cf0ef0ad5d5f44ff020fc381606d3e6cbfc82292d73fddd74c8572752f9ee872cfc097cc5a0bfefbf99fa2710d98da8738ec54521b2e1dd9d43a9b3d HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.335057406335 HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/7a26def0cf0ef0ad5d5f44ff020fc381606d3e6cbfc82292d73fddd74c8572752f9ee872cfc097cc5a0bfefbf99fa2710d98da8738ec54521b2e1dd9d43a9b3d HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.335057406335 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.335057406335 HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/7a26def0cf0ef0ad5d5f44ff020fc381606d3e6cbfc82292d73fddd74c8572752f9ee872cfc097cc5a0bfefbf99fa2710d98da8738ec54521b2e1dd9d43a9b3d HTTP/1.1" 200 -
ok
test_NetworkcacheClient_handle_bad_certificates (slapos.libnetworkcachetests.OnlineTest) ... INFO:networkcache:Ignored wrong certificate, reason:
[('asn1 encoding routines', 'c2i_ibuf', 'illegal zero content'), ('asn1 encoding routines', 'asn1_template_noexp_d2i', 'nested asn1 error'), ('asn1 encoding routines', 'asn1_template_noexp_d2i', 'nested asn1 error'), ('PEM routines', 'PEM_ASN1_read_bio', 'ASN1 lib')], offending certificate:
-----BEGIN CERTIFICATE-----
MIIB4DCCAUkCADANBgkqhkiG9w0BAQsFADA5MQswCQYDVQQGEwJGUjEZMBcGA1UE
CBMQRGVmYXVsdCBQcm92aW5jZTEPMA0GA1UEChMGTmV4ZWRpMB4XDTExMDkxNTA5
MDAwMloXDTEyMDkxNTA5MDAwMlowOTELMAkGA1UEBhMCRlIxGTAXBgNVBAgTEERl
ZmF1bHQgUHJvdmluY2UxDzANBgNVBAoTBk5leGVkaTCBnzANBgkqhkiG9w0BAQEF
AAOBjQAwgYkCgYEApYZv6OstoqNzxG1KI6iE5U4Ts2Xx9lgLeUGAMyfJLyMmRLhw
boKOyJ9Xke4dncoBAyNPokUR6iWOcnPHtMvNOsBFZ2f7VA28em3+E1JRYdeNUEtX
Z0s3HjcouaNAnPfjFTXHYj4um1wOw2cURSPuU5dpzKBbV+/QCb5DLheynisCAwEA
ATANBgkqhkiG9w0BAQsFAAOBgQBCZLbTVdrw3RZlVVMFezSHrhBYKAukTwZrNmJX
mHqi2tN8tNo6FX+wmxUUAf3e8R2Ymbdbn2bfbPpcKQ2fG7PuKGvhwMG3BlF9paEC
q7jdfWO18Zp/BG7tagz0jmmC4y/8akzHsVlruo2+2du2freE8dK746uoMlXlP93g
QUUGLQ==
-----END CERTIFICATE-----

ok
test_download (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/0c235a36b9eaeea14886dee906a8d9b5e943321c1022ce304845c5a363831a4f805b0b19e677cc0774a1a44093da6bab7886ef699dc9828aae741a8fb345aaa7 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/0c235a36b9eaeea14886dee906a8d9b5e943321c1022ce304845c5a363831a4f805b0b19e677cc0774a1a44093da6bab7886ef699dc9828aae741a8fb345aaa7 HTTP/1.1" 200 -
ok
test_download_not_exists (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/692847b4a5c0c5d55714c27108bc11267ca54ea7b3eb69fba37bd28fcede6c65d2bd360a543631303f3ed9a42eaa084c350255fdf94cd0cb21882d1e6a122390 HTTP/1.1" 404 -
ok
test_select_json_in_json_no_dict (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/3cc1955a9fa79873d3f554ce63b701f73a6c1d7dd3f8b8c17fb2d9fe3ad03186ed715dc8a8c33f64900d2d2c4dbdefbc9f0746a5f7c3de6f0e0570e83ace8829 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.0515700619361 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.0515700619361 HTTP/1.1" 200 -
INFO:networkcache:Bad or missing sha512 in directory response ('This is a string')
ok
test_select_json_no_in_json_response (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/55be33910fa796af382525c0b07a519462e75706869b1e4086fb9f4430c2c98a2259fd331f81d197aaf066f8628d1e118a81dd7a58450d612640a351048cc7a5 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.954617781613 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.954617781613 HTTP/1.1" 200 -
INFO:networkcache:Failed to parse json-in-json response (u'This is not a json.')
ok
test_select_no_entries (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/3bb2bbf514e799bddaceb514d276fa4d3d9ee4d4a6e2f07a7efc619f3fcf0c8ac2b9b9187d3c82d12afdb481bf350550637573bf65a02b631a68e6cf8519a842 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.651505667802 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.651505667802 HTTP/1.1" 200 -
ok
test_select_no_json_response (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/d5f2731c699ae6f893ec8726de9b802f234efd724f1e287a918db3c97f3de6c74b04473952d9089a2c0b4d999150e54a21a6ffe1b251347b11f3bee81f19f112 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.724514575893 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.724514575893 HTTP/1.1" 200 -
INFO:networkcache:Failed to parse json response ('This is not a json.')
ok
test_select_signed_content (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/226e1c0434d6bf675c49550ba4c02d4bf57e0f31c39bcfb8f4ee02b974cd34452cfa48acf6d48c057c036dae52406bb3ffd0682c691e56f88bbfdcbc3f2344d7 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.150564508182 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.150564508182 HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/226e1c0434d6bf675c49550ba4c02d4bf57e0f31c39bcfb8f4ee02b974cd34452cfa48acf6d48c057c036dae52406bb3ffd0682c691e56f88bbfdcbc3f2344d7 HTTP/1.1" 200 -
ok
test_select_signed_content_multiple (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/ea6642008b3959a48b24ca167939f890027a58c4455ee172c27ea45ee57ac6f8ae3aa66d240f8046be68a557e7759a0310199cd1daaa9073142e285d84a338e4 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.979172549466 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/ea6642008b3959a48b24ca167939f890027a58c4455ee172c27ea45ee57ac6f8ae3aa66d240f8046be68a557e7759a0310199cd1daaa9073142e285d84a338e4 HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.979172549466 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.979172549466 HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/ea6642008b3959a48b24ca167939f890027a58c4455ee172c27ea45ee57ac6f8ae3aa66d240f8046be68a557e7759a0310199cd1daaa9073142e285d84a338e4 HTTP/1.1" 200 -
ok
test_select_signed_content_server_hacked (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/7a636f59b6c42be256a5bc793da67cfc0689347fdabb6d7a323b15d6372ab21d7572adef8df9225a1ac9da65c62e5b7e4447cbeb0c5ecb0a0fca9f0d471f2339 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.652154460394 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.652154460394 HTTP/1.1" 200 -
ok
test_select_signed_content_several_certificates (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/6c58c70f199bb58e4c8b7f2cf43137f3c6a355b5d2566ae6b6cab45d4f1519a6bd3793c1da0648081a11eecaa409ca713c0ef42c7e8f8124e9c52b24cf2981ce HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.327460713872 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.327460713872 HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/6c58c70f199bb58e4c8b7f2cf43137f3c6a355b5d2566ae6b6cab45d4f1519a6bd3793c1da0648081a11eecaa409ca713c0ef42c7e8f8124e9c52b24cf2981ce HTTP/1.1" 200 -
ok
test_upload (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/81b4402bad470493fb95278dc1110f1c53d3e6e5b1d1cf167cfd9e0f9d028f73a1ca61bf1f79d657d073981cbc2599289e27e081fb6c02d15bd1f75a83b15730 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
ok
test_upload_shadir (slapos.libnetworkcachetests.OnlineTest)
Check scenario with shadir used ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/f062d778407a6a8118b0506146014a0de7609133b2b9d2623d8c1d62496de0c4e13323e563aad19d4b2b3fc8e79c8eacac6e95e7845eedd4e1c67173392c70a7 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/mykey HTTP/1.1" 201 -
ok
test_upload_shadir_no_filename (slapos.libnetworkcachetests.OnlineTest)
Check scenario with shadir used, but not filename passed ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/cacef823a25d1df9ae9eb709d909bad83da2acfe4b2d7e1b0b633b8b0a76fabb52f674af531292d2f277ff886cd724dcfe42c14698f5d0bf7a003bdfdd45679f HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
INFO:networkcache:file_name and urlmd5 are required for non-generic upload
ok
test_upload_shadir_select (slapos.libnetworkcachetests.OnlineTest)
Check scenario with shadir used ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/a33d66b05ee37f8aea962f095eb85ffac58d2a9615d02f1d02242e005ad14a96b93386e4c8306c01b82cc70508ad1889c54b6fbe926583274b48d4bf5351460d HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.880482526924 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/somekey0.880482526924 HTTP/1.1" 200 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/a33d66b05ee37f8aea962f095eb85ffac58d2a9615d02f1d02242e005ad14a96b93386e4c8306c01b82cc70508ad1889c54b6fbe926583274b48d4bf5351460d HTTP/1.1" 200 -
ok
test_upload_shadir_select_not_exists (slapos.libnetworkcachetests.OnlineTest)
Check scenario with shadir used ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/46242fa10777b51670ba335fc6785060a16b01c7cc7be8e70b10041109894940492658443928638fb67017c496902a850d7ebd2a76c7e7cea6bb9c5f4210c9b9 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "PUT /shadir/somekey0.709907634986 HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shadir/key_another_key0.450262532007 HTTP/1.1" 404 -
INFO:networkcache:ignored unhandled exception at /srv/slapgrid/slappart9/srv/testnode/bvi/inst/test0-0/parts/slapos.libnetworkcache/slapos/libnetworkcachetests.py:403
HTTPError: HTTP Error 404: Not Found
ok
test_upload_twice_same (slapos.libnetworkcachetests.OnlineTest) ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/5e9bb254b1fcc34164ca92367c36dd98183cbf27d9d23b1599c160b5007f55f1d10fe2df6ec05c2d3f5eed7db959e208755b9ccdf02bd7b330b49333265bf034 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/5e9bb254b1fcc34164ca92367c36dd98183cbf27d9d23b1599c160b5007f55f1d10fe2df6ec05c2d3f5eed7db959e208755b9ccdf02bd7b330b49333265bf034 HTTP/1.1" 200 -
ok
test_upload_wrong_return_code (slapos.libnetworkcachetests.OnlineTestPOST200)
Check reaction on HTTP return code different then 201 ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/f655d1e5cf631ca3f5217121c5ee6e1e9ce1cc3d33dcdfac324b4fd6b92011733c1215721aa0f5497cfcbef255f36b9634dc6697a3826cbce3bf9cd189c4acb9 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 200 -
ok
test_upload_to_ssl_auth (slapos.libnetworkcachetests.OnlineTestSSLServer) ... skipped 'Requires standalone test server'
test_upload_to_ssl_auth_no_auth (slapos.libnetworkcachetests.OnlineTestSSLServer) ... skipped 'Requires standalone test server'
test_upload_with_key_with_ssl_auth (slapos.libnetworkcachetests.OnlineTestSSLServer) ... skipped 'Requires standalone test server'
test_upload_with_key_with_ssl_auth_no_dir_auth (slapos.libnetworkcachetests.OnlineTestSSLServer) ... skipped 'Requires standalone test server'
test_upload_wrong_return_sha (slapos.libnetworkcachetests.OnlineTestWrongChecksum)
Check reaction in case of wrong sha returned ... 127.0.0.1 - - [16/Sep/2020 22:11:14] code 404, message Not Found
127.0.0.1 - - [16/Sep/2020 22:11:14] "GET /shacache/e6c79c49e0ea5f0e1ebb88b288e30b41fc589aa751de1c872e657754be06c6d2abde03687799868019d532505590a741cbc46b8c1df7030fd7fc53a683f24428 HTTP/1.1" 404 -
127.0.0.1 - - [16/Sep/2020 22:11:14] "POST /shacache HTTP/1.1" 201 -
ok

----------------------------------------------------------------------
Ran 29 tests in 0.269s

OK (skipped=4)