From 7a608c49df5de405d7be691732acb022387cdf57 Mon Sep 17 00:00:00 2001 From: Charles-Edouard de la Vergne Date: Thu, 28 Mar 2024 16:20:09 +0100 Subject: [PATCH] Port 'test_eip2930' from 'speculos' to 'ragger' --- .../nanos/test_sign_eip_2930}/00000.png | Bin .../nanos/test_sign_eip_2930}/00001.png | Bin .../nanos/test_sign_eip_2930}/00002.png | Bin .../nanos/test_sign_eip_2930}/00003.png | Bin .../nanos/test_sign_eip_2930}/00004.png | Bin .../nanos/test_sign_eip_2930}/00005.png | Bin .../nanos/test_sign_eip_2930}/00006.png | Bin .../nanos/test_sign_eip_2930}/00007.png | Bin .../nanos/test_sign_eip_2930/00008.png | Bin 0 -> 349 bytes .../snapshots/nanosp/test_sign_eip_2930 | 1 + .../nanox/test_sign_eip_2930}/00000.png | Bin .../nanox/test_sign_eip_2930}/00001.png | Bin .../nanox/test_sign_eip_2930}/00002.png | Bin .../nanox/test_sign_eip_2930}/00003.png | Bin .../nanox/test_sign_eip_2930}/00004.png | Bin .../nanox/test_sign_eip_2930}/00005.png | Bin .../nanox/test_sign_eip_2930/00006.png | Bin 0 -> 381 bytes .../stax/test_sign_eip_2930/00000.png | Bin 0 -> 8049 bytes .../stax/test_sign_eip_2930/00001.png | Bin 0 -> 16741 bytes .../stax/test_sign_eip_2930/00002.png | Bin 0 -> 7960 bytes .../stax/test_sign_eip_2930/00003.png | Bin 0 -> 8982 bytes .../stax/test_sign_eip_2930/00004.png | Bin 0 -> 6108 bytes tests/ragger/test_eip2930.py | 62 +++++++++++++++ tests/speculos/test_eip2930.py | 72 ------------------ 24 files changed, 63 insertions(+), 72 deletions(-) rename tests/{speculos/screenshots/eip2930/nanos/sign_eip_2930 => ragger/snapshots/nanos/test_sign_eip_2930}/00000.png (100%) rename tests/{speculos/screenshots/eip2930/nanos/sign_eip_2930 => ragger/snapshots/nanos/test_sign_eip_2930}/00001.png (100%) rename tests/{speculos/screenshots/eip2930/nanos/sign_eip_2930 => ragger/snapshots/nanos/test_sign_eip_2930}/00002.png (100%) rename tests/{speculos/screenshots/eip2930/nanos/sign_eip_2930 => ragger/snapshots/nanos/test_sign_eip_2930}/00003.png (100%) rename tests/{speculos/screenshots/eip2930/nanos/sign_eip_2930 => ragger/snapshots/nanos/test_sign_eip_2930}/00004.png (100%) rename tests/{speculos/screenshots/eip2930/nanos/sign_eip_2930 => ragger/snapshots/nanos/test_sign_eip_2930}/00005.png (100%) rename tests/{speculos/screenshots/eip2930/nanos/sign_eip_2930 => ragger/snapshots/nanos/test_sign_eip_2930}/00006.png (100%) rename tests/{speculos/screenshots/eip2930/nanos/sign_eip_2930 => ragger/snapshots/nanos/test_sign_eip_2930}/00007.png (100%) create mode 100644 tests/ragger/snapshots/nanos/test_sign_eip_2930/00008.png create mode 120000 tests/ragger/snapshots/nanosp/test_sign_eip_2930 rename tests/{speculos/screenshots/eip2930/nanox/sign_eip_2930 => ragger/snapshots/nanox/test_sign_eip_2930}/00000.png (100%) rename tests/{speculos/screenshots/eip2930/nanox/sign_eip_2930 => ragger/snapshots/nanox/test_sign_eip_2930}/00001.png (100%) rename tests/{speculos/screenshots/eip2930/nanox/sign_eip_2930 => ragger/snapshots/nanox/test_sign_eip_2930}/00002.png (100%) rename tests/{speculos/screenshots/eip2930/nanox/sign_eip_2930 => ragger/snapshots/nanox/test_sign_eip_2930}/00003.png (100%) rename tests/{speculos/screenshots/eip2930/nanox/sign_eip_2930 => ragger/snapshots/nanox/test_sign_eip_2930}/00004.png (100%) rename tests/{speculos/screenshots/eip2930/nanox/sign_eip_2930 => ragger/snapshots/nanox/test_sign_eip_2930}/00005.png (100%) create mode 100644 tests/ragger/snapshots/nanox/test_sign_eip_2930/00006.png create mode 100644 tests/ragger/snapshots/stax/test_sign_eip_2930/00000.png create mode 100644 tests/ragger/snapshots/stax/test_sign_eip_2930/00001.png create mode 100644 tests/ragger/snapshots/stax/test_sign_eip_2930/00002.png create mode 100644 tests/ragger/snapshots/stax/test_sign_eip_2930/00003.png create mode 100644 tests/ragger/snapshots/stax/test_sign_eip_2930/00004.png create mode 100644 tests/ragger/test_eip2930.py delete mode 100644 tests/speculos/test_eip2930.py diff --git a/tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00000.png b/tests/ragger/snapshots/nanos/test_sign_eip_2930/00000.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00000.png rename to tests/ragger/snapshots/nanos/test_sign_eip_2930/00000.png diff --git a/tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00001.png b/tests/ragger/snapshots/nanos/test_sign_eip_2930/00001.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00001.png rename to tests/ragger/snapshots/nanos/test_sign_eip_2930/00001.png diff --git a/tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00002.png b/tests/ragger/snapshots/nanos/test_sign_eip_2930/00002.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00002.png rename to tests/ragger/snapshots/nanos/test_sign_eip_2930/00002.png diff --git a/tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00003.png b/tests/ragger/snapshots/nanos/test_sign_eip_2930/00003.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00003.png rename to tests/ragger/snapshots/nanos/test_sign_eip_2930/00003.png diff --git a/tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00004.png b/tests/ragger/snapshots/nanos/test_sign_eip_2930/00004.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00004.png rename to tests/ragger/snapshots/nanos/test_sign_eip_2930/00004.png diff --git a/tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00005.png b/tests/ragger/snapshots/nanos/test_sign_eip_2930/00005.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00005.png rename to tests/ragger/snapshots/nanos/test_sign_eip_2930/00005.png diff --git a/tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00006.png b/tests/ragger/snapshots/nanos/test_sign_eip_2930/00006.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00006.png rename to tests/ragger/snapshots/nanos/test_sign_eip_2930/00006.png diff --git a/tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00007.png b/tests/ragger/snapshots/nanos/test_sign_eip_2930/00007.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanos/sign_eip_2930/00007.png rename to tests/ragger/snapshots/nanos/test_sign_eip_2930/00007.png diff --git a/tests/ragger/snapshots/nanos/test_sign_eip_2930/00008.png b/tests/ragger/snapshots/nanos/test_sign_eip_2930/00008.png new file mode 100644 index 0000000000000000000000000000000000000000..ce795f34e8569e986af689fded3b59c9a8af2961 GIT binary patch literal 349 zcmV-j0iyniP)O41}p;-~WL<=z+0=1Om1tEU@3H#qtw22}5*_5JCvCo4!52c$FXo$VhXU?0M$^Bekqgf%Ka;M*^X|4 zEs9YCQ(xfJKmNC#+8dY%2&wT+>D^<3C%}_*k1^mvtO~`RE00000NkvXXu0mjf-kqOA literal 0 HcmV?d00001 diff --git a/tests/ragger/snapshots/nanosp/test_sign_eip_2930 b/tests/ragger/snapshots/nanosp/test_sign_eip_2930 new file mode 120000 index 0000000..9ce6536 --- /dev/null +++ b/tests/ragger/snapshots/nanosp/test_sign_eip_2930 @@ -0,0 +1 @@ +../nanox/test_sign_eip_2930 \ No newline at end of file diff --git a/tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00000.png b/tests/ragger/snapshots/nanox/test_sign_eip_2930/00000.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00000.png rename to tests/ragger/snapshots/nanox/test_sign_eip_2930/00000.png diff --git a/tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00001.png b/tests/ragger/snapshots/nanox/test_sign_eip_2930/00001.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00001.png rename to tests/ragger/snapshots/nanox/test_sign_eip_2930/00001.png diff --git a/tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00002.png b/tests/ragger/snapshots/nanox/test_sign_eip_2930/00002.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00002.png rename to tests/ragger/snapshots/nanox/test_sign_eip_2930/00002.png diff --git a/tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00003.png b/tests/ragger/snapshots/nanox/test_sign_eip_2930/00003.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00003.png rename to tests/ragger/snapshots/nanox/test_sign_eip_2930/00003.png diff --git a/tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00004.png b/tests/ragger/snapshots/nanox/test_sign_eip_2930/00004.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00004.png rename to tests/ragger/snapshots/nanox/test_sign_eip_2930/00004.png diff --git a/tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00005.png b/tests/ragger/snapshots/nanox/test_sign_eip_2930/00005.png similarity index 100% rename from tests/speculos/screenshots/eip2930/nanox/sign_eip_2930/00005.png rename to tests/ragger/snapshots/nanox/test_sign_eip_2930/00005.png diff --git a/tests/ragger/snapshots/nanox/test_sign_eip_2930/00006.png b/tests/ragger/snapshots/nanox/test_sign_eip_2930/00006.png new file mode 100644 index 0000000000000000000000000000000000000000..657887225857cf48be8a8daed2cb3e89d4b29ece GIT binary patch literal 381 zcmeAS@N?(olHy`uVBq!ia0vp^4M6O`!2~2@x4h6`U|@9dba4!+nDh2#G~Xcw0f)e( zJDk7cg{nU`wU4`s1;0 z?{f>9Zfbf|_00eLCwPudd#p2Mzfg8-=Z~Y&(Z3(6-dSPln_e}2 z&8bJe=5=w3_V0Wxpw!uqXV@ zTyg#0l&4R7|Ayyoo}1J3WZRs6lez;p_x-s3`O4ERHjEo5Zk@S4@1z`Oka)v{pj(C~ z>TB;CrkB0D2@>;k^>bP0l+XkKqsFS~ literal 0 HcmV?d00001 diff --git a/tests/ragger/snapshots/stax/test_sign_eip_2930/00000.png b/tests/ragger/snapshots/stax/test_sign_eip_2930/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..10cc825240934fcf573ac51303a58d8e31ea020f GIT binary patch literal 8049 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 literal 0 HcmV?d00001 diff --git a/tests/ragger/snapshots/stax/test_sign_eip_2930/00001.png b/tests/ragger/snapshots/stax/test_sign_eip_2930/00001.png new file mode 100644 index 0000000000000000000000000000000000000000..7009de19e6f229e5bd5d5ea9879c6a517aadba32 GIT binary patch literal 16741 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 literal 0 HcmV?d00001 diff --git a/tests/ragger/snapshots/stax/test_sign_eip_2930/00002.png b/tests/ragger/snapshots/stax/test_sign_eip_2930/00002.png new file mode 100644 index 0000000000000000000000000000000000000000..a27b17e42ef019ecf28a0d74a46e699cfb5fa681 GIT binary patch literal 7960 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 literal 0 HcmV?d00001 diff --git a/tests/ragger/snapshots/stax/test_sign_eip_2930/00003.png b/tests/ragger/snapshots/stax/test_sign_eip_2930/00003.png new file mode 100644 index 0000000000000000000000000000000000000000..c47bf6c29696d5abf2bedb760ed6bd6153291b95 GIT binary patch literal 8982 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