diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 98b720f..f2fb620 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -4,5 +4,5 @@ - [ ] Target branch is `develop` - [ ] Application version has been bumped - diff --git a/.gitignore b/.gitignore index dec3e9b..697bee5 100644 --- a/.gitignore +++ b/.gitignore @@ -29,4 +29,6 @@ doc/html doc/latex .DS_Store -zz-* \ No newline at end of file +zz-* + +output-scan-build/ diff --git a/Makefile b/Makefile index 525f87b..893737a 100644 --- a/Makefile +++ b/Makefile @@ -30,7 +30,7 @@ APPNAME = "Kaspa" # Application version APPVERSION_M = 1 APPVERSION_N = 0 -APPVERSION_P = 2 +APPVERSION_P = 3 APPVERSION = "$(APPVERSION_M).$(APPVERSION_N).$(APPVERSION_P)" ifeq ($(TARGET_NAME),TARGET_NANOS) @@ -53,6 +53,7 @@ ICON_NANOS = icons/nanos_kaspa_logo.gif ICON_NANOX = icons/nanox_kaspa_logo.gif ICON_NANOSP = icons/nanox_kaspa_logo.gif ICON_STAX = icons/stax_kaspa_logo_32px.gif +ICON_FLEX = icons/stax_kaspa_logo_40px.gif # Application allowed derivation curves. # Possibles curves are: secp256k1, secp256r1, ed25519 and bls12381g1 diff --git a/icons/stax_kaspa_logo_40px.gif b/icons/stax_kaspa_logo_40px.gif new file mode 100644 index 0000000..b676467 Binary files /dev/null and b/icons/stax_kaspa_logo_40px.gif differ diff --git a/ledger_app.toml b/ledger_app.toml index b5d4c3a..216d37a 100644 --- a/ledger_app.toml +++ b/ledger_app.toml @@ -1,7 +1,7 @@ [app] build_directory = "./" sdk = "C" -devices = ["nanos", "nanox", "nanos+", "stax"] +devices = ["flex", "nanos", "nanox", "nanos+", "stax"] [tests] unit_directory = "./unit-tests/" diff --git a/src/ui/menu_nbgl.c b/src/ui/menu_nbgl.c index 7115444..e5f7e43 100644 --- a/src/ui/menu_nbgl.c +++ b/src/ui/menu_nbgl.c @@ -30,31 +30,37 @@ #include "../globals.h" #include "menu.h" +// ----------------------------------------------------------- +// ----------------------- HOME PAGE ------------------------- +// ----------------------------------------------------------- + void app_quit(void) { // exit app here os_sched_exit(-1); } -void ui_menu_main(void) { - nbgl_useCaseHome(APPNAME, &C_stax_app_kaspa_64px, NULL, false, ui_menu_about, app_quit); -} - -// 'About' menu +// ----------------------------------------------------------- +// --------------------- SETTINGS MENU ----------------------- +// ----------------------------------------------------------- +#define SETTING_INFO_NB 2 +static const char* const INFO_TYPES[SETTING_INFO_NB] = {"Version", "Developer"}; +static const char* const INFO_CONTENTS[SETTING_INFO_NB] = {APPVERSION, "coderofstuff"}; -static const char* const INFO_TYPES[] = {"Version", "Developer"}; -static const char* const INFO_CONTENTS[] = {APPVERSION, "coderofstuff"}; +static const nbgl_contentInfoList_t infoList = { + .nbInfos = SETTING_INFO_NB, + .infoTypes = INFO_TYPES, + .infoContents = INFO_CONTENTS, +}; -static bool nav_callback(uint8_t page, nbgl_pageContent_t* content) { - UNUSED(page); - content->type = INFOS_LIST; - content->infosList.nbInfos = 2; - content->infosList.infoTypes = (const char**) INFO_TYPES; - content->infosList.infoContents = (const char**) INFO_CONTENTS; - return true; -} - -void ui_menu_about() { - nbgl_useCaseSettings(APPNAME, 0, 1, false, ui_menu_main, nav_callback, NULL); +void ui_menu_main(void) { + nbgl_useCaseHomeAndSettings(APPNAME, + &C_stax_app_kaspa_64px, + NULL, + INIT_HOME_PAGE, + NULL, + &infoList, + NULL, + app_quit); } #endif diff --git a/src/ui/nbgl_display_address.c b/src/ui/nbgl_display_address.c index cd8789f..c3e41e4 100644 --- a/src/ui/nbgl_display_address.c +++ b/src/ui/nbgl_display_address.c @@ -29,18 +29,17 @@ #include "os.h" #include "glyphs.h" #include "nbgl_use_case.h" +#include "io.h" +#include "bip32.h" +#include "format.h" #include "display.h" #include "constants.h" #include "../globals.h" -#include "io.h" #include "../sw.h" #include "../address.h" #include "action/validate.h" -#include "../types.h" #include "../transaction/types.h" -#include "bip32.h" -#include "format.h" #include "../menu.h" static char g_address[ECDSA_ADDRESS_LEN + 6]; @@ -49,37 +48,16 @@ static char g_bip32_path[60]; static nbgl_layoutTagValue_t pairs[1]; static nbgl_layoutTagValueList_t pairList; -static void confirm_address_rejection(void) { - // display a status page and go back to main - validate_pubkey(false); - nbgl_useCaseStatus("Address verification\ncancelled", false, ui_menu_main); -} - -static void confirm_address_approval(void) { - // display a success status page and go back to main - validate_pubkey(true); - nbgl_useCaseStatus("ADDRESS\nVERIFIED", true, ui_menu_main); -} - static void review_choice(bool confirm) { + // Answer, display a status page and go back to main + validate_pubkey(confirm); if (confirm) { - confirm_address_approval(); + nbgl_useCaseReviewStatus(STATUS_TYPE_ADDRESS_VERIFIED, ui_menu_main); } else { - confirm_address_rejection(); + nbgl_useCaseReviewStatus(STATUS_TYPE_ADDRESS_REJECTED, ui_menu_main); } } -static void continue_review(void) { - // Fill pairs - pairs[0].item = "BIP32 Path"; - pairs[0].value = g_bip32_path; - - pairList.nbMaxLinesForValue = 0; - pairList.nbPairs = 1; - pairList.pairs = pairs; - nbgl_useCaseAddressConfirmationExt(g_address, review_choice, &pairList); -} - int ui_display_address() { if (G_context.req_type != CONFIRM_ADDRESS || G_context.state != STATE_NONE) { G_context.state = STATE_NONE; @@ -101,12 +79,20 @@ int ui_display_address() { } snprintf(g_address, sizeof(g_address), "%.*s", sizeof(address), address); - nbgl_useCaseReviewStart(&C_stax_app_kaspa_64px, - "Verify KAS address", - NULL, - "Cancel", - continue_review, - confirm_address_rejection); + // Fill pairs + pairs[0].item = "BIP32 Path"; + pairs[0].value = g_bip32_path; + + pairList.nbMaxLinesForValue = 0; + pairList.nbPairs = 1; + pairList.pairs = pairs; + + nbgl_useCaseAddressReview(g_address, + &pairList, + &C_stax_app_kaspa_64px, + "Verify KAS address", + NULL, + review_choice); return 0; } diff --git a/src/ui/nbgl_display_message.c b/src/ui/nbgl_display_message.c index 8eb0fcf..2b6c63f 100644 --- a/src/ui/nbgl_display_message.c +++ b/src/ui/nbgl_display_message.c @@ -21,6 +21,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. *****************************************************************************/ + #ifdef HAVE_NBGL #include // bool @@ -28,20 +29,20 @@ #include "os.h" #include "glyphs.h" +#include "os_io_seproxyhal.h" #include "nbgl_use_case.h" +#include "io.h" +#include "bip32.h" +#include "format.h" #include "display.h" #include "constants.h" #include "../globals.h" -#include "io.h" #include "../sw.h" #include "../address.h" #include "action/validate.h" -#include "../types.h" #include "../transaction/types.h" -#include "bip32.h" #include "../common/format_local.h" -#include "format.h" #include "../menu.h" static char g_message[MAX_MESSAGE_LEN]; @@ -49,57 +50,16 @@ static char g_bip32_path[60]; static nbgl_layoutTagValue_t pairs[2]; static nbgl_layoutTagValueList_t pairList; -static nbgl_pageInfoLongPress_t infoLongPress; - -static void confirm_message_rejection(void) { - // display a status page and go back to main - validate_message(false); - nbgl_useCaseStatus("Message signing\ncancelled", false, ui_menu_main); -} - -static void ask_message_rejection_confirmation(void) { - // display a choice to confirm/cancel rejection - nbgl_useCaseConfirm("Reject message?", - NULL, - "Yes, Reject", - "Go back to message", - confirm_message_rejection); -} - -static void confirm_message_approval(void) { - // display a success status page and go back to main - validate_message(true); - nbgl_useCaseStatus("MESSAGE\nSIGNED", true, ui_menu_main); -} static void review_message_choice(bool confirm) { + validate_message(confirm); if (confirm) { - confirm_message_approval(); + nbgl_useCaseReviewStatus(STATUS_TYPE_MESSAGE_SIGNED, ui_menu_main); } else { - ask_message_rejection_confirmation(); + nbgl_useCaseReviewStatus(STATUS_TYPE_MESSAGE_REJECTED, ui_menu_main); } } -static void continue_message_review(void) { - // Fill pairs - pairs[0].item = "BIP32 Path"; - pairs[0].value = g_bip32_path; - pairs[1].item = "Message"; - pairs[1].value = g_message; - - // Setup list - pairList.nbMaxLinesForValue = 0; - pairList.nbPairs = 2; - pairList.pairs = pairs; - - // Info long press - infoLongPress.icon = &C_stax_app_kaspa_64px; - infoLongPress.text = "Sign message?"; - infoLongPress.longPressText = "Hold to sign"; - - nbgl_useCaseStaticReview(&pairList, &infoLongPress, "Reject message", review_message_choice); -} - int ui_display_message() { if (G_context.req_type != CONFIRM_MESSAGE || G_context.state != STATE_NONE) { G_context.state = STATE_NONE; @@ -120,12 +80,25 @@ int ui_display_message() { (char *) G_context.msg_info.message, G_context.msg_info.message_len); - nbgl_useCaseReviewStart(&C_stax_app_kaspa_64px, - "Review Message", - NULL, - "Reject message", - continue_message_review, - ask_message_rejection_confirmation); + // Fill pairs + pairs[0].item = "BIP32 Path"; + pairs[0].value = g_bip32_path; + pairs[1].item = "Message"; + pairs[1].value = g_message; + + // Setup list + pairList.nbMaxLinesForValue = 0; + pairList.nbPairs = 2; + pairList.pairs = pairs; + + // Start review flow + nbgl_useCaseReview(TYPE_MESSAGE, + &pairList, + &C_stax_app_kaspa_64px, + "Review message", + NULL, + "Sign message?", + review_message_choice); return 0; } diff --git a/src/ui/nbgl_display_transaction.c b/src/ui/nbgl_display_transaction.c index 450dd4b..23c6c53 100755 --- a/src/ui/nbgl_display_transaction.c +++ b/src/ui/nbgl_display_transaction.c @@ -21,6 +21,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. *****************************************************************************/ + #ifdef HAVE_NBGL #include // bool @@ -30,18 +31,18 @@ #include "glyphs.h" #include "os_io_seproxyhal.h" #include "nbgl_use_case.h" +#include "io.h" +#include "bip32.h" +#include "format.h" #include "display.h" #include "constants.h" #include "../globals.h" -#include "io.h" #include "../sw.h" #include "../address.h" #include "action/validate.h" #include "../transaction/types.h" #include "../transaction/utils.h" -#include "bip32.h" -#include "format.h" #include "../menu.h" // Buffer where the transaction amount string is written @@ -52,56 +53,18 @@ static char g_fees[30]; static nbgl_layoutTagValue_t pairs[3]; static nbgl_layoutTagValueList_t pairList; -static nbgl_pageInfoLongPress_t infoLongPress; - -static void confirm_transaction_rejection(void) { - // display a status page and go back to main - validate_transaction(false); - nbgl_useCaseStatus("Transaction rejected", false, ui_menu_main); -} - -static void ask_transaction_rejection_confirmation(void) { - // display a choice to confirm/cancel rejection - nbgl_useCaseConfirm("Reject transaction?", - NULL, - "Yes, Reject", - "Go back to transaction", - confirm_transaction_rejection); -} // called when long press button on 3rd page is long-touched or when reject footer is touched static void review_choice(bool confirm) { + // Answer, display a status page and go back to main + validate_transaction(confirm); if (confirm) { - // display a status page and go back to main - validate_transaction(true); - nbgl_useCaseStatus("TRANSACTION\nSIGNED", true, ui_menu_main); + nbgl_useCaseReviewStatus(STATUS_TYPE_TRANSACTION_SIGNED, ui_menu_main); } else { - ask_transaction_rejection_confirmation(); + nbgl_useCaseReviewStatus(STATUS_TYPE_TRANSACTION_REJECTED, ui_menu_main); } } -static void review_continue(void) { - // Setup data to display - pairs[0].item = "Amount"; - pairs[0].value = g_amount; - pairs[1].item = "To"; - pairs[1].value = g_address; - pairs[2].item = "Fees"; - pairs[2].value = g_fees; - - // Setup list - pairList.nbMaxLinesForValue = 0; - pairList.nbPairs = 3; - pairList.pairs = pairs; - - // Info long press - infoLongPress.icon = &C_stax_app_kaspa_64px; - infoLongPress.text = "Sign transaction\nto send KAS"; - infoLongPress.longPressText = "Hold to sign"; - - nbgl_useCaseStaticReview(&pairList, &infoLongPress, "Reject transaction", review_choice); -} - // Public function to start the transaction review // - Check if the app is in the right state for transaction review // - Format the amount and address strings in g_amount, g-fees and g_address buffers @@ -122,8 +85,8 @@ int ui_display_transaction() { return io_send_sw(SW_DISPLAY_AMOUNT_FAIL); } snprintf(g_amount, sizeof(g_amount), "KAS %.*s", sizeof(amount), amount); - memset(g_fees, 0, sizeof(g_fees)); + char fees[30] = {0}; if (!format_fpu64_trimmed(fees, sizeof(fees), @@ -135,7 +98,6 @@ int ui_display_transaction() { return io_send_sw(SW_DISPLAY_AMOUNT_FAIL); } snprintf(g_fees, sizeof(g_fees), "KAS %.*s", sizeof(fees), fees); - memset(g_address, 0, sizeof(g_address)); uint8_t address[ECDSA_ADDRESS_LEN] = {0}; @@ -147,13 +109,27 @@ int ui_display_transaction() { sizeof(G_context.tx_info.transaction.tx_outputs[0].script_public_key)); snprintf(g_address, sizeof(g_address), "%.*s", ECDSA_ADDRESS_LEN, address); - // Start review - nbgl_useCaseReviewStart(&C_stax_app_kaspa_64px, - "Review transaction\nto send KAS", - NULL, - "Reject transaction", - review_continue, - ask_transaction_rejection_confirmation); + // Setup data to display + pairs[0].item = "Amount"; + pairs[0].value = g_amount; + pairs[1].item = "To"; + pairs[1].value = g_address; + pairs[2].item = "Fees"; + pairs[2].value = g_fees; + + // Setup list + pairList.nbMaxLinesForValue = 0; + pairList.nbPairs = 3; + pairList.pairs = pairs; + + // Start review flow + nbgl_useCaseReview(TYPE_TRANSACTION, + &pairList, + &C_stax_app_kaspa_64px, + "Review transaction\nto send KAS", + NULL, + "Sign transaction\nto send KAS", + review_choice); return 0; } diff --git a/tests/application_client/kaspa_transaction.py b/tests/application_client/kaspa_transaction.py index 78bc002..3df4b65 100644 --- a/tests/application_client/kaspa_transaction.py +++ b/tests/application_client/kaspa_transaction.py @@ -11,6 +11,7 @@ class TransactionError(Exception): pass class TransactionInput: + # pylint: disable=too-many-positional-arguments def __init__(self, value: int, tx_id: str, @@ -77,6 +78,7 @@ def from_bytes(cls, hexa: Union[bytes, BytesIO]): return cls(value=value, script_public_key=script_public_key) class Transaction: + # pylint: disable=too-many-positional-arguments def __init__(self, version: int, inputs: list[TransactionInput], diff --git a/tests/snapshots/flex/test_app_mainmenu/00000.png b/tests/snapshots/flex/test_app_mainmenu/00000.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_app_mainmenu/00000.png differ diff --git a/tests/snapshots/flex/test_app_mainmenu/00001.png b/tests/snapshots/flex/test_app_mainmenu/00001.png new file mode 100644 index 0000000..9bc0d7e Binary files /dev/null and b/tests/snapshots/flex/test_app_mainmenu/00001.png differ diff --git a/tests/snapshots/flex/test_app_mainmenu/00002.png b/tests/snapshots/flex/test_app_mainmenu/00002.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_app_mainmenu/00002.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_accepted/00000.png b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00000.png new file mode 100644 index 0000000..59fef6b Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00000.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_accepted/00001.png b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00001.png new file mode 100644 index 0000000..c5d7b01 Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00001.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_accepted/00002.png b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00002.png new file mode 100644 index 0000000..cf4307a Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00002.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_accepted/00003.png b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00003.png new file mode 100644 index 0000000..4321e60 Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00003.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_accepted/00004.png b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_accepted/00004.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_refused/00000.png b/tests/snapshots/flex/test_get_public_key_confirm_refused/00000.png new file mode 100644 index 0000000..59fef6b Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_refused/00000.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_refused/00001.png b/tests/snapshots/flex/test_get_public_key_confirm_refused/00001.png new file mode 100644 index 0000000..c5d7b01 Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_refused/00001.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_refused/00002.png b/tests/snapshots/flex/test_get_public_key_confirm_refused/00002.png new file mode 100644 index 0000000..cf4307a Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_refused/00002.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_refused/00003.png b/tests/snapshots/flex/test_get_public_key_confirm_refused/00003.png new file mode 100644 index 0000000..45c08d4 Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_refused/00003.png differ diff --git a/tests/snapshots/flex/test_get_public_key_confirm_refused/00004.png b/tests/snapshots/flex/test_get_public_key_confirm_refused/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_get_public_key_confirm_refused/00004.png differ diff --git a/tests/snapshots/flex/test_sign_message_kanji/00000.png b/tests/snapshots/flex/test_sign_message_kanji/00000.png new file mode 100644 index 0000000..208070e Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_kanji/00000.png differ diff --git a/tests/snapshots/flex/test_sign_message_kanji/00001.png b/tests/snapshots/flex/test_sign_message_kanji/00001.png new file mode 100644 index 0000000..1e010e0 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_kanji/00001.png differ diff --git a/tests/snapshots/flex/test_sign_message_kanji/00002.png b/tests/snapshots/flex/test_sign_message_kanji/00002.png new file mode 100644 index 0000000..bd42960 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_kanji/00002.png differ diff --git a/tests/snapshots/flex/test_sign_message_kanji/00003.png b/tests/snapshots/flex/test_sign_message_kanji/00003.png new file mode 100644 index 0000000..8b981d4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_kanji/00003.png differ diff --git a/tests/snapshots/flex/test_sign_message_kanji/00004.png b/tests/snapshots/flex/test_sign_message_kanji/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_kanji/00004.png differ diff --git a/tests/snapshots/flex/test_sign_message_refused/00000.png b/tests/snapshots/flex/test_sign_message_refused/00000.png new file mode 100644 index 0000000..208070e Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_refused/00000.png differ diff --git a/tests/snapshots/flex/test_sign_message_refused/00001.png b/tests/snapshots/flex/test_sign_message_refused/00001.png new file mode 100644 index 0000000..ae65f1b Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_refused/00001.png differ diff --git a/tests/snapshots/flex/test_sign_message_refused/00002.png b/tests/snapshots/flex/test_sign_message_refused/00002.png new file mode 100644 index 0000000..bd42960 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_refused/00002.png differ diff --git a/tests/snapshots/flex/test_sign_message_refused/00003.png b/tests/snapshots/flex/test_sign_message_refused/00003.png new file mode 100644 index 0000000..2b40ba7 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_refused/00003.png differ diff --git a/tests/snapshots/flex/test_sign_message_refused/00004.png b/tests/snapshots/flex/test_sign_message_refused/00004.png new file mode 100644 index 0000000..2d8bbe3 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_refused/00004.png differ diff --git a/tests/snapshots/flex/test_sign_message_refused/00005.png b/tests/snapshots/flex/test_sign_message_refused/00005.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_refused/00005.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple/00000.png b/tests/snapshots/flex/test_sign_message_simple/00000.png new file mode 100644 index 0000000..208070e Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple/00000.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple/00001.png b/tests/snapshots/flex/test_sign_message_simple/00001.png new file mode 100644 index 0000000..f394bc4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple/00001.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple/00002.png b/tests/snapshots/flex/test_sign_message_simple/00002.png new file mode 100644 index 0000000..bd42960 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple/00002.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple/00003.png b/tests/snapshots/flex/test_sign_message_simple/00003.png new file mode 100644 index 0000000..8b981d4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple/00003.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple/00004.png b/tests/snapshots/flex/test_sign_message_simple/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple/00004.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple_different_account/00000.png b/tests/snapshots/flex/test_sign_message_simple_different_account/00000.png new file mode 100644 index 0000000..208070e Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple_different_account/00000.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple_different_account/00001.png b/tests/snapshots/flex/test_sign_message_simple_different_account/00001.png new file mode 100644 index 0000000..6039572 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple_different_account/00001.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple_different_account/00002.png b/tests/snapshots/flex/test_sign_message_simple_different_account/00002.png new file mode 100644 index 0000000..bd42960 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple_different_account/00002.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple_different_account/00003.png b/tests/snapshots/flex/test_sign_message_simple_different_account/00003.png new file mode 100644 index 0000000..8b981d4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple_different_account/00003.png differ diff --git a/tests/snapshots/flex/test_sign_message_simple_different_account/00004.png b/tests/snapshots/flex/test_sign_message_simple_different_account/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_message_simple_different_account/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_different_account/00000.png b/tests/snapshots/flex/test_sign_tx_different_account/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_different_account/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_different_account/00001.png b/tests/snapshots/flex/test_sign_tx_different_account/00001.png new file mode 100644 index 0000000..6e54a8a Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_different_account/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_different_account/00002.png b/tests/snapshots/flex/test_sign_tx_different_account/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_different_account/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_different_account/00003.png b/tests/snapshots/flex/test_sign_tx_different_account/00003.png new file mode 100644 index 0000000..be51a9d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_different_account/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_different_account/00004.png b/tests/snapshots/flex/test_sign_tx_different_account/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_different_account/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_max/00000.png b/tests/snapshots/flex/test_sign_tx_max/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_max/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_max/00001.png b/tests/snapshots/flex/test_sign_tx_max/00001.png new file mode 100644 index 0000000..1a214ab Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_max/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_max/00002.png b/tests/snapshots/flex/test_sign_tx_max/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_max/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_max/00003.png b/tests/snapshots/flex/test_sign_tx_max/00003.png new file mode 100644 index 0000000..be51a9d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_max/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_max/00004.png b/tests/snapshots/flex/test_sign_tx_max/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_max/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_p2sh/00000.png b/tests/snapshots/flex/test_sign_tx_p2sh/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_p2sh/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_p2sh/00001.png b/tests/snapshots/flex/test_sign_tx_p2sh/00001.png new file mode 100644 index 0000000..9246e7e Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_p2sh/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_p2sh/00002.png b/tests/snapshots/flex/test_sign_tx_p2sh/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_p2sh/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_p2sh/00003.png b/tests/snapshots/flex/test_sign_tx_p2sh/00003.png new file mode 100644 index 0000000..be51a9d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_p2sh/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_p2sh/00004.png b/tests/snapshots/flex/test_sign_tx_p2sh/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_p2sh/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_refused/00000.png b/tests/snapshots/flex/test_sign_tx_refused/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_refused/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_refused/00001.png b/tests/snapshots/flex/test_sign_tx_refused/00001.png new file mode 100644 index 0000000..6e54a8a Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_refused/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_refused/00002.png b/tests/snapshots/flex/test_sign_tx_refused/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_refused/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_refused/00003.png b/tests/snapshots/flex/test_sign_tx_refused/00003.png new file mode 100644 index 0000000..6a11e11 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_refused/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_refused/00004.png b/tests/snapshots/flex/test_sign_tx_refused/00004.png new file mode 100644 index 0000000..6bbdf2f Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_refused/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_refused/00005.png b/tests/snapshots/flex/test_sign_tx_refused/00005.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_refused/00005.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple/00000.png b/tests/snapshots/flex/test_sign_tx_simple/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple/00001.png b/tests/snapshots/flex/test_sign_tx_simple/00001.png new file mode 100644 index 0000000..6e54a8a Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple/00002.png b/tests/snapshots/flex/test_sign_tx_simple/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple/00003.png b/tests/snapshots/flex/test_sign_tx_simple/00003.png new file mode 100644 index 0000000..be51a9d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple/00004.png b/tests/snapshots/flex/test_sign_tx_simple/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00000.png b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00001.png b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00001.png new file mode 100644 index 0000000..7e510e2 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00002.png b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00003.png b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00003.png new file mode 100644 index 0000000..be51a9d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00004.png b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_change_idx1/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00000.png b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00001.png b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00001.png new file mode 100644 index 0000000..16fcad7 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00002.png b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00003.png b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00003.png new file mode 100644 index 0000000..be51a9d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00004.png b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_ecdsa/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendint/00000.png b/tests/snapshots/flex/test_sign_tx_simple_sendint/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendint/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendint/00001.png b/tests/snapshots/flex/test_sign_tx_simple_sendint/00001.png new file mode 100644 index 0000000..a47679b Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendint/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendint/00002.png b/tests/snapshots/flex/test_sign_tx_simple_sendint/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendint/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendint/00003.png b/tests/snapshots/flex/test_sign_tx_simple_sendint/00003.png new file mode 100644 index 0000000..be51a9d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendint/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendint/00004.png b/tests/snapshots/flex/test_sign_tx_simple_sendint/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendint/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00000.png b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00001.png b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00001.png new file mode 100644 index 0000000..24f2f3d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00002.png b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00003.png b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00003.png new file mode 100644 index 0000000..be51a9d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00004.png b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_simple_sendmaxu64/00004.png differ diff --git a/tests/snapshots/flex/test_sign_tx_with_change/00000.png b/tests/snapshots/flex/test_sign_tx_with_change/00000.png new file mode 100644 index 0000000..95da7a1 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_with_change/00000.png differ diff --git a/tests/snapshots/flex/test_sign_tx_with_change/00001.png b/tests/snapshots/flex/test_sign_tx_with_change/00001.png new file mode 100644 index 0000000..27e9d54 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_with_change/00001.png differ diff --git a/tests/snapshots/flex/test_sign_tx_with_change/00002.png b/tests/snapshots/flex/test_sign_tx_with_change/00002.png new file mode 100644 index 0000000..7a10c9c Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_with_change/00002.png differ diff --git a/tests/snapshots/flex/test_sign_tx_with_change/00003.png b/tests/snapshots/flex/test_sign_tx_with_change/00003.png new file mode 100644 index 0000000..be51a9d Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_with_change/00003.png differ diff --git a/tests/snapshots/flex/test_sign_tx_with_change/00004.png b/tests/snapshots/flex/test_sign_tx_with_change/00004.png new file mode 100644 index 0000000..26a62a4 Binary files /dev/null and b/tests/snapshots/flex/test_sign_tx_with_change/00004.png differ diff --git a/tests/snapshots/nanos/test_app_mainmenu/00001.png b/tests/snapshots/nanos/test_app_mainmenu/00001.png index 5330756..0dd04ed 100644 Binary files a/tests/snapshots/nanos/test_app_mainmenu/00001.png and b/tests/snapshots/nanos/test_app_mainmenu/00001.png differ diff --git a/tests/snapshots/nanos/test_sign_tx_refused/00010.png b/tests/snapshots/nanos/test_sign_tx_refused/00010.png deleted file mode 100644 index 277becc..0000000 Binary files a/tests/snapshots/nanos/test_sign_tx_refused/00010.png and /dev/null differ diff --git a/tests/snapshots/nanosp/test_app_mainmenu/00000.png b/tests/snapshots/nanosp/test_app_mainmenu/00000.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_app_mainmenu/00000.png and b/tests/snapshots/nanosp/test_app_mainmenu/00000.png differ diff --git a/tests/snapshots/nanosp/test_app_mainmenu/00001.png b/tests/snapshots/nanosp/test_app_mainmenu/00001.png index 104e14f..ea02a72 100644 Binary files a/tests/snapshots/nanosp/test_app_mainmenu/00001.png and b/tests/snapshots/nanosp/test_app_mainmenu/00001.png differ diff --git a/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00002.png b/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00002.png index 9145051..f6fbd41 100644 Binary files a/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00002.png and b/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00002.png differ diff --git a/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00003.png b/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00003.png index 88d6041..1da459c 100644 Binary files a/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00003.png and b/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00003.png differ diff --git a/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00005.png b/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00005.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00005.png and b/tests/snapshots/nanosp/test_get_public_key_confirm_accepted/00005.png differ diff --git a/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00002.png b/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00002.png index 9145051..f6fbd41 100644 Binary files a/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00002.png and b/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00002.png differ diff --git a/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00003.png b/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00003.png index 88d6041..1da459c 100644 Binary files a/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00003.png and b/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00003.png differ diff --git a/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00005.png b/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00005.png index e90cd9d..c4c84cf 100644 Binary files a/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00005.png and b/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00005.png differ diff --git a/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00006.png b/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00006.png and b/tests/snapshots/nanosp/test_get_public_key_confirm_refused/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_message_kanji/00005.png b/tests/snapshots/nanosp/test_sign_message_kanji/00005.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_message_kanji/00005.png and b/tests/snapshots/nanosp/test_sign_message_kanji/00005.png differ diff --git a/tests/snapshots/nanosp/test_sign_message_refused/00004.png b/tests/snapshots/nanosp/test_sign_message_refused/00004.png index e90cd9d..c4c84cf 100644 Binary files a/tests/snapshots/nanosp/test_sign_message_refused/00004.png and b/tests/snapshots/nanosp/test_sign_message_refused/00004.png differ diff --git a/tests/snapshots/nanosp/test_sign_message_refused/00005.png b/tests/snapshots/nanosp/test_sign_message_refused/00005.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_message_refused/00005.png and b/tests/snapshots/nanosp/test_sign_message_refused/00005.png differ diff --git a/tests/snapshots/nanosp/test_sign_message_simple/00004.png b/tests/snapshots/nanosp/test_sign_message_simple/00004.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_message_simple/00004.png and b/tests/snapshots/nanosp/test_sign_message_simple/00004.png differ diff --git a/tests/snapshots/nanosp/test_sign_message_simple_different_account/00004.png b/tests/snapshots/nanosp/test_sign_message_simple_different_account/00004.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_message_simple_different_account/00004.png and b/tests/snapshots/nanosp/test_sign_message_simple_different_account/00004.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_different_account/00001.png b/tests/snapshots/nanosp/test_sign_tx_different_account/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_different_account/00001.png and b/tests/snapshots/nanosp/test_sign_tx_different_account/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_different_account/00002.png b/tests/snapshots/nanosp/test_sign_tx_different_account/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_different_account/00002.png and b/tests/snapshots/nanosp/test_sign_tx_different_account/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_different_account/00006.png b/tests/snapshots/nanosp/test_sign_tx_different_account/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_different_account/00006.png and b/tests/snapshots/nanosp/test_sign_tx_different_account/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_max/00001.png b/tests/snapshots/nanosp/test_sign_tx_max/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_max/00001.png and b/tests/snapshots/nanosp/test_sign_tx_max/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_max/00002.png b/tests/snapshots/nanosp/test_sign_tx_max/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_max/00002.png and b/tests/snapshots/nanosp/test_sign_tx_max/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_max/00006.png b/tests/snapshots/nanosp/test_sign_tx_max/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_max/00006.png and b/tests/snapshots/nanosp/test_sign_tx_max/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_p2sh/00001.png b/tests/snapshots/nanosp/test_sign_tx_p2sh/00001.png index c08ef70..52c8036 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_p2sh/00001.png and b/tests/snapshots/nanosp/test_sign_tx_p2sh/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_p2sh/00002.png b/tests/snapshots/nanosp/test_sign_tx_p2sh/00002.png index 294633e..17aa5fd 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_p2sh/00002.png and b/tests/snapshots/nanosp/test_sign_tx_p2sh/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_p2sh/00006.png b/tests/snapshots/nanosp/test_sign_tx_p2sh/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_p2sh/00006.png and b/tests/snapshots/nanosp/test_sign_tx_p2sh/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_refused/00001.png b/tests/snapshots/nanosp/test_sign_tx_refused/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_refused/00001.png and b/tests/snapshots/nanosp/test_sign_tx_refused/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_refused/00002.png b/tests/snapshots/nanosp/test_sign_tx_refused/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_refused/00002.png and b/tests/snapshots/nanosp/test_sign_tx_refused/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_refused/00006.png b/tests/snapshots/nanosp/test_sign_tx_refused/00006.png index e90cd9d..c4c84cf 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_refused/00006.png and b/tests/snapshots/nanosp/test_sign_tx_refused/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_refused/00007.png b/tests/snapshots/nanosp/test_sign_tx_refused/00007.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_refused/00007.png and b/tests/snapshots/nanosp/test_sign_tx_refused/00007.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple/00001.png b/tests/snapshots/nanosp/test_sign_tx_simple/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple/00001.png and b/tests/snapshots/nanosp/test_sign_tx_simple/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple/00002.png b/tests/snapshots/nanosp/test_sign_tx_simple/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple/00002.png and b/tests/snapshots/nanosp/test_sign_tx_simple/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple/00006.png b/tests/snapshots/nanosp/test_sign_tx_simple/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple/00006.png and b/tests/snapshots/nanosp/test_sign_tx_simple/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00001.png b/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00001.png index bf75c98..81ff98e 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00001.png and b/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00002.png b/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00002.png index 6b4439e..ef35add 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00002.png and b/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00006.png b/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00006.png and b/tests/snapshots/nanosp/test_sign_tx_simple_change_idx1/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00001.png b/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00001.png index fe57e7f..f7a5d5a 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00001.png and b/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00002.png b/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00002.png index 909f2d7..8c13c47 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00002.png and b/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00006.png b/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00006.png and b/tests/snapshots/nanosp/test_sign_tx_simple_ecdsa/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00001.png b/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00001.png and b/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00002.png b/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00002.png and b/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00006.png b/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00006.png and b/tests/snapshots/nanosp/test_sign_tx_simple_sendint/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00001.png b/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00001.png and b/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00002.png b/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00002.png and b/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00006.png b/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00006.png and b/tests/snapshots/nanosp/test_sign_tx_simple_sendmaxu64/00006.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_with_change/00001.png b/tests/snapshots/nanosp/test_sign_tx_with_change/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_with_change/00001.png and b/tests/snapshots/nanosp/test_sign_tx_with_change/00001.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_with_change/00002.png b/tests/snapshots/nanosp/test_sign_tx_with_change/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_with_change/00002.png and b/tests/snapshots/nanosp/test_sign_tx_with_change/00002.png differ diff --git a/tests/snapshots/nanosp/test_sign_tx_with_change/00006.png b/tests/snapshots/nanosp/test_sign_tx_with_change/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanosp/test_sign_tx_with_change/00006.png and b/tests/snapshots/nanosp/test_sign_tx_with_change/00006.png differ diff --git a/tests/snapshots/nanox/test_app_mainmenu/00000.png b/tests/snapshots/nanox/test_app_mainmenu/00000.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_app_mainmenu/00000.png and b/tests/snapshots/nanox/test_app_mainmenu/00000.png differ diff --git a/tests/snapshots/nanox/test_app_mainmenu/00001.png b/tests/snapshots/nanox/test_app_mainmenu/00001.png index 104e14f..ea02a72 100644 Binary files a/tests/snapshots/nanox/test_app_mainmenu/00001.png and b/tests/snapshots/nanox/test_app_mainmenu/00001.png differ diff --git a/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00002.png b/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00002.png index 9145051..f6fbd41 100644 Binary files a/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00002.png and b/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00002.png differ diff --git a/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00003.png b/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00003.png index 88d6041..1da459c 100644 Binary files a/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00003.png and b/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00003.png differ diff --git a/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00005.png b/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00005.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00005.png and b/tests/snapshots/nanox/test_get_public_key_confirm_accepted/00005.png differ diff --git a/tests/snapshots/nanox/test_get_public_key_confirm_refused/00002.png b/tests/snapshots/nanox/test_get_public_key_confirm_refused/00002.png index 9145051..f6fbd41 100644 Binary files a/tests/snapshots/nanox/test_get_public_key_confirm_refused/00002.png and b/tests/snapshots/nanox/test_get_public_key_confirm_refused/00002.png differ diff --git a/tests/snapshots/nanox/test_get_public_key_confirm_refused/00003.png b/tests/snapshots/nanox/test_get_public_key_confirm_refused/00003.png index 88d6041..1da459c 100644 Binary files a/tests/snapshots/nanox/test_get_public_key_confirm_refused/00003.png and b/tests/snapshots/nanox/test_get_public_key_confirm_refused/00003.png differ diff --git a/tests/snapshots/nanox/test_get_public_key_confirm_refused/00005.png b/tests/snapshots/nanox/test_get_public_key_confirm_refused/00005.png index e90cd9d..c4c84cf 100644 Binary files a/tests/snapshots/nanox/test_get_public_key_confirm_refused/00005.png and b/tests/snapshots/nanox/test_get_public_key_confirm_refused/00005.png differ diff --git a/tests/snapshots/nanox/test_get_public_key_confirm_refused/00006.png b/tests/snapshots/nanox/test_get_public_key_confirm_refused/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_get_public_key_confirm_refused/00006.png and b/tests/snapshots/nanox/test_get_public_key_confirm_refused/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_message_kanji/00005.png b/tests/snapshots/nanox/test_sign_message_kanji/00005.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_message_kanji/00005.png and b/tests/snapshots/nanox/test_sign_message_kanji/00005.png differ diff --git a/tests/snapshots/nanox/test_sign_message_refused/00004.png b/tests/snapshots/nanox/test_sign_message_refused/00004.png index e90cd9d..c4c84cf 100644 Binary files a/tests/snapshots/nanox/test_sign_message_refused/00004.png and b/tests/snapshots/nanox/test_sign_message_refused/00004.png differ diff --git a/tests/snapshots/nanox/test_sign_message_refused/00005.png b/tests/snapshots/nanox/test_sign_message_refused/00005.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_message_refused/00005.png and b/tests/snapshots/nanox/test_sign_message_refused/00005.png differ diff --git a/tests/snapshots/nanox/test_sign_message_simple/00004.png b/tests/snapshots/nanox/test_sign_message_simple/00004.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_message_simple/00004.png and b/tests/snapshots/nanox/test_sign_message_simple/00004.png differ diff --git a/tests/snapshots/nanox/test_sign_message_simple_different_account/00004.png b/tests/snapshots/nanox/test_sign_message_simple_different_account/00004.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_message_simple_different_account/00004.png and b/tests/snapshots/nanox/test_sign_message_simple_different_account/00004.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_different_account/00001.png b/tests/snapshots/nanox/test_sign_tx_different_account/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_different_account/00001.png and b/tests/snapshots/nanox/test_sign_tx_different_account/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_different_account/00002.png b/tests/snapshots/nanox/test_sign_tx_different_account/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_different_account/00002.png and b/tests/snapshots/nanox/test_sign_tx_different_account/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_different_account/00006.png b/tests/snapshots/nanox/test_sign_tx_different_account/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_different_account/00006.png and b/tests/snapshots/nanox/test_sign_tx_different_account/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_max/00001.png b/tests/snapshots/nanox/test_sign_tx_max/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_max/00001.png and b/tests/snapshots/nanox/test_sign_tx_max/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_max/00002.png b/tests/snapshots/nanox/test_sign_tx_max/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_max/00002.png and b/tests/snapshots/nanox/test_sign_tx_max/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_max/00006.png b/tests/snapshots/nanox/test_sign_tx_max/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_max/00006.png and b/tests/snapshots/nanox/test_sign_tx_max/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_p2sh/00001.png b/tests/snapshots/nanox/test_sign_tx_p2sh/00001.png index c08ef70..52c8036 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_p2sh/00001.png and b/tests/snapshots/nanox/test_sign_tx_p2sh/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_p2sh/00002.png b/tests/snapshots/nanox/test_sign_tx_p2sh/00002.png index 294633e..17aa5fd 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_p2sh/00002.png and b/tests/snapshots/nanox/test_sign_tx_p2sh/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_p2sh/00006.png b/tests/snapshots/nanox/test_sign_tx_p2sh/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_p2sh/00006.png and b/tests/snapshots/nanox/test_sign_tx_p2sh/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_refused/00001.png b/tests/snapshots/nanox/test_sign_tx_refused/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_refused/00001.png and b/tests/snapshots/nanox/test_sign_tx_refused/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_refused/00002.png b/tests/snapshots/nanox/test_sign_tx_refused/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_refused/00002.png and b/tests/snapshots/nanox/test_sign_tx_refused/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_refused/00006.png b/tests/snapshots/nanox/test_sign_tx_refused/00006.png index e90cd9d..c4c84cf 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_refused/00006.png and b/tests/snapshots/nanox/test_sign_tx_refused/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_refused/00007.png b/tests/snapshots/nanox/test_sign_tx_refused/00007.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_refused/00007.png and b/tests/snapshots/nanox/test_sign_tx_refused/00007.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple/00001.png b/tests/snapshots/nanox/test_sign_tx_simple/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple/00001.png and b/tests/snapshots/nanox/test_sign_tx_simple/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple/00002.png b/tests/snapshots/nanox/test_sign_tx_simple/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple/00002.png and b/tests/snapshots/nanox/test_sign_tx_simple/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple/00006.png b/tests/snapshots/nanox/test_sign_tx_simple/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple/00006.png and b/tests/snapshots/nanox/test_sign_tx_simple/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00001.png b/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00001.png index bf75c98..81ff98e 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00001.png and b/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00002.png b/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00002.png index 6b4439e..ef35add 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00002.png and b/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00006.png b/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00006.png and b/tests/snapshots/nanox/test_sign_tx_simple_change_idx1/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00001.png b/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00001.png index fe57e7f..f7a5d5a 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00001.png and b/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00002.png b/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00002.png index 909f2d7..8c13c47 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00002.png and b/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00006.png b/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00006.png and b/tests/snapshots/nanox/test_sign_tx_simple_ecdsa/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_sendint/00001.png b/tests/snapshots/nanox/test_sign_tx_simple_sendint/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_sendint/00001.png and b/tests/snapshots/nanox/test_sign_tx_simple_sendint/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_sendint/00002.png b/tests/snapshots/nanox/test_sign_tx_simple_sendint/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_sendint/00002.png and b/tests/snapshots/nanox/test_sign_tx_simple_sendint/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_sendint/00006.png b/tests/snapshots/nanox/test_sign_tx_simple_sendint/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_sendint/00006.png and b/tests/snapshots/nanox/test_sign_tx_simple_sendint/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00001.png b/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00001.png and b/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00002.png b/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00002.png and b/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00006.png b/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00006.png and b/tests/snapshots/nanox/test_sign_tx_simple_sendmaxu64/00006.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_with_change/00001.png b/tests/snapshots/nanox/test_sign_tx_with_change/00001.png index ff1d02e..94b99d5 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_with_change/00001.png and b/tests/snapshots/nanox/test_sign_tx_with_change/00001.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_with_change/00002.png b/tests/snapshots/nanox/test_sign_tx_with_change/00002.png index f32599b..c49815e 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_with_change/00002.png and b/tests/snapshots/nanox/test_sign_tx_with_change/00002.png differ diff --git a/tests/snapshots/nanox/test_sign_tx_with_change/00006.png b/tests/snapshots/nanox/test_sign_tx_with_change/00006.png index 8ce05d9..63b43ce 100644 Binary files a/tests/snapshots/nanox/test_sign_tx_with_change/00006.png and b/tests/snapshots/nanox/test_sign_tx_with_change/00006.png differ diff --git a/tests/snapshots/stax/test_app_mainmenu/00000.png b/tests/snapshots/stax/test_app_mainmenu/00000.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_app_mainmenu/00000.png and b/tests/snapshots/stax/test_app_mainmenu/00000.png differ diff --git a/tests/snapshots/stax/test_app_mainmenu/00001.png b/tests/snapshots/stax/test_app_mainmenu/00001.png index ac2314e..32de7d6 100644 Binary files a/tests/snapshots/stax/test_app_mainmenu/00001.png and b/tests/snapshots/stax/test_app_mainmenu/00001.png differ diff --git a/tests/snapshots/stax/test_app_mainmenu/00002.png b/tests/snapshots/stax/test_app_mainmenu/00002.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_app_mainmenu/00002.png and b/tests/snapshots/stax/test_app_mainmenu/00002.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00000.png b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00000.png index b47b2de..e25645c 100644 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00000.png and b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00000.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00001.png b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00001.png index 13b1243..6c9e58d 100644 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00001.png and b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00001.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00002.png b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00002.png index 09b082d..f21a2a9 100644 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00002.png and b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00002.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00003.png b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00003.png index 13b1243..7a49478 100644 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00003.png and b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00003.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00004.png b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00004.png index 7831008..2519c9c 100644 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00004.png and b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00004.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00005.png b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00005.png deleted file mode 100644 index f59899e..0000000 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00005.png and /dev/null differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00006.png b/tests/snapshots/stax/test_get_public_key_confirm_accepted/00006.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_accepted/00006.png and /dev/null differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/00000.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/00000.png new file mode 100644 index 0000000..e25645c Binary files /dev/null and b/tests/snapshots/stax/test_get_public_key_confirm_refused/00000.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/00001.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/00001.png new file mode 100644 index 0000000..6c9e58d Binary files /dev/null and b/tests/snapshots/stax/test_get_public_key_confirm_refused/00001.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/00002.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/00002.png new file mode 100644 index 0000000..f21a2a9 Binary files /dev/null and b/tests/snapshots/stax/test_get_public_key_confirm_refused/00002.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/00003.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/00003.png new file mode 100644 index 0000000..94c91bb Binary files /dev/null and b/tests/snapshots/stax/test_get_public_key_confirm_refused/00003.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/00004.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/00004.png new file mode 100644 index 0000000..2519c9c Binary files /dev/null and b/tests/snapshots/stax/test_get_public_key_confirm_refused/00004.png differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/part0/00000.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/part0/00000.png deleted file mode 100644 index b47b2de..0000000 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_refused/part0/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/part0/00001.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/part0/00001.png deleted file mode 100644 index b0eba3f..0000000 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_refused/part0/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/part0/00002.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/part0/00002.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_refused/part0/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00000.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00000.png deleted file mode 100644 index b47b2de..0000000 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00001.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00001.png deleted file mode 100644 index 13b1243..0000000 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00002.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00002.png deleted file mode 100644 index b0eba3f..0000000 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00003.png b/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00003.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_get_public_key_confirm_refused/part1/00003.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_kanji/00000.png b/tests/snapshots/stax/test_sign_message_kanji/00000.png index ce64ced..0fa73fe 100644 Binary files a/tests/snapshots/stax/test_sign_message_kanji/00000.png and b/tests/snapshots/stax/test_sign_message_kanji/00000.png differ diff --git a/tests/snapshots/stax/test_sign_message_kanji/00001.png b/tests/snapshots/stax/test_sign_message_kanji/00001.png index 104908a..147707e 100644 Binary files a/tests/snapshots/stax/test_sign_message_kanji/00001.png and b/tests/snapshots/stax/test_sign_message_kanji/00001.png differ diff --git a/tests/snapshots/stax/test_sign_message_kanji/00002.png b/tests/snapshots/stax/test_sign_message_kanji/00002.png index 0ec6c37..66d64ba 100644 Binary files a/tests/snapshots/stax/test_sign_message_kanji/00002.png and b/tests/snapshots/stax/test_sign_message_kanji/00002.png differ diff --git a/tests/snapshots/stax/test_sign_message_kanji/00003.png b/tests/snapshots/stax/test_sign_message_kanji/00003.png index c1a8fd4..cfee3ae 100644 Binary files a/tests/snapshots/stax/test_sign_message_kanji/00003.png and b/tests/snapshots/stax/test_sign_message_kanji/00003.png differ diff --git a/tests/snapshots/stax/test_sign_message_kanji/00004.png b/tests/snapshots/stax/test_sign_message_kanji/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_message_kanji/00004.png and b/tests/snapshots/stax/test_sign_message_kanji/00004.png differ diff --git a/tests/snapshots/stax/test_sign_message_refused/00000.png b/tests/snapshots/stax/test_sign_message_refused/00000.png new file mode 100644 index 0000000..0fa73fe Binary files /dev/null and b/tests/snapshots/stax/test_sign_message_refused/00000.png differ diff --git a/tests/snapshots/stax/test_sign_message_refused/00001.png b/tests/snapshots/stax/test_sign_message_refused/00001.png new file mode 100644 index 0000000..aea9684 Binary files /dev/null and b/tests/snapshots/stax/test_sign_message_refused/00001.png differ diff --git a/tests/snapshots/stax/test_sign_message_refused/00002.png b/tests/snapshots/stax/test_sign_message_refused/00002.png new file mode 100644 index 0000000..66d64ba Binary files /dev/null and b/tests/snapshots/stax/test_sign_message_refused/00002.png differ diff --git a/tests/snapshots/stax/test_sign_message_refused/00003.png b/tests/snapshots/stax/test_sign_message_refused/00003.png new file mode 100644 index 0000000..45414d5 Binary files /dev/null and b/tests/snapshots/stax/test_sign_message_refused/00003.png differ diff --git a/tests/snapshots/stax/test_sign_message_refused/00004.png b/tests/snapshots/stax/test_sign_message_refused/00004.png new file mode 100644 index 0000000..fecace7 Binary files /dev/null and b/tests/snapshots/stax/test_sign_message_refused/00004.png differ diff --git a/tests/snapshots/stax/test_sign_message_refused/00005.png b/tests/snapshots/stax/test_sign_message_refused/00005.png new file mode 100644 index 0000000..2519c9c Binary files /dev/null and b/tests/snapshots/stax/test_sign_message_refused/00005.png differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part0/00000.png b/tests/snapshots/stax/test_sign_message_refused/part0/00000.png deleted file mode 100644 index ce64ced..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part0/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part0/00001.png b/tests/snapshots/stax/test_sign_message_refused/part0/00001.png deleted file mode 100644 index 56afa4b..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part0/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part0/00002.png b/tests/snapshots/stax/test_sign_message_refused/part0/00002.png deleted file mode 100644 index df803b1..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part0/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part0/00003.png b/tests/snapshots/stax/test_sign_message_refused/part0/00003.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part0/00003.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part1/00000.png b/tests/snapshots/stax/test_sign_message_refused/part1/00000.png deleted file mode 100644 index ce64ced..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part1/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part1/00001.png b/tests/snapshots/stax/test_sign_message_refused/part1/00001.png deleted file mode 100644 index e13708c..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part1/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part1/00002.png b/tests/snapshots/stax/test_sign_message_refused/part1/00002.png deleted file mode 100644 index 56afa4b..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part1/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part1/00003.png b/tests/snapshots/stax/test_sign_message_refused/part1/00003.png deleted file mode 100644 index df803b1..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part1/00003.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part1/00004.png b/tests/snapshots/stax/test_sign_message_refused/part1/00004.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part1/00004.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part2/00000.png b/tests/snapshots/stax/test_sign_message_refused/part2/00000.png deleted file mode 100644 index ce64ced..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part2/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part2/00001.png b/tests/snapshots/stax/test_sign_message_refused/part2/00001.png deleted file mode 100644 index e13708c..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part2/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part2/00002.png b/tests/snapshots/stax/test_sign_message_refused/part2/00002.png deleted file mode 100644 index 0ec6c37..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part2/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part2/00003.png b/tests/snapshots/stax/test_sign_message_refused/part2/00003.png deleted file mode 100644 index 56afa4b..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part2/00003.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part2/00004.png b/tests/snapshots/stax/test_sign_message_refused/part2/00004.png deleted file mode 100644 index df803b1..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part2/00004.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_refused/part2/00005.png b/tests/snapshots/stax/test_sign_message_refused/part2/00005.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_sign_message_refused/part2/00005.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_message_simple/00000.png b/tests/snapshots/stax/test_sign_message_simple/00000.png index ce64ced..0fa73fe 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple/00000.png and b/tests/snapshots/stax/test_sign_message_simple/00000.png differ diff --git a/tests/snapshots/stax/test_sign_message_simple/00001.png b/tests/snapshots/stax/test_sign_message_simple/00001.png index 327244e..56bceb2 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple/00001.png and b/tests/snapshots/stax/test_sign_message_simple/00001.png differ diff --git a/tests/snapshots/stax/test_sign_message_simple/00002.png b/tests/snapshots/stax/test_sign_message_simple/00002.png index 0ec6c37..66d64ba 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple/00002.png and b/tests/snapshots/stax/test_sign_message_simple/00002.png differ diff --git a/tests/snapshots/stax/test_sign_message_simple/00003.png b/tests/snapshots/stax/test_sign_message_simple/00003.png index c1a8fd4..cfee3ae 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple/00003.png and b/tests/snapshots/stax/test_sign_message_simple/00003.png differ diff --git a/tests/snapshots/stax/test_sign_message_simple/00004.png b/tests/snapshots/stax/test_sign_message_simple/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple/00004.png and b/tests/snapshots/stax/test_sign_message_simple/00004.png differ diff --git a/tests/snapshots/stax/test_sign_message_simple_different_account/00000.png b/tests/snapshots/stax/test_sign_message_simple_different_account/00000.png index ce64ced..0fa73fe 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple_different_account/00000.png and b/tests/snapshots/stax/test_sign_message_simple_different_account/00000.png differ diff --git a/tests/snapshots/stax/test_sign_message_simple_different_account/00001.png b/tests/snapshots/stax/test_sign_message_simple_different_account/00001.png index 87cd6ac..de0c845 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple_different_account/00001.png and b/tests/snapshots/stax/test_sign_message_simple_different_account/00001.png differ diff --git a/tests/snapshots/stax/test_sign_message_simple_different_account/00002.png b/tests/snapshots/stax/test_sign_message_simple_different_account/00002.png index 0ec6c37..66d64ba 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple_different_account/00002.png and b/tests/snapshots/stax/test_sign_message_simple_different_account/00002.png differ diff --git a/tests/snapshots/stax/test_sign_message_simple_different_account/00003.png b/tests/snapshots/stax/test_sign_message_simple_different_account/00003.png index c1a8fd4..cfee3ae 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple_different_account/00003.png and b/tests/snapshots/stax/test_sign_message_simple_different_account/00003.png differ diff --git a/tests/snapshots/stax/test_sign_message_simple_different_account/00004.png b/tests/snapshots/stax/test_sign_message_simple_different_account/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_message_simple_different_account/00004.png and b/tests/snapshots/stax/test_sign_message_simple_different_account/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_different_account/00000.png b/tests/snapshots/stax/test_sign_tx_different_account/00000.png index 1b50145..b7011e7 100644 Binary files a/tests/snapshots/stax/test_sign_tx_different_account/00000.png and b/tests/snapshots/stax/test_sign_tx_different_account/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_different_account/00001.png b/tests/snapshots/stax/test_sign_tx_different_account/00001.png index b8163e4..28aeccf 100644 Binary files a/tests/snapshots/stax/test_sign_tx_different_account/00001.png and b/tests/snapshots/stax/test_sign_tx_different_account/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_different_account/00002.png b/tests/snapshots/stax/test_sign_tx_different_account/00002.png index 3c651ba..5dcd84e 100644 Binary files a/tests/snapshots/stax/test_sign_tx_different_account/00002.png and b/tests/snapshots/stax/test_sign_tx_different_account/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_different_account/00003.png b/tests/snapshots/stax/test_sign_tx_different_account/00003.png index cd2f527..392165d 100644 Binary files a/tests/snapshots/stax/test_sign_tx_different_account/00003.png and b/tests/snapshots/stax/test_sign_tx_different_account/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_different_account/00004.png b/tests/snapshots/stax/test_sign_tx_different_account/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_different_account/00004.png and b/tests/snapshots/stax/test_sign_tx_different_account/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_long_tx/00000.png b/tests/snapshots/stax/test_sign_tx_long_tx/00000.png deleted file mode 100644 index 273b11f..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_long_tx/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_long_tx/00001.png b/tests/snapshots/stax/test_sign_tx_long_tx/00001.png deleted file mode 100644 index 9ab3994..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_long_tx/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_long_tx/00002.png b/tests/snapshots/stax/test_sign_tx_long_tx/00002.png deleted file mode 100644 index a3fd0ed..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_long_tx/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_long_tx/00003.png b/tests/snapshots/stax/test_sign_tx_long_tx/00003.png deleted file mode 100644 index 7a05bf7..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_long_tx/00003.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_long_tx/00004.png b/tests/snapshots/stax/test_sign_tx_long_tx/00004.png deleted file mode 100644 index 5938a5f..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_long_tx/00004.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_max/00000.png b/tests/snapshots/stax/test_sign_tx_max/00000.png index 1b50145..b7011e7 100644 Binary files a/tests/snapshots/stax/test_sign_tx_max/00000.png and b/tests/snapshots/stax/test_sign_tx_max/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_max/00001.png b/tests/snapshots/stax/test_sign_tx_max/00001.png index 06fc419..b321013 100644 Binary files a/tests/snapshots/stax/test_sign_tx_max/00001.png and b/tests/snapshots/stax/test_sign_tx_max/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_max/00002.png b/tests/snapshots/stax/test_sign_tx_max/00002.png index 3c651ba..5dcd84e 100644 Binary files a/tests/snapshots/stax/test_sign_tx_max/00002.png and b/tests/snapshots/stax/test_sign_tx_max/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_max/00003.png b/tests/snapshots/stax/test_sign_tx_max/00003.png index cd2f527..392165d 100644 Binary files a/tests/snapshots/stax/test_sign_tx_max/00003.png and b/tests/snapshots/stax/test_sign_tx_max/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_max/00004.png b/tests/snapshots/stax/test_sign_tx_max/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_max/00004.png and b/tests/snapshots/stax/test_sign_tx_max/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_p2sh/00000.png b/tests/snapshots/stax/test_sign_tx_p2sh/00000.png index 1b50145..b7011e7 100644 Binary files a/tests/snapshots/stax/test_sign_tx_p2sh/00000.png and b/tests/snapshots/stax/test_sign_tx_p2sh/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_p2sh/00001.png b/tests/snapshots/stax/test_sign_tx_p2sh/00001.png index 150ceab..580255c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_p2sh/00001.png and b/tests/snapshots/stax/test_sign_tx_p2sh/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_p2sh/00002.png b/tests/snapshots/stax/test_sign_tx_p2sh/00002.png index 3c651ba..5dcd84e 100644 Binary files a/tests/snapshots/stax/test_sign_tx_p2sh/00002.png and b/tests/snapshots/stax/test_sign_tx_p2sh/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_p2sh/00003.png b/tests/snapshots/stax/test_sign_tx_p2sh/00003.png index cd2f527..392165d 100644 Binary files a/tests/snapshots/stax/test_sign_tx_p2sh/00003.png and b/tests/snapshots/stax/test_sign_tx_p2sh/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_p2sh/00004.png b/tests/snapshots/stax/test_sign_tx_p2sh/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_p2sh/00004.png and b/tests/snapshots/stax/test_sign_tx_p2sh/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/00000.png b/tests/snapshots/stax/test_sign_tx_refused/00000.png new file mode 100644 index 0000000..b7011e7 Binary files /dev/null and b/tests/snapshots/stax/test_sign_tx_refused/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/00001.png b/tests/snapshots/stax/test_sign_tx_refused/00001.png new file mode 100644 index 0000000..28aeccf Binary files /dev/null and b/tests/snapshots/stax/test_sign_tx_refused/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/00002.png b/tests/snapshots/stax/test_sign_tx_refused/00002.png new file mode 100644 index 0000000..5dcd84e Binary files /dev/null and b/tests/snapshots/stax/test_sign_tx_refused/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/00003.png b/tests/snapshots/stax/test_sign_tx_refused/00003.png new file mode 100644 index 0000000..abc9677 Binary files /dev/null and b/tests/snapshots/stax/test_sign_tx_refused/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/00004.png b/tests/snapshots/stax/test_sign_tx_refused/00004.png new file mode 100644 index 0000000..2b66970 Binary files /dev/null and b/tests/snapshots/stax/test_sign_tx_refused/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/00005.png b/tests/snapshots/stax/test_sign_tx_refused/00005.png new file mode 100644 index 0000000..2519c9c Binary files /dev/null and b/tests/snapshots/stax/test_sign_tx_refused/00005.png differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part0/00000.png b/tests/snapshots/stax/test_sign_tx_refused/part0/00000.png deleted file mode 100644 index 1b50145..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part0/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part0/00001.png b/tests/snapshots/stax/test_sign_tx_refused/part0/00001.png deleted file mode 100644 index babad98..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part0/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part0/00002.png b/tests/snapshots/stax/test_sign_tx_refused/part0/00002.png deleted file mode 100644 index cebc8be..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part0/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part0/00003.png b/tests/snapshots/stax/test_sign_tx_refused/part0/00003.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part0/00003.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part1/00000.png b/tests/snapshots/stax/test_sign_tx_refused/part1/00000.png deleted file mode 100644 index 1b50145..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part1/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part1/00001.png b/tests/snapshots/stax/test_sign_tx_refused/part1/00001.png deleted file mode 100644 index b8163e4..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part1/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part1/00002.png b/tests/snapshots/stax/test_sign_tx_refused/part1/00002.png deleted file mode 100644 index babad98..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part1/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part1/00003.png b/tests/snapshots/stax/test_sign_tx_refused/part1/00003.png deleted file mode 100644 index cebc8be..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part1/00003.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part1/00004.png b/tests/snapshots/stax/test_sign_tx_refused/part1/00004.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part1/00004.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part2/00000.png b/tests/snapshots/stax/test_sign_tx_refused/part2/00000.png deleted file mode 100644 index 1b50145..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part2/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part2/00001.png b/tests/snapshots/stax/test_sign_tx_refused/part2/00001.png deleted file mode 100644 index b8163e4..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part2/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part2/00002.png b/tests/snapshots/stax/test_sign_tx_refused/part2/00002.png deleted file mode 100644 index 3c651ba..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part2/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part2/00003.png b/tests/snapshots/stax/test_sign_tx_refused/part2/00003.png deleted file mode 100644 index babad98..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part2/00003.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part2/00004.png b/tests/snapshots/stax/test_sign_tx_refused/part2/00004.png deleted file mode 100644 index cebc8be..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part2/00004.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_refused/part2/00005.png b/tests/snapshots/stax/test_sign_tx_refused/part2/00005.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_refused/part2/00005.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_short_tx/00000.png b/tests/snapshots/stax/test_sign_tx_short_tx/00000.png deleted file mode 100644 index 273b11f..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_short_tx/00000.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_short_tx/00001.png b/tests/snapshots/stax/test_sign_tx_short_tx/00001.png deleted file mode 100644 index 9ab3994..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_short_tx/00001.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_short_tx/00002.png b/tests/snapshots/stax/test_sign_tx_short_tx/00002.png deleted file mode 100644 index a3fd0ed..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_short_tx/00002.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_short_tx/00003.png b/tests/snapshots/stax/test_sign_tx_short_tx/00003.png deleted file mode 100644 index 7a05bf7..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_short_tx/00003.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_short_tx/00004.png b/tests/snapshots/stax/test_sign_tx_short_tx/00004.png deleted file mode 100644 index 5938a5f..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_short_tx/00004.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_simple/00000.png b/tests/snapshots/stax/test_sign_tx_simple/00000.png index 1b50145..b7011e7 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple/00000.png and b/tests/snapshots/stax/test_sign_tx_simple/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple/00001.png b/tests/snapshots/stax/test_sign_tx_simple/00001.png index b8163e4..28aeccf 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple/00001.png and b/tests/snapshots/stax/test_sign_tx_simple/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple/00002.png b/tests/snapshots/stax/test_sign_tx_simple/00002.png index 3c651ba..5dcd84e 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple/00002.png and b/tests/snapshots/stax/test_sign_tx_simple/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple/00003.png b/tests/snapshots/stax/test_sign_tx_simple/00003.png index cd2f527..392165d 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple/00003.png and b/tests/snapshots/stax/test_sign_tx_simple/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple/00004.png b/tests/snapshots/stax/test_sign_tx_simple/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple/00004.png and b/tests/snapshots/stax/test_sign_tx_simple/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00000.png b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00000.png index 1b50145..b7011e7 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00000.png and b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00001.png b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00001.png index b2f0fed..edc4326 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00001.png and b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00002.png b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00002.png index 3c651ba..5dcd84e 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00002.png and b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00003.png b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00003.png index cd2f527..392165d 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00003.png and b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00004.png b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00004.png and b/tests/snapshots/stax/test_sign_tx_simple_change_idx1/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00000.png b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00000.png index 1b50145..b7011e7 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00000.png and b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00001.png b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00001.png index 4fd7d04..ab1d0af 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00001.png and b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00002.png b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00002.png index 3c651ba..5dcd84e 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00002.png and b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00003.png b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00003.png index cd2f527..392165d 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00003.png and b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00004.png b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00004.png and b/tests/snapshots/stax/test_sign_tx_simple_ecdsa/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendint/00000.png b/tests/snapshots/stax/test_sign_tx_simple_sendint/00000.png index 1b50145..b7011e7 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendint/00000.png and b/tests/snapshots/stax/test_sign_tx_simple_sendint/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendint/00001.png b/tests/snapshots/stax/test_sign_tx_simple_sendint/00001.png index f3cea84..b04e2c4 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendint/00001.png and b/tests/snapshots/stax/test_sign_tx_simple_sendint/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendint/00002.png b/tests/snapshots/stax/test_sign_tx_simple_sendint/00002.png index 3c651ba..5dcd84e 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendint/00002.png and b/tests/snapshots/stax/test_sign_tx_simple_sendint/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendint/00003.png b/tests/snapshots/stax/test_sign_tx_simple_sendint/00003.png index cd2f527..392165d 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendint/00003.png and b/tests/snapshots/stax/test_sign_tx_simple_sendint/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendint/00004.png b/tests/snapshots/stax/test_sign_tx_simple_sendint/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendint/00004.png and b/tests/snapshots/stax/test_sign_tx_simple_sendint/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00000.png b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00000.png index 1b50145..b7011e7 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00000.png and b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00001.png b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00001.png index c57e232..842bbaf 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00001.png and b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00002.png b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00002.png index 0550462..5dcd84e 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00002.png and b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00003.png b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00003.png index fd4ac86..392165d 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00003.png and b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00004.png b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00004.png index cd2f527..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00004.png and b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00004.png differ diff --git a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00005.png b/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00005.png deleted file mode 100644 index ad6b72e..0000000 Binary files a/tests/snapshots/stax/test_sign_tx_simple_sendmaxu64/00005.png and /dev/null differ diff --git a/tests/snapshots/stax/test_sign_tx_with_change/00000.png b/tests/snapshots/stax/test_sign_tx_with_change/00000.png index 1b50145..b7011e7 100644 Binary files a/tests/snapshots/stax/test_sign_tx_with_change/00000.png and b/tests/snapshots/stax/test_sign_tx_with_change/00000.png differ diff --git a/tests/snapshots/stax/test_sign_tx_with_change/00001.png b/tests/snapshots/stax/test_sign_tx_with_change/00001.png index d4d8bef..8be8f5b 100644 Binary files a/tests/snapshots/stax/test_sign_tx_with_change/00001.png and b/tests/snapshots/stax/test_sign_tx_with_change/00001.png differ diff --git a/tests/snapshots/stax/test_sign_tx_with_change/00002.png b/tests/snapshots/stax/test_sign_tx_with_change/00002.png index 3c651ba..5dcd84e 100644 Binary files a/tests/snapshots/stax/test_sign_tx_with_change/00002.png and b/tests/snapshots/stax/test_sign_tx_with_change/00002.png differ diff --git a/tests/snapshots/stax/test_sign_tx_with_change/00003.png b/tests/snapshots/stax/test_sign_tx_with_change/00003.png index cd2f527..392165d 100644 Binary files a/tests/snapshots/stax/test_sign_tx_with_change/00003.png and b/tests/snapshots/stax/test_sign_tx_with_change/00003.png differ diff --git a/tests/snapshots/stax/test_sign_tx_with_change/00004.png b/tests/snapshots/stax/test_sign_tx_with_change/00004.png index ad6b72e..2519c9c 100644 Binary files a/tests/snapshots/stax/test_sign_tx_with_change/00004.png and b/tests/snapshots/stax/test_sign_tx_with_change/00004.png differ diff --git a/tests/test_name_version.py b/tests/test_name_version.py index 61ebf38..cafa7b5 100644 --- a/tests/test_name_version.py +++ b/tests/test_name_version.py @@ -12,4 +12,4 @@ def test_get_app_and_version(backend, backend_name): app_name, version = unpack_get_app_and_version_response(response.data) assert app_name == "Kaspa" - assert version == "1.0.2" + assert version == "1.0.3" diff --git a/tests/test_pubkey_cmd.py b/tests/test_pubkey_cmd.py index d1d56bf..382032b 100644 --- a/tests/test_pubkey_cmd.py +++ b/tests/test_pubkey_cmd.py @@ -1,7 +1,10 @@ +import pytest + from application_client.kaspa_command_sender import KaspaCommandSender, Errors from application_client.kaspa_response_unpacker import unpack_get_public_key_response from ragger.bip import calculate_public_key_and_chaincode, CurveChoice from ragger.backend import RaisePolicy +from ragger.error import ExceptionRAPDU from ragger.navigator import NavInsID, NavIns from utils import ROOT_SCREENSHOT_PATH @@ -33,28 +36,12 @@ def test_get_public_key_no_confirm_invalid(backend): # In this test we check that the GET_PUBLIC_KEY works in confirmation mode -def test_get_public_key_confirm_accepted(firmware, backend, navigator, test_name): +def test_get_public_key_confirm_accepted(firmware, backend, scenario_navigator, test_name): client = KaspaCommandSender(backend) path = "m/44'/111111'/0'/0/0" with client.get_public_key_with_confirmation(path=path): - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - instructions = [ - NavInsID.USE_CASE_REVIEW_TAP, - NavIns(NavInsID.TOUCH, (200, 335)), - NavInsID.USE_CASE_ADDRESS_CONFIRMATION_EXIT_QR, - NavInsID.USE_CASE_ADDRESS_CONFIRMATION_TAP, - NavInsID.USE_CASE_ADDRESS_CONFIRMATION_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS - ] - navigator.navigate_and_compare(ROOT_SCREENSHOT_PATH, - test_name, - instructions) + scenario_navigator.address_review_approve() + response = client.get_async_response().data _, public_key, _, chain_code = unpack_get_public_key_response(response) @@ -64,45 +51,14 @@ def test_get_public_key_confirm_accepted(firmware, backend, navigator, test_name # In this test we check that the GET_PUBLIC_KEY in confirmation mode replies an error if the user refuses -def test_get_public_key_confirm_refused(firmware, backend, navigator, test_name): +def test_get_public_key_confirm_refused(firmware, backend, scenario_navigator, test_name): client = KaspaCommandSender(backend) path = "m/44'/111111'/0'/0/0" - if firmware.device.startswith("nano"): + with pytest.raises(ExceptionRAPDU) as e: with client.get_public_key_with_confirmation(path=path): - # Disable raising when trying to unpack an error APDU - backend.raise_policy = RaisePolicy.RAISE_NOTHING - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Reject", - ROOT_SCREENSHOT_PATH, - test_name) - - response = client.get_async_response() - - # Assert that we have received a refusal - assert response.status == Errors.SW_DENY - assert len(response.data) == 0 - else: - instructions_set = [ - [ - NavInsID.USE_CASE_REVIEW_REJECT, - NavInsID.USE_CASE_STATUS_DISMISS - ], - [ - NavInsID.USE_CASE_REVIEW_TAP, - NavInsID.USE_CASE_ADDRESS_CONFIRMATION_CANCEL, - NavInsID.USE_CASE_STATUS_DISMISS - ] - ] - for i, instructions in enumerate(instructions_set): - with client.get_public_key_with_confirmation(path=path): - backend.raise_policy = RaisePolicy.RAISE_NOTHING - navigator.navigate_and_compare(ROOT_SCREENSHOT_PATH, - test_name + f"/part{i}", - instructions) - response = client.get_async_response() + scenario_navigator.address_review_reject() - # Assert that we have received a refusal - assert response.status == Errors.SW_DENY - assert len(response.data) == 0 + # Assert that we have received a refusal + assert e.value.status == Errors.SW_DENY + assert len(e.value.data) == 0 diff --git a/tests/test_sign_cmd.py b/tests/test_sign_cmd.py index 653eb6f..c698879 100644 --- a/tests/test_sign_cmd.py +++ b/tests/test_sign_cmd.py @@ -1,7 +1,10 @@ +import pytest + from application_client.kaspa_transaction import Transaction, TransactionInput, TransactionOutput from application_client.kaspa_command_sender import KaspaCommandSender, Errors, InsType, P1, P2 from application_client.kaspa_response_unpacker import unpack_get_public_key_response, unpack_sign_tx_response from ragger.backend import RaisePolicy +from ragger.error import ExceptionRAPDU from ragger.navigator import NavInsID from utils import ROOT_SCREENSHOT_PATH, check_signature_validity @@ -10,7 +13,7 @@ # In this test se send to the device a transaction to sign and validate it on screen # We will ensure that the displayed information is correct by using screenshots comparison -def test_sign_tx_simple(firmware, backend, navigator, test_name): +def test_sign_tx_simple(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -46,19 +49,7 @@ def test_sign_tx_simple(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_tx(transaction=transaction): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -66,7 +57,7 @@ def test_sign_tx_simple(firmware, backend, navigator, test_name): assert transaction.get_sighash(0) == sighash assert check_signature_validity(public_key, der_sig, sighash) -def test_sign_tx_different_account(firmware, backend, navigator, test_name): +def test_sign_tx_different_account(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -103,19 +94,7 @@ def test_sign_tx_different_account(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_tx(transaction=transaction): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -123,7 +102,7 @@ def test_sign_tx_different_account(firmware, backend, navigator, test_name): assert transaction.get_sighash(0) == sighash assert check_signature_validity(public_key, der_sig, sighash) -def test_sign_tx_simple_ecdsa(firmware, backend, navigator, test_name): +def test_sign_tx_simple_ecdsa(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -159,19 +138,7 @@ def test_sign_tx_simple_ecdsa(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_tx(transaction=transaction): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -180,7 +147,7 @@ def test_sign_tx_simple_ecdsa(firmware, backend, navigator, test_name): assert check_signature_validity(public_key, der_sig, sighash) -def test_sign_tx_p2sh(firmware, backend, navigator, test_name): +def test_sign_tx_p2sh(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -216,19 +183,7 @@ def test_sign_tx_p2sh(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_tx(transaction=transaction): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -236,7 +191,7 @@ def test_sign_tx_p2sh(firmware, backend, navigator, test_name): assert transaction.get_sighash(0) == sighash assert check_signature_validity(public_key, der_sig, sighash) -def test_sign_tx_simple_sendint(firmware, backend, navigator, test_name): +def test_sign_tx_simple_sendint(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -272,19 +227,7 @@ def test_sign_tx_simple_sendint(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_tx(transaction=transaction): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -292,7 +235,7 @@ def test_sign_tx_simple_sendint(firmware, backend, navigator, test_name): assert transaction.get_sighash(0) == sighash assert check_signature_validity(public_key, der_sig, sighash) -def test_sign_tx_simple_sendmaxu64(firmware, backend, navigator, test_name): +def test_sign_tx_simple_sendmaxu64(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -328,19 +271,7 @@ def test_sign_tx_simple_sendmaxu64(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_tx(transaction=transaction): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -348,7 +279,7 @@ def test_sign_tx_simple_sendmaxu64(firmware, backend, navigator, test_name): assert transaction.get_sighash(0) == sighash assert check_signature_validity(public_key, der_sig, sighash) -def test_sign_tx_simple_change_idx1(firmware, backend, navigator, test_name): +def test_sign_tx_simple_change_idx1(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -397,19 +328,7 @@ def test_sign_tx_simple_change_idx1(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_tx(transaction=transaction): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -417,7 +336,7 @@ def test_sign_tx_simple_change_idx1(firmware, backend, navigator, test_name): assert transaction.get_sighash(0) == sighash assert check_signature_validity(public_key, der_sig, sighash) -def test_sign_tx_with_change(firmware, backend, navigator, test_name): +def test_sign_tx_with_change(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -462,19 +381,7 @@ def test_sign_tx_with_change(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_tx(transaction=transaction): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -673,7 +580,7 @@ def test_sign_tx_inconsistent_output_length_and_data(backend): # In this test se send to the device a transaction to sign and validate it on screen # This test uses the maximum supported number of inputs per device type -def test_sign_tx_max(firmware, backend, navigator, test_name): +def test_sign_tx_max(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) path: str = "m/44'/111111'/0'/0/0" @@ -705,19 +612,7 @@ def test_sign_tx_max(firmware, backend, navigator, test_name): ) with client.sign_tx(transaction=transaction): - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() idx = 0 response = client.get_async_response().data @@ -738,7 +633,7 @@ def test_sign_tx_max(firmware, backend, navigator, test_name): # Transaction signature refused test # The test will ask for a transaction signature that will be refused on screen -def test_sign_tx_refused(firmware, backend, navigator, test_name): +def test_sign_tx_refused(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) @@ -762,26 +657,10 @@ def test_sign_tx_refused(firmware, backend, navigator, test_name): ] ) - if firmware.device.startswith("nano"): + with pytest.raises(ExceptionRAPDU) as e: with client.sign_tx(transaction=transaction): - # Disable raising when trying to unpack an error APDU - backend.raise_policy = RaisePolicy.RAISE_NOTHING - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Reject", - ROOT_SCREENSHOT_PATH, - test_name) - - assert client.get_async_response().status == Errors.SW_DENY - else: - for i in range(3): - instructions = [NavInsID.USE_CASE_REVIEW_TAP] * i - instructions += [NavInsID.USE_CASE_REVIEW_REJECT, - NavInsID.USE_CASE_CHOICE_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS] - with client.sign_tx(transaction=transaction): - backend.raise_policy = RaisePolicy.RAISE_NOTHING - navigator.navigate_and_compare(ROOT_SCREENSHOT_PATH, - test_name + f"/part{i}", - instructions) - assert client.get_async_response().status == Errors.SW_DENY + scenario_navigator.review_reject() + + # Assert that we have received a refusal + assert e.value.status == Errors.SW_DENY + assert len(e.value.data) == 0 diff --git a/tests/test_sign_personal_message_cmd.py b/tests/test_sign_personal_message_cmd.py index c321f95..d598c6b 100644 --- a/tests/test_sign_personal_message_cmd.py +++ b/tests/test_sign_personal_message_cmd.py @@ -1,7 +1,10 @@ +import pytest + from application_client.kaspa_command_sender import KaspaCommandSender, Errors, InsType, P1, P2 from application_client.kaspa_message import PersonalMessage from application_client.kaspa_response_unpacker import unpack_get_public_key_response, unpack_sign_message_response from ragger.backend import RaisePolicy +from ragger.error import ExceptionRAPDU from ragger.navigator import NavInsID from utils import ROOT_SCREENSHOT_PATH, check_signature_validity @@ -10,7 +13,7 @@ # In this test se send to the device a transaction to sign and validate it on screen # We will ensure that the displayed information is correct by using screenshots comparison -def test_sign_message_simple(firmware, backend, navigator, test_name): +def test_sign_message_simple(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -31,19 +34,7 @@ def test_sign_message_simple(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_message(message_data=message_data): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -52,7 +43,7 @@ def test_sign_message_simple(firmware, backend, navigator, test_name): assert message_hash == message_data.to_hash() assert check_signature_validity(public_key, der_sig, message_hash) -def test_sign_message_simple_different_account(firmware, backend, navigator, test_name): +def test_sign_message_simple_different_account(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -74,19 +65,7 @@ def test_sign_message_simple_different_account(firmware, backend, navigator, tes # It will yield the result when the navigation is done with client.sign_message(message_data=message_data): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -95,7 +74,7 @@ def test_sign_message_simple_different_account(firmware, backend, navigator, tes assert message_hash == message_data.to_hash() assert check_signature_validity(public_key, der_sig, message_hash) -def test_sign_message_kanji(firmware, backend, navigator, test_name): +def test_sign_message_kanji(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) # The path used for this entire test @@ -116,19 +95,7 @@ def test_sign_message_kanji(firmware, backend, navigator, test_name): # It will yield the result when the navigation is done with client.sign_message(message_data=message_data): # Validate the on-screen request by performing the navigation appropriate for this device - if firmware.device.startswith("nano"): - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Approve", - ROOT_SCREENSHOT_PATH, - test_name) - else: - navigator.navigate_until_text_and_compare(NavInsID.USE_CASE_REVIEW_TAP, - [NavInsID.USE_CASE_REVIEW_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS], - "Hold to sign", - ROOT_SCREENSHOT_PATH, - test_name) + scenario_navigator.review_approve() # The device as yielded the result, parse it and ensure that the signature is correct response = client.get_async_response().data @@ -152,7 +119,7 @@ def test_sign_message_too_long(firmware, backend, navigator, test_name): assert last_response.status == Errors.SW_MESSAGE_TOO_LONG -def test_sign_message_refused(firmware, backend, navigator, test_name): +def test_sign_message_refused(firmware, backend, scenario_navigator, test_name): # Use the app interface instead of raw interface client = KaspaCommandSender(backend) @@ -162,26 +129,10 @@ def test_sign_message_refused(firmware, backend, navigator, test_name): message_data = PersonalMessage(message, address_type, address_index) - if firmware.device.startswith("nano"): + with pytest.raises(ExceptionRAPDU) as e: with client.sign_message(message_data=message_data): - # Disable raising when trying to unpack an error APDU - backend.raise_policy = RaisePolicy.RAISE_NOTHING - navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK, - [NavInsID.BOTH_CLICK], - "Reject", - ROOT_SCREENSHOT_PATH, - test_name) - - assert client.get_async_response().status == Errors.SW_DENY - else: - for i in range(3): - instructions = [NavInsID.USE_CASE_REVIEW_TAP] * i - instructions += [NavInsID.USE_CASE_REVIEW_REJECT, - NavInsID.USE_CASE_CHOICE_CONFIRM, - NavInsID.USE_CASE_STATUS_DISMISS] - with client.sign_message(message_data=message_data): - backend.raise_policy = RaisePolicy.RAISE_NOTHING - navigator.navigate_and_compare(ROOT_SCREENSHOT_PATH, - test_name + f"/part{i}", - instructions) - assert client.get_async_response().status == Errors.SW_DENY \ No newline at end of file + scenario_navigator.review_reject() + + # Assert that we have received a refusal + assert e.value.status == Errors.SW_DENY + assert len(e.value.data) == 0 \ No newline at end of file diff --git a/tests/test_version_cmd.py b/tests/test_version_cmd.py index 3b7d7e8..ebcba95 100644 --- a/tests/test_version_cmd.py +++ b/tests/test_version_cmd.py @@ -4,7 +4,7 @@ # Taken from the Makefile, to update every time the Makefile version is bumped MAJOR = 1 MINOR = 0 -PATCH = 2 +PATCH = 3 # In this test we check the behavior of the device when asked to provide the app version def test_version(backend):