diff options
author | Szczepan Zalega <szczepan@nitrokey.com> | 2016-10-19 11:03:41 +0200 |
---|---|---|
committer | Szczepan Zalega <szczepan@nitrokey.com> | 2016-10-19 16:55:05 +0200 |
commit | b0a06732852f3cdf203949a117e41c4b6f5f144b (patch) | |
tree | 2c8302f38d969ac3378be14c1f74aa4ec56fcc2d /unittest/test_bindings.py | |
parent | 7d579ca0ca59095596275f7b891dacce54398f1f (diff) | |
download | libnitrokey-b0a06732852f3cdf203949a117e41c4b6f5f144b.tar.gz libnitrokey-b0a06732852f3cdf203949a117e41c4b6f5f144b.tar.bz2 |
Tests: detect device Pro/Storage. skip AES_support command test for Storage
Signed-off-by: Szczepan Zalega <szczepan@nitrokey.com>
Diffstat (limited to 'unittest/test_bindings.py')
-rw-r--r-- | unittest/test_bindings.py | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/unittest/test_bindings.py b/unittest/test_bindings.py index 438e88f..7984848 100644 --- a/unittest/test_bindings.py +++ b/unittest/test_bindings.py @@ -85,6 +85,26 @@ def C(request): return C +def get_firmware_version_from_status(C): + status = gs(C.NK_status()) + status = [s if 'firmware_version' in s else '' for s in status.split('\n')] + firmware = status[0].split(':')[1] + return firmware + + +def is_pro_rtm_07(C): + firmware = get_firmware_version_from_status(C) + return '07 00' in firmware + + +def is_storage(C): + """ + exact firmware storage is sent by other function + """ + firmware = get_firmware_version_from_status(C) + return '01 00' in firmware + + def test_enable_password_safe(C): assert C.NK_lock_device() == DeviceErrorCode.STATUS_OK assert C.NK_enable_password_safe('wrong_password') == DeviceErrorCode.WRONG_PASSWORD @@ -188,8 +208,9 @@ def test_destroy_password_safe(C): assert is_slot_programmed[0] == 0 -@pytest.mark.xfail def test_is_AES_supported(C): + if is_storage(C): + pytest.skip("Storage does not implement this command") assert C.NK_is_AES_supported('wrong password') != 1 assert C.NK_get_last_command_status() == DeviceErrorCode.WRONG_PASSWORD assert C.NK_is_AES_supported(DefaultPasswords.USER) == 1 |