ragger 1.40.2__py3-none-any.whl → 1.40.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
ragger/__version__.py CHANGED
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '1.40.2'
32
- __version_tuple__ = version_tuple = (1, 40, 2)
31
+ __version__ = version = '1.40.4'
32
+ __version_tuple__ = version_tuple = (1, 40, 4)
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -19,17 +19,24 @@ class NavigationScenarioData:
19
19
  dismiss_warning: Sequence[InstructionType]
20
20
  pattern: str = ""
21
21
 
22
- def __init__(self, device: Device, backend: BackendInterface, use_case: UseCase, approve: bool):
22
+ def __init__(self,
23
+ device: Device,
24
+ backend: BackendInterface,
25
+ use_case: UseCase,
26
+ approve: bool,
27
+ nb_warnings: int = 1):
23
28
  if device.is_nano:
24
29
  self.navigation = NavInsID.RIGHT_CLICK
25
30
  self.validation = [NavInsID.BOTH_CLICK]
26
31
 
27
32
  if backend.sdk_graphics == GraphicalLibrary.BAGL:
28
- self.dismiss_warning = [NavInsID.RIGHT_CLICK]
33
+ self.dismiss_warning = [NavInsID.RIGHT_CLICK] * nb_warnings
29
34
  # Legacy navigation scenario when running an App compiled with bagl sdk library
30
35
  self.pattern = r"^(Accept risk|Accept|Approve|Sign|Confirm)$" if approve else r"^(Cancel|Reject)$"
31
36
  else:
32
- self.dismiss_warning = [NavInsID.BOTH_CLICK]
37
+ self.dismiss_warning = []
38
+ self.dismiss_warning += [NavInsID.RIGHT_CLICK] * (nb_warnings - 1)
39
+ self.dismiss_warning += [NavInsID.BOTH_CLICK]
33
40
  # navigation scenario when running an App compiled with nbgl sdk library
34
41
  if use_case == UseCase.ADDRESS_CONFIRMATION:
35
42
  self.pattern = r"^(Accept risk|Accept|Approve|Sign|Confirm)$" if approve else r"^(Cancel|Reject)$"
@@ -54,7 +61,7 @@ class NavigationScenarioData:
54
61
 
55
62
  elif device.touchable:
56
63
  self.navigation = NavInsID.SWIPE_CENTER_TO_LEFT
57
- self.dismiss_warning = [NavInsID.USE_CASE_CHOICE_REJECT]
64
+ self.dismiss_warning = [NavInsID.USE_CASE_CHOICE_REJECT] * nb_warnings
58
65
 
59
66
  if use_case == UseCase.ADDRESS_CONFIRMATION:
60
67
  if approve:
@@ -133,10 +140,7 @@ class NavigateWithScenario:
133
140
  test_name: Optional[str] = None,
134
141
  custom_screen_text: Optional[str] = None,
135
142
  do_comparison: bool = True):
136
- scenario = NavigationScenarioData(self.device,
137
- self.backend,
138
- UseCase.TX_REVIEW,
139
- approve=True)
143
+ scenario = NavigationScenarioData(self.device, self.backend, UseCase.TX_REVIEW, True)
140
144
  self._navigate_with_scenario(scenario, path, test_name, custom_screen_text, do_comparison)
141
145
 
142
146
  def review_approve_with_warning(self,
@@ -144,11 +148,10 @@ class NavigateWithScenario:
144
148
  test_name: Optional[str] = None,
145
149
  custom_screen_text: Optional[str] = None,
146
150
  do_comparison: bool = True,
147
- warning_path: str = "warning"):
148
- scenario = NavigationScenarioData(self.device,
149
- self.backend,
150
- UseCase.TX_REVIEW,
151
- approve=True)
151
+ warning_path: str = "warning",
152
+ nb_warnings: int = 1):
153
+ scenario = NavigationScenarioData(self.device, self.backend, UseCase.TX_REVIEW, True,
154
+ nb_warnings)
152
155
  self._navigate_warning(scenario, test_name, do_comparison, warning_path)
153
156
  self._navigate_with_scenario(scenario, path, test_name, custom_screen_text, do_comparison)
154
157
 
@@ -157,10 +160,7 @@ class NavigateWithScenario:
157
160
  test_name: Optional[str] = None,
158
161
  custom_screen_text: Optional[str] = None,
159
162
  do_comparison: bool = True):
160
- scenario = NavigationScenarioData(self.device,
161
- self.backend,
162
- UseCase.TX_REVIEW,
163
- approve=False)
163
+ scenario = NavigationScenarioData(self.device, self.backend, UseCase.TX_REVIEW, False)
164
164
  self._navigate_with_scenario(scenario, path, test_name, custom_screen_text, do_comparison)
165
165
 
166
166
  def review_reject_with_warning(self,
@@ -168,11 +168,10 @@ class NavigateWithScenario:
168
168
  test_name: Optional[str] = None,
169
169
  custom_screen_text: Optional[str] = None,
170
170
  do_comparison: bool = True,
171
- warning_path: str = "warning"):
172
- scenario = NavigationScenarioData(self.device,
173
- self.backend,
174
- UseCase.TX_REVIEW,
175
- approve=False)
171
+ warning_path: str = "warning",
172
+ nb_warnings: int = 1):
173
+ scenario = NavigationScenarioData(self.device, self.backend, UseCase.TX_REVIEW, False,
174
+ nb_warnings)
176
175
  self._navigate_warning(scenario, test_name, do_comparison, warning_path)
177
176
  self._navigate_with_scenario(scenario, path, test_name, custom_screen_text, do_comparison)
178
177
 
@@ -181,10 +180,8 @@ class NavigateWithScenario:
181
180
  test_name: Optional[str] = None,
182
181
  custom_screen_text: Optional[str] = None,
183
182
  do_comparison: bool = True):
184
- scenario = NavigationScenarioData(self.device,
185
- self.backend,
186
- UseCase.ADDRESS_CONFIRMATION,
187
- approve=True)
183
+ scenario = NavigationScenarioData(self.device, self.backend, UseCase.ADDRESS_CONFIRMATION,
184
+ True)
188
185
  self._navigate_with_scenario(scenario, path, test_name, custom_screen_text, do_comparison)
189
186
 
190
187
  def address_review_reject(self,
@@ -192,8 +189,6 @@ class NavigateWithScenario:
192
189
  test_name: Optional[str] = None,
193
190
  custom_screen_text: Optional[str] = None,
194
191
  do_comparison: bool = True):
195
- scenario = NavigationScenarioData(self.device,
196
- self.backend,
197
- UseCase.ADDRESS_CONFIRMATION,
198
- approve=False)
192
+ scenario = NavigationScenarioData(self.device, self.backend, UseCase.ADDRESS_CONFIRMATION,
193
+ False)
199
194
  self._navigate_with_scenario(scenario, path, test_name, custom_screen_text, do_comparison)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ragger
3
- Version: 1.40.2
3
+ Version: 1.40.4
4
4
  Summary: Testing framework using Speculos and LedgerComm as backends
5
5
  Author-email: Ledger <hello@ledger.fr>
6
6
  Project-URL: Homepage, https://github.com/LedgerHQ/ragger
@@ -1,5 +1,5 @@
1
1
  ragger/__init__.py,sha256=Vbk78M7VtDVMTu02zYQquYSTxtgbieknkvr3uXONrig,713
2
- ragger/__version__.py,sha256=Z9aoyacmdje2YubJDExk_gJWBBMLN0rn9j-bAphxCqg,706
2
+ ragger/__version__.py,sha256=ADu03uY4uf45DUBXt8SOLnUr7Anq23Yo77JHAUgSgiQ,706
3
3
  ragger/error.py,sha256=kd9yldPMis080jID6QjyDiCh7TDAVUtF5eczUH5pcKw,1251
4
4
  ragger/logger.py,sha256=XF3DsHDLGOHAG7cqVj_7BQlHKj9J8zw8A9soFHIydc8,2457
5
5
  ragger/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -43,15 +43,15 @@ ragger/gui/assets/touch_action.png,sha256=E3rTXz6NgPH1UqxaTwVzC9doK-i3nZZMkwb_Zd
43
43
  ragger/navigator/__init__.py,sha256=AJSPE4k4Cu_v1NqeBnClMu-tAvQ_A6YXFTCy5TuVvxI,950
44
44
  ragger/navigator/instruction.py,sha256=l1-0KBDnoDpz_G5AUDEw8UDOsf3TphTm5Jy412TsY7w,2652
45
45
  ragger/navigator/nano_navigator.py,sha256=D-00Vytb9bsOFsf4nn7BPqlS1d5K7UB9PLjozmdYpuk,1674
46
- ragger/navigator/navigation_scenario.py,sha256=6TnR7-wIuju0erLMYXu-rJPGny9cr-7GdFKRdyEc4YY,9766
46
+ ragger/navigator/navigation_scenario.py,sha256=EY31uNp3hkMm8kVmvQEZvnjcw9ymDxHDZhIGrf3MdIM,9532
47
47
  ragger/navigator/navigator.py,sha256=ZT2smrw0Xz5XXhz2cZ3DJjbG4NwwQnCrQwvarbjZPTc,29146
48
48
  ragger/navigator/touch_navigator.py,sha256=k3PNaQ9sjfz4qFm-QuNPbnIJLXiICb_LeLbqnfjgdGM,5018
49
49
  ragger/utils/__init__.py,sha256=PUabSv1qx0XyKWovIxvGBI71sd3O3bKp3gCsUxlWm1E,997
50
50
  ragger/utils/misc.py,sha256=_ft_CrwEcZ-VVZCBG-_QjYQuTZn-Fht36k3C6BXhHOs,6930
51
51
  ragger/utils/packing.py,sha256=2xaRR-FhwVfknP74ZGo-O4JTE6R0HpNqhxKJ9aMrns4,766
52
52
  ragger/utils/structs.py,sha256=JMfuX5u-4gSZfqH0SER05B15-mj0YyHjnxLAgxAYtAM,1413
53
- ragger-1.40.2.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
54
- ragger-1.40.2.dist-info/METADATA,sha256=8xeL2IT582anKoHT3fxPpghV7enCJQE4caPJ5z8BPFQ,10660
55
- ragger-1.40.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
56
- ragger-1.40.2.dist-info/top_level.txt,sha256=kqJEoAZ6qn0T3iuVa-710gBK7Ik1euCwNwBbyFraRQg,7
57
- ragger-1.40.2.dist-info/RECORD,,
53
+ ragger-1.40.4.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
54
+ ragger-1.40.4.dist-info/METADATA,sha256=FO-46eXbyfrCpCyAdaQUnicWHow4ZFAHlzu1KSmq5_g,10660
55
+ ragger-1.40.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
56
+ ragger-1.40.4.dist-info/top_level.txt,sha256=kqJEoAZ6qn0T3iuVa-710gBK7Ik1euCwNwBbyFraRQg,7
57
+ ragger-1.40.4.dist-info/RECORD,,