matejcik
e1ce484ba7
feat(python): add a timeout argument to read() from transport
...
also take the opportunity to switch to new style typing annotations
syntax
[no changelog]
2025-03-17 20:16:14 +02:00
Lukas Bielesch
17603ffe41
refactor(python): move Screen Buttons to debuglink
2025-03-12 14:34:25 +01:00
Lukas Bielesch
1eeab2ffd2
chore(tests): consolidate passphrase tests for delizia and bolt
2025-03-12 14:34:25 +01:00
Lukas Bielesch
a4cd4ddaa5
refactor(tests): split buttons module functionality into buttons and actions
2025-03-12 14:34:25 +01:00
Lukas Bielesch
4d52f7805f
refactor(tests): simplify set selection function
2025-03-12 14:34:25 +01:00
Lukas Bielesch
13be2dca24
refactor(tests): modularize tests buttons module based on layout type
2025-03-12 14:34:25 +01:00
Roman Zeyde
301190db4c
chore(python): use pytest-rerunfailures
instead of flaky
...
Since it supports re-running all failures that match certain expressions:
https://github.com/pytest-dev/pytest-rerunfailures?tab=readme-ov-file#re-run-all-failures-matching-certain-expressions
[no changelog]
2025-03-10 23:10:40 +02:00
Martin Milata
244b4f612e
fix(tests): don't wipe logs on emulator restart
...
[no changelog]
2025-03-10 15:06:05 +01:00
Roman Zeyde
f67a506e9c
fix(core): use correct fonts for staking confirmation on Delizia
...
[no changelog]
2025-03-05 12:23:03 +02:00
Roman Zeyde
0d522be842
fix(core): use TEXT_MONO_GREY_LIGHT
for chunkified data on Delizia
...
[no changelog]
2025-03-05 10:35:41 +02:00
Roman Zeyde
7be53c4172
fix(core): update Czech translations for Ethereum
...
* "Přednostní poplatek" -> "Poplatek za prioritu"
* "Zrušit stakování" -> "Zrušit stakování"
[no changelog]
2025-03-04 12:45:21 +02:00
Ioan Bizău
aa52eef34f
chore(core): update fixtures
...
[no changelog]
2025-02-28 14:15:45 +01:00
Ioan Bizău
d0681212b0
fix(core): use BIP-340 to sign Nostr events
...
[no changelog]
2025-02-28 14:15:45 +01:00
Ioan Bizău
073038771e
feat(core): introduce Nostr
...
[no changelog]
2025-02-28 14:15:45 +01:00
Roman Zeyde
1954c7cbc2
feat(core): confirm multiple Solana Deactivate/Withdraw instructions
...
[no changelog]
2025-02-28 13:51:37 +02:00
Roman Zeyde
ee1cc4ae81
fix(core): confirm only visible Solana staking instructions
...
[no changelog]
2025-02-26 15:25:31 +02:00
M1nd3r
8302f70d2a
fix(test): remove print from device test test_singmessage_pagination
...
[no changelog]
2025-02-26 10:47:48 +01:00
obrusvit
b00856a0bb
chore: update fixtures.json
2025-02-26 01:17:11 +01:00
matejcik
5c7986d9b7
fix(tests): remove useless hold-to-confirm for delizia
...
when animations are disabled, hold-to-confirm has zero timeout
2025-02-26 01:17:11 +01:00
Ioan Bizău
6c38f0d63d
feat(core): friendlier way to confirm long messages
2025-02-25 22:51:16 +01:00
Ioan Bizău
64b9084b6c
feat(core/ui): ability to cancel recovery on word count selector
2025-02-25 20:30:39 +01:00
Roman Zeyde
d2165c3eb3
test(core): add test vectors for Solana staking layouts
...
[no changelog]
2025-02-25 11:55:03 +01:00
matejcik
eda9f2b183
chore: fix ethereum fixtures for translations after #4626
2025-02-20 16:09:14 +01:00
matejcik
b119675dd4
chore: update UI fixtures
2025-02-20 16:09:14 +01:00
matejcik
c246ba4994
tests: do not warn about missing translation if the key doesn't exist at all
...
otherwise code like the following raises an useless warning:
>>> try:
>>> value = translate(somekey)
>>> except KeyError:
>>> value = somekey # use a literal value
as seen in click_tests/common.py _get_action_index
2025-02-20 16:09:14 +01:00
matejcik
0453f8b6df
tests: add test for cancel recovery
2025-02-20 16:09:14 +01:00
Ioan Bizău
609e14264f
fix(core/ui): back button
...
[no changelog]
2025-02-19 16:14:08 +01:00
Ioan Bizău
b8e2709ca8
fix(core): fix br_code inconsistency in sign-tx
...
[no changelog]
2025-02-11 16:10:58 +01:00
Ioan Bizău
c8210056da
fix(core/ui): fix back button
...
[no changelog]
2025-02-11 16:10:58 +01:00
Ioan Bizău
d487f97ecf
feat(core): show ETH account info on model T
2025-02-11 16:10:58 +01:00
Roman Zeyde
8b12a77a3b
ci(core): collect debug logs also from multicore
tests
...
Otherwise, tailing and uploading when running `make test_emu_ui_multicore` fail:
https://github.com/trezor/trezor-firmware/actions/runs/13049022289/job/36405211984?pr=4558
[no changelog]
2025-02-11 07:31:21 +01:00
Roman Zeyde
061e71213e
test(core): don't fetch full DebugLinkState
by default
...
In case the main workflow is restarting after a `DebugLinkDecision`,
sending the response of `DebugLinkGetState` may get interrupted.
We are making the state fetching explicit, in order to avoid the
"restart" race condition (as described in #4401 ).
Following the above change, text-based layout recording is removed.
[no changelog]
2025-02-07 11:21:44 +01:00
obrusvit
094c366cf1
chore(core): update fixtures.json
...
[no changelog]
2025-02-06 13:32:29 +01:00
Roman Zeyde
d5078ebde5
test(core): increase test timeout for HW devices
...
[no changelog]
2025-02-05 10:52:46 +01:00
Roman Zeyde
9d1d06218c
test: allow dumping protocol packets via -vvv
...
[no changelog]
2025-01-31 11:07:17 +01:00
Roman Zeyde
a7d7907efd
chore: update translated UI fixtures
...
[no changelog]
2025-01-30 13:26:22 +01:00
Roman Zeyde
c713ce23e9
fix(legacy): fix a minor typo in a warning message
...
[no changelog]
2025-01-29 11:51:41 +02:00
Ondřej Vejpustek
5f1dd83ac2
chore: update fixtures
2025-01-28 14:22:13 +01:00
Ondřej Vejpustek
54c0a30e08
fix(legacy): disallow using per-node paths
2025-01-28 14:22:13 +01:00
Ondřej Vejpustek
2f104ea1fe
feat(legacy): support sortedmulti
2025-01-28 14:22:13 +01:00
Ondřej Vejpustek
0e8c1312bf
feat(legacy): forbid multisig to singlesig change outputs
2025-01-28 14:22:13 +01:00
Ioan Bizău
205a3bee79
chore(core): update fixtures
...
[no changelog]
2025-01-23 12:46:54 +01:00
obrusvit
00740b560c
refactor(core): consistent naming of UI layouts
...
- follow-up on 862c987779
- layout_bolt stays the same
- layout_samson -> layout_caesar
- layout_quicksilver -> layout_delizia
- use super for importing rust modules in layout code
[no changelog]
2025-01-20 12:29:24 +01:00
matejcik
4e852231ab
fix(tests): implement expected responses for entropy check
...
fixes #4464
2025-01-17 11:28:12 +01:00
matejcik
a3fc66f4b6
fix(tests): update tests for newly introduced device.setup()
2025-01-17 11:28:12 +01:00
matejcik
79cc7a9693
style(python): improve type hints for input flows
2025-01-17 11:28:12 +01:00
Ondřej Vejpustek
31fb9528b5
fix(tests): fix minor issues in multisig tests
2025-01-13 16:56:09 +01:00
obrusvit
862c987779
refactor(core): consistent naming of UI layouts
...
- UI layouts name changes:
- model_tt -> layout_bolt
- model_tr -> layout_samson
- model_mercury -> layout_quicksilver
- rust features `model_xyz` freed for different use, now it's
`layout_xyz`
- input_flow function names are based on UI layout and not internal
model name (i.e. quicksilver instead of t3t1)
- directory names and commentary changed accordingly
[no changelog]
2025-01-09 22:57:14 +01:00
Roman Zeyde
367ba7cd5c
fix(legacy): show XPUB using a QR code
...
Similar layout to `fsm_layoutAddress` is used.
Fixes #3043 .
2025-01-09 12:49:24 +01:00
Ondřej Vejpustek
1a62cc8a59
fix(core): fix serialization of signatures and witnesses in multisig
...
[no changelog]
2025-01-02 15:07:25 +01:00
Andrew Kozlik
57868ad48f
chore(core): Update fixtures.
2025-01-02 13:44:36 +01:00
Andrew Kozlik
a4bdd92788
feat(tests): Tests for entropy check workflow in ResetDevice.
2025-01-02 13:44:36 +01:00
Ioan Bizău
f10dc86da2
chore(core): update fixtures
...
[no changelog]
2024-12-20 15:44:43 +02:00
Ioan Bizău
ad06a54d76
chore(core): add test for Slip39_Single
...
[no changelog]
2024-12-20 15:44:43 +02:00
obrusvit
677d62bed8
chore: update fixtures.json
...
[no changelog]
2024-12-19 00:09:20 +01:00
Lukas Bielesch
75ee4dc7a7
chore(core): turn labeling click test into device test
2024-12-12 18:46:57 +01:00
Lukas Bielesch
6de0e5de0f
chore(core): change display orientation labels [no changelog]
2024-12-09 15:03:57 +01:00
obrusvit
af6240b52c
refactor(core): model_r confirm_summary
...
- altcoin_tx_summary removed and replaced with confirm_summary
[no changelog]
2024-12-04 14:47:53 +01:00
Ioan Bizău
13df961317
refactor(core/ui): introduce show_danger
...
This is a unified interface for flow_warning_hi_prio,
which was available only on Mercury before.
[no changelog]
2024-12-02 22:28:00 +01:00
obrusvit
b915753aa3
chore: update fixtures for other langs
...
[no changelog]
2024-12-02 17:56:46 +01:00
Ondřej Vejpustek
e77477cb46
chore: update fixtures
2024-12-02 12:21:24 +01:00
Ondřej Vejpustek
ae32a23002
fix(core): disallow per-node paths in change outputs
2024-12-02 12:21:24 +01:00
Ondřej Vejpustek
45a029edcc
fix(core): disallow per-node paths in getaddress
2024-12-02 12:21:24 +01:00
Ondřej Vejpustek
4a1127620d
refactor(tests): use same path in per-node specification
2024-12-02 12:21:24 +01:00
Ondřej Vejpustek
1e2031674c
feat(test): test sortedmulti
2024-12-02 12:21:24 +01:00
Ondřej Vejpustek
4dce3d0099
feat(core):: support sortedmulti
2024-12-02 12:21:24 +01:00
Ondřej Vejpustek
0a9c4ba4ec
feat(core)): forbid multisig to singlesig change outputs
2024-12-02 12:21:24 +01:00
Ondřej Vejpustek
c21c6d4474
refactor(test): use forged mainnet transactions
2024-12-02 12:21:24 +01:00
Ondřej Vejpustek
8db5ef94af
refactor(test): refactor device test
2024-12-02 12:21:24 +01:00
Ondřej Vejpustek
f3983486d1
feat(core): remove deprecated path
2024-12-02 12:21:24 +01:00
Ioan Bizău
c44f901a97
chore(core): update fixtures
2024-11-26 22:38:06 +01:00
Ioan Bizău
dbd5b62272
feat(core/ui): continue after viewing all data
2024-11-26 22:38:06 +01:00
Lukáš Bielesch
ebc302959b
fix(core): fix broken flow for changing brightness [no changelog] ( #4378 )
...
* fix(core): fix broken flow for changing brightness [no changelog]
* fixup! fix(core): fix broken flow for changing brightness [no changelog]
* fixup! fix(core): fix broken flow for changing brightness [no changelog]
* fixup! fix(core): fix broken flow for changing brightness [no changelog]
* fixup! fix(core): fix broken flow for changing brightness [no changelog]
* fixup! fix(core): fix broken flow for changing brightness [no changelog]
2024-11-26 19:35:40 +01:00
obrusvit
6f7fccaac2
fix(core/mercury): info at bitcoin signmessage
2024-11-26 16:23:50 +01:00
matejcik
50447de878
chore(tests): fix deprecation warning
2024-11-25 13:32:13 +01:00
matejcik
ae3d8263b9
refactor(tests): rework Model.TR "go to right key" logic
...
this changes UI tests because in edge cases the carousel goes the other
(shorter) way
2024-11-25 13:32:13 +01:00
matejcik
4a266d8bf1
feat(tests): raise a warning for a translation not found in language
...
we need to propagate stacklevel so that the warning is emitted at the
usage line instead of deep in translations.py
i mean
we don't _need_ need to
it's just nicer
2024-11-25 13:32:13 +01:00
matejcik
8a1c15fd94
feat(tests): simplify asserts on translated strings
2024-11-25 13:32:13 +01:00
Ioan Bizău
f69a0f6d7d
chore(core): update fixtures
2024-11-19 13:36:01 +02:00
Ioan Bizău
777907ab3b
refactor(core): drop confirm_blob_with_optional_pagination
...
Commit c300576d6c
introduced
`confirm_blob_with_optional_pagination` which proved to be unpopular and
impractical. This commit brings back the old behaviour of having the
`ask_pagination` parameter on `confirm_blob`. It also reverts back to
using the old way of paginating `confirm_blob` on model R, which the
aforementioned commit ignored and re-implemented from scratch.
[no changelog]
2024-11-19 13:36:01 +02:00
Lukas Bielesch
b9f5e2b409
chore(core): show the last pin digit for a while
2024-11-18 14:05:04 +01:00
Lukas Bielesch
a4da695430
chore(core): Use enum for for dealing with device rotations
2024-11-13 11:08:56 +01:00
obrusvit
8912686a22
fix(tests): remove lang asserts from click slip39
...
- some non-english texts do not fit on the screen and are paginated,
these tests cannot handle it
- commented out not to block GFL PR, to be resolved later
2024-11-12 16:55:17 +01:00
matejcik
fa46dddbef
chore: update fixtures for translations
2024-11-12 16:55:17 +01:00
obrusvit
92951303ba
fix(tests): show_multisig title assertions
2024-11-12 16:55:17 +01:00
matejcik
4819a8ce31
chore: update fixtures
2024-11-12 16:55:17 +01:00
matejcik
3769024920
fix(core): patch over problems with confirm_blob_pagination
2024-11-12 16:55:17 +01:00
matejcik
b2328a4e28
chore: update fixtures
2024-11-12 16:55:17 +01:00
matejcik
35be52e31e
fix(tests): patch over confirm_blob buttonrequest problems
2024-11-12 16:55:17 +01:00
matejcik
3a8f92f64d
tests(core): fix upgrade tests
2024-11-12 16:55:17 +01:00
Martin Milata
ea815eba93
test(core): fix test_reset_bip39_t2
...
[no changelog]
2024-11-12 16:55:17 +01:00
obrusvit
4b53a3ea9d
fix(tests): fix T3B1 persistance test
2024-11-12 16:55:17 +01:00
obrusvit
a22f1d3760
fix(tests): assert multiple in slip39 checklist
2024-11-12 16:55:17 +01:00
matejcik
e199d2bcaf
fix(tests): fix persistence tests, enable T3B1
2024-11-12 16:55:17 +01:00
matejcik
31958b7fb8
fix(core): restore ellipsis functionality on TR
2024-11-12 16:55:17 +01:00
matejcik
d4423b3569
fix(tests): correctly check that backup flow was aborted
2024-11-12 16:55:17 +01:00
matejcik
fbc2c828ec
fix(tests): do not place recorded.zip into the destdir
...
instead, download it to a temp location, as the Prophecy (and authors of
urlretrieve) foretold
2024-11-12 16:55:17 +01:00
matejcik
73c8149528
fix(tests): do not trip deadlock detection in autolock test
2024-11-12 16:55:17 +01:00
matejcik
b6b827cf7b
chore: update fixtures
2024-11-12 16:55:17 +01:00
matejcik
a4bd771e3b
style: fix style problems
2024-11-12 16:55:17 +01:00
matejcik
12cf208237
fix(tests): stop waiting for background task after a timeout
...
Otherwise a test can hang if the result is not returned. This is not
even covered by pytest-timeout because if a test fails, the call to
task.kill() happens during teardown, and pytest-timeout doesn't cover
that.
2024-11-12 16:55:17 +01:00
matejcik
f4240d6309
chore(python): improve recovery type deprecation warning
2024-11-12 16:55:17 +01:00
matejcik
d385667b4a
fix(tests): restore test functionality on legacy
...
The global layout related changes were wrong for T1 where debuglink
behavior is significantly different; in particular, it is not always
possible to communicate over debuglink.
This change reverts to the old behavior for T1B1 and keeps the new one
only for core-based models.
2024-11-12 16:55:17 +01:00
matejcik
617db52f43
feat(tests): sync received responses
...
to prevent "unexpected response to Initialize" errors
2024-11-12 16:55:17 +01:00
matejcik
11ae7a92ab
style: fix complaining lints & formatters
2024-11-12 16:55:17 +01:00
matejcik
adc9b523be
tests: fix small irregularities
2024-11-12 16:55:17 +01:00
matejcik
82290c2e5c
tests: use read_layout everywhere
2024-11-12 16:55:17 +01:00
matejcik
0e8dcbb498
feat(core): unify RustLayout, implement single global layout
2024-11-12 16:55:17 +01:00
Lukas Bielesch
7a61d8e858
chore(core) Translate hard-coded 'Enable labeling' string
2024-11-06 18:34:05 +01:00
Martin Milata
3897bc8d72
fix(tests): make update_fixtures.py fetch legacy fixtures
2024-11-05 18:56:03 +01:00
Ioan Bizău
461664ebfa
chore(core/translations): update fixtures
...
[no changelog]
2024-11-04 17:10:01 +02:00
Ioan Bizău
dfdd44becb
chore(core/translations): update fixtures
...
[no changelog]
2024-11-02 18:40:53 +01:00
obrusvit
2396e10fbb
fix(cardano): do not show paths while staking
...
Confirming "Withdraw" and "Delegate" is not accompanied by confirming
derivation paths after the transaction has been already signed.
[no changelog]
2024-10-31 22:02:01 +01:00
Ioan Bizău
c300576d6c
feat(core/ethereum): new ETH contract flow
2024-10-30 17:25:48 +02:00
obrusvit
2e0e8eb39b
chore: update fixtures
2024-10-30 09:15:10 +01:00
obrusvit
16a8d504e2
test(cardano): allow tests with details on mercury
2024-10-30 09:15:10 +01:00
obrusvit
ab9381cea9
chore: update fixtures
...
[no changelog]
2024-10-30 00:51:19 +01:00
obrusvit
3f1d2059ca
chore(core): update fixtures
2024-10-10 19:14:16 +02:00
Ioan Bizău
774f9de745
chore(core/translations): shorten some menu item translations
...
[no changelog]
2024-10-02 10:55:45 +03:00
Ioan Bizău
69100c0755
feat(core/ui): allow two lines of text in menu items
2024-10-02 10:55:45 +03:00
Ioan Bizău
a59ded586e
chore(core/translations): shorten a couple of menu item translations
...
[no changelog]
2024-09-24 11:57:34 +03:00
Ioan Bizău
6da38f4cf3
feat(core): show account info in ETH send/stake flow
2024-09-24 11:57:34 +03:00
tychovrahe
fbbbd317c3
chore(core): update fixtures to new rendering
...
[no changelog]
2024-09-17 17:46:11 +02:00
Ioan Bizău
2d594446eb
chore(core): update fixtures
...
[no changelog]
2024-09-17 01:44:20 +02:00
Ioan Bizău
1c7bfdb04c
refactor(core): use a template to add colon to strings
...
[no changelog]
2024-09-17 01:44:20 +02:00
Ioan Bizău
4e0851d01b
fix(core/ethereum): use BIP44 variant to detect ETH account #
2024-09-16 11:14:05 +03:00
Martin Milata
2f1ad766d0
ci: remove Italian from the list of UI tests
...
Also remove Turkish fixtures.
[no changelog]
2024-09-13 23:31:59 +02:00
obrusvit
598039434c
chore: update fixtures.json
2024-09-12 21:26:45 +02:00
matejcik
b9a104d2ac
fix(tests): python >=3.11 compatibility for identifiers
...
Python 3.11 changed IntEnum.__str__ to return the number instead of the
enum value name. This breaks fixtures.json because pytest uses
str(value) to generate the test identifier names, and in a lot of places
our identifiers use the enum values.
This override of `_idval_from_value` explicitly generates a name from
the IntEnum instead of using the __str__ implementation.
2024-09-12 09:36:13 +02:00
matejcik
8129086aa7
chore: upgrade pytest
...
to get rid of python 3.14 deprecation warnings
2024-09-12 09:36:13 +02:00
matejcik
eda8c72b3a
feat(tests): flip the default service for update_fixtures.py ci
to github
...
now that we don't really use gitlab anymore
2024-09-11 12:59:04 +02:00
matejcik
475673e894
feat(tests): use trezorlib's builtin model list to fetch the pipelines
...
this includes D001 / D002, that probably doesn't matter
2024-09-11 12:59:04 +02:00
matejcik
c31819b53f
chore(tests): upgrade T2B1 to T3B1 for UI master-comparison
2024-09-11 12:59:04 +02:00
matejcik
d21af2a47f
tests: rework tutorial tests
...
complicated flows that _do not accomplish results_ do not belong into
device_tests, so I moved them to click_tests and added stronger assert
system
2024-09-11 12:59:04 +02:00
matejcik
17706540b5
chore(tests/ui_tests): screenshots for T3B1 should also be pixelated
2024-09-11 12:59:04 +02:00
matejcik
b3bd85b1fb
refactor(tests): introduce a better model selection mechanism
2024-09-11 12:59:04 +02:00
matejcik
37d8649d5d
tests: flip T2B1 pipelines to T3B1
2024-09-11 12:59:04 +02:00
JoeGruff
d2a2ac2178
decred: Add input_derive_script.
...
Decred shares code with bitcoin and a recent change broke signing stake
based inputs. Add decred specific script construction and fix tests.
2024-09-06 10:52:47 +02:00
Martin Milata
777ad11bec
feat(core/translations): add it, pt
...
Partially added TR.
2024-09-03 21:58:09 +02:00
Ioan Bizău
423f159794
chore(core): update fixtures and fix style
2024-09-03 18:59:53 +03:00
obrusvit
3de7256103
chore(core/mercury): fix UI test for everstake
...
[no changelog]
2024-09-03 18:59:53 +03:00
obrusvit
c5f9fadbd1
fix(core/mercury): show remaining shares
...
This commit enables showing "Remaining shares" from the context menu
during recovery process. This is only shown during super-shamir.
2024-09-03 14:20:34 +02:00
matejcik
234c065aae
chore(core): support T3B1 for translation blobs
2024-09-03 10:35:14 +02:00
Martin Milata
7c8be6f0ea
fix(core/ui/mercury): FIDO2 layouts
2024-09-02 19:36:25 +02:00
obrusvit
9e18e72a2c
feat(core): ask for 20/33 words to unlock backup
...
Unlocking repeated backup is only possible with SLIP-39 extendable
backup which contains shares of 20 or 33 words. It is UI bug to have the
user choose from all options (12, 18, 20, 24, 33). This commit reduces
the choices when unlocking repeated backup to (20, 33) for all models.
2024-08-29 16:01:13 +02:00
Jan Komarek
94a7ff5d32
chore(common): remove ropsten and rinkeby from fixtures
2024-08-28 16:15:35 +02:00
obrusvit
f0989e20b8
fix(core/ui): fix persistent word during recovery
...
Remove the current word from recovery progress if a user goes to
previous word.
[no changelog]
2024-08-28 14:33:02 +02:00
obrusvit
65d3fd00f1
fix(core/ui): fix mnemonic keys availability
...
This commit disables keys of mnemonic keyboard if their press cannot
lead to a valid word if the keyboard is initialized with a pre-filled
word. This is useful to get valid keyboard state when going to a
previous word during recovery.
[no changelog]
2024-08-28 14:33:02 +02:00
obrusvit
e2022db8fa
feat(core/mercury): use less severe icon color
...
Not using danger color during onboarding.
[no changelog]
2024-08-28 14:21:07 +02:00
Andrew Kozlik
2a567f3a0c
feat: Remove display_random feature.
2024-08-27 19:33:23 +02:00