diff options
| author | Szczepan Zalega <szczepan@nitrokey.com> | 2018-02-01 12:08:52 +0100 | 
|---|---|---|
| committer | Szczepan Zalega <szczepan@nitrokey.com> | 2018-02-01 12:10:52 +0100 | 
| commit | 2df8bb7f9da3231cb5a7153401d524feb7409642 (patch) | |
| tree | 5afe04af8bf4eecbfb6d007b1fa77aab85121fa2 | |
| parent | 81b4dc8d6316f0e7b9149dcfd0cbe192a4ae900f (diff) | |
| download | libnitrokey-2df8bb7f9da3231cb5a7153401d524feb7409642.tar.gz libnitrokey-2df8bb7f9da3231cb5a7153401d524feb7409642.tar.bz2  | |
Add test for enabling firmware update
Signed-off-by: Szczepan Zalega <szczepan@nitrokey.com>
| -rw-r--r-- | NK_C_API.h | 5 | ||||
| -rw-r--r-- | unittest/test_storage.py | 9 | 
2 files changed, 12 insertions, 2 deletions
@@ -479,8 +479,9 @@ extern "C" {  	 * When device is in update mode it no longer accepts any HID commands until  	 * firmware is launched (regardless of being updated or not).  	 * Smartcard (through CCID interface) and its all volumes are not visible as well. -	 * Its VID and PID are changed to factory-default to be detected by flashing software. -	 * Result of this command can be reversed by using 'launch' command. +	 * Its VID and PID are changed to factory-default (03eb:2ff1 Atmel Corp.) +	 * to be detected by flashing software. Result of this command can be reversed +	 * by using 'launch' command.  	 * For dfu-programmer it would be: 'dfu-programmer at32uc3a3256s launch'.  	 * Storage only  	 * @param update_password 20 characters diff --git a/unittest/test_storage.py b/unittest/test_storage.py index 0f3e04e..67bbf8b 100644 --- a/unittest/test_storage.py +++ b/unittest/test_storage.py @@ -318,6 +318,15 @@ def test_change_update_password(C):      assert C.NK_change_update_password(DefaultPasswords.UPDATE_TEMP, DefaultPasswords.UPDATE) == DeviceErrorCode.STATUS_OK +@pytest.mark.skip(reason='no reversing method added yet') +@pytest.mark.update +def test_enable_firmware_update(C): +    skip_if_device_version_lower_than({'S': 50}) +    wrong_password = b'aaaaaaaaaaa' +    assert C.NK_enable_firmware_update(wrong_password) == DeviceErrorCode.WRONG_PASSWORD +    assert C.NK_enable_firmware_update(DefaultPasswords.UPDATE) == DeviceErrorCode.STATUS_OK + +  @pytest.mark.other  def test_send_startup(C):      skip_if_device_version_lower_than({'S': 43})  | 
