chore(test): add payment requests test case used in connect-e2e tests [no changelog]
What changed, and why it matters
This commit only adds a new test case and updates expected test screenshots. It does not change the actual Trezor firmware code that users run. The new test verifies that a payment request without a memo or nonce behaves as expected and does not trigger a nonce-reuse error. There is no security fix or vulnerability here.
No action required; this is a test-only change.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit adds a ‘connect-e2e’ parametrized test case to tests/device_tests/bitcoin/test_signtx_payreq.py using PaymentRequestParams([0,1,2], [], get_nonce=False). It adjusts the test’s post-sign assertion so that the expected ‘Invalid nonce in payment request’ failure is only raised when the payment request contains memos or a nonce. It also adds type annotations in tests/device_tests/payment_req.py and records new UI fixture hashes in tests/ui_tests/fixtures.json for multiple device/language combinations. No firmware source code is modified.
Changed components
tests/device_tests/bitcoin/test_signtx_payreq.pytests/device_tests/payment_req.pytests/ui_tests/fixtures.jsonInspect captured patch +45 / −13
diff --git a/tests/device_tests/bitcoin/test_signtx_payreq.py b/tests/device_tests/bitcoin/test_signtx_payreq.py
index 7578d3df..f9acb3a8 100644
--- a/tests/device_tests/bitcoin/test_signtx_payreq.py
+++ b/tests/device_tests/bitcoin/test_signtx_payreq.py
@@ -213,6 +213,10 @@ SERIALIZED_TX = "01000000000101e29305e85821ea86f2bca1fcfe45e7cb0c8de87b612479ee6
"out01",
(PaymentRequestParams([0, 1], memos3, get_nonce=True),),
),
+ case(
+ "connect-e2e",
+ (PaymentRequestParams([0, 1, 2], [], get_nonce=False),),
+ ),
case(
"out012",
(PaymentRequestParams([0, 1, 2], [], get_nonce=True),),
@@ -227,7 +231,7 @@ def test_payment_request(session: Session, payment_request_params):
for txo in outputs:
txo.payment_req_index = None
- payment_reqs = []
+ payment_reqs: list[messages.PaymentRequest] = []
for i, params in enumerate(payment_request_params):
request_outputs = []
for txo_index in params.txo_indices:
@@ -267,16 +271,20 @@ def test_payment_request(session: Session, payment_request_params):
assert serialized_tx.hex() == SERIALIZED_TX
- # Ensure that the nonce has been invalidated.
- with pytest.raises(TrezorFailure, match="Invalid nonce in payment request"):
- btc.sign_tx(
- session,
- "Testnet",
- inputs,
- outputs,
- prev_txes=PREV_TXES,
- payment_reqs=payment_reqs,
- )
+ # Payment requests without both `memos` and `nonce` will not raise
+ should_raise = any(pr.memos or pr.nonce for pr in payment_reqs)
+
+ if should_raise:
+ # Ensure that the nonce has been invalidated.
+ with pytest.raises(TrezorFailure, match="Invalid nonce in payment request"):
+ btc.sign_tx(
+ session,
+ "Testnet",
+ inputs,
+ outputs,
+ prev_txes=PREV_TXES,
+ payment_reqs=payment_reqs,
+ )
def test_payment_req_wrong_amount(session: Session):
diff --git a/tests/device_tests/payment_req.py b/tests/device_tests/payment_req.py
index ac1cebfa..bc523bd1 100644
--- a/tests/device_tests/payment_req.py
+++ b/tests/device_tests/payment_req.py
@@ -41,7 +41,7 @@ payment_req_signer = SigningKey.from_string(
)
-def hash_bytes_prefixed(hasher, data):
+def hash_bytes_prefixed(hasher, data) -> None:
hasher.update(compact_size(len(data)))
hasher.update(data)
@@ -55,7 +55,7 @@ def make_payment_request(
memos=None,
nonce=None,
amount_size_bytes=8,
-):
+) -> messages.PaymentRequest:
h_pr = sha256(b"SL\x00\x24")
if nonce:
diff --git a/tests/ui_tests/fixtures.json b/tests/ui_tests/fixtures.json
index bd0ea49c..cfcdefd6 100644
--- a/tests/ui_tests/fixtures.json
+++ b/tests/ui_tests/fixtures.json
@@ -1513,6 +1513,7 @@
"T2T1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "2f9baca34b038bb13b0d02a95f33333df8360bea5cc7a8167cf1ba4ebb567860",
"T2T1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "2f9baca34b038bb13b0d02a95f33333df8360bea5cc7a8167cf1ba4ebb567860",
"T2T1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "912a5fa7057fb092ee1812839fc3e59a06704f5d3439fd734903c5372c40038e",
+"T2T1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "ecef3e46dc706214016d79f279efdcd38d5ac3960a316c0df9c2d608d2e7b53e",
"T2T1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "17f7633be0a67016d566dbb0751e61a925f82350647cb8aac60aca39e1aac31d",
"T2T1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "5507fbfaabee400eb4f600df0fa70eb69c904945182d8657e4781f030e971f5e",
"T2T1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "3fd2e962b0dacaaad3bf807a921f4d992c3d6de93dc7f800ddc84e783a46a80b",
@@ -3060,6 +3061,7 @@
"T2T1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "f64f92ab3732c0194d07c5e6a9c6714f9c9779b02d7ee2ac2c3fb939a4121ccb",
"T2T1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "f64f92ab3732c0194d07c5e6a9c6714f9c9779b02d7ee2ac2c3fb939a4121ccb",
"T2T1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "30123aaf9a48942efadd634fbae71eff570043819177998c8819a076aa2e860b",
+"T2T1_de_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "7cf2b06388b8f9cd19ba2b562831f9797dfafae556f0f666cb4354eca610988d",
"T2T1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "f44da8b816a0db8e7bd75708491ca85256b5e7a1ef5d9344c3d31995e99df5c3",
"T2T1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "adc7e125183caae4884e7ba08fc83ddfb069b1ed5c31cdd7faf4a533d37b0af4",
"T2T1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "3428758f450813e38473ecc2c94d281b0a57aa0cd1bcbca2573f1134634c916e",
@@ -4607,6 +4609,7 @@
"T2T1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "9b99080f761b1ce5c9d0223b6c1fde56d0822d77ba25896bc714358cdc91056c",
"T2T1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "9b99080f761b1ce5c9d0223b6c1fde56d0822d77ba25896bc714358cdc91056c",
"T2T1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "39cc516938a7f6265508608efb4836925dd4be8dcafe4f306f31e80f35badb47",
+"T2T1_en_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "7aa3d22d832eec7ed8ebee0fc57841387d12aad846951a96187b7411a3d117db",
"T2T1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "3cb39f57bef0ea76f678244e2e8fb36e80aa4759c4732876c4f509149eb53bf4",
"T2T1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "7185401893574fa6135b9e673ac536e3c8dfced0fb9867715b8c9f750e9b4e01",
"T2T1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "8cecf8fa75903ac376ab33883b5ca45e858cf589cbab9dd3cad4fbd1aa3013c5",
@@ -6172,6 +6175,7 @@
"T2T1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "f1161dc5ba7377ba085d1e122d6c945982521045f81ed029d72ebf27ee69bd65",
"T2T1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "f1161dc5ba7377ba085d1e122d6c945982521045f81ed029d72ebf27ee69bd65",
"T2T1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "04a8146d7c0eba9a0e1426177a902f7f42818e0ca11a68c92b604d3ce2cd42ca",
+"T2T1_es_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "6a17dbc94089cc91191d8ca23d1d9cbd425f512d185fa35d92a9289f52b5f83d",
"T2T1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "e75bb8b8d5d74e96cd18d99f3a30a43c3900a31a4e0ea2faaf8dd1773a209176",
"T2T1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "236ba3f353be36299642e545cdf52c612370e70f3f489b3857843ae0db6a7cce",
"T2T1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "3dfd4845891639ae703c456b4b89c41cac8da4909b56016ab512742e96652116",
@@ -7719,6 +7723,7 @@
"T2T1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "dffcf97f35caa2f77e13ed07c2a13a506da977595b7737fa239fa80de008d45f",
"T2T1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "dffcf97f35caa2f77e13ed07c2a13a506da977595b7737fa239fa80de008d45f",
"T2T1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "47de9cfb64bdeb1ec9cc1cb68de5c8d4bcdc18fcf90fa54d68cb94691410836c",
+"T2T1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "a02025857119b870e57c6fd29032a77d2c205a4f05a6710b6ebb6944897b76cf",
"T2T1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "2f4df081ef167db2f9c12fe06b4795fb8f7f3a1235774d257f66269ab6341e69",
"T2T1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "8fc4baf4ae05e9db611161e5ec362eeebdd5233690ea82eaba975c9d08e3360a",
"T2T1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "6cc8f8238d65f322956e7fb9d73c47b7470d30fc62f8f0786531010ae428137e",
@@ -9266,6 +9271,7 @@
"T2T1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "00c32ae87270785f7163d5432c1bd0d0ae504e5803334a2b6be79300b538fa6a",
"T2T1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "00c32ae87270785f7163d5432c1bd0d0ae504e5803334a2b6be79300b538fa6a",
"T2T1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "3aa5c9e10bb71d031e6e14ad40a58f4cc1e359973db7df712e7b68f104046f7f",
+"T2T1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "cfe9ef88ae64502a963bc7e5a9fa1e17e902a9f91c3c7cff514e02ca7497ebc8",
"T2T1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "1cd02ad16c40b7ecc7fbd0fb41266745fdf63b6ae8883cbc749f84d233c1389a",
"T2T1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "5e487889c248fbc549ca4ac998903cef473017c8a38ad707104a109009837706",
"T2T1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "ec23a2c25b882b9fc67cd7ad46f98f98383c2ce0186e4280fa6198964cf7c6ab",
@@ -11076,6 +11082,7 @@
"T3B1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "c7632a4b23d5572240c4460403dbdce80fb63c1c60f47b6b6279a3a5eaf377be",
"T3B1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "c7632a4b23d5572240c4460403dbdce80fb63c1c60f47b6b6279a3a5eaf377be",
"T3B1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "2dff964555edcd860e142b6d687efe97771faca1583c5b204de5b6234d4a7d09",
+"T3B1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "83760446973952b8686e31e909340b347fc85193b01326c8c464968f7c4b8ac5",
"T3B1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "8821a2ba5a2b799f5f47173f114f6b309dbef43a0a22a156ca380635cd144d7b",
"T3B1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "0b14457b2ed7c1a94f4a292a1782e80169db31aa7b8a0349569383a2f8c03f86",
"T3B1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "5148a9881c384d8caab8b901aec251ec04e10af2297fd46de153470e2d960663",
@@ -12540,6 +12547,7 @@
"T3B1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "eb942d20e3a64eb0858411a2c31343bb3f4ab8be2fe831942f51e0a2eef7cf74",
"T3B1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "eb942d20e3a64eb0858411a2c31343bb3f4ab8be2fe831942f51e0a2eef7cf74",
"T3B1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "2abf867a03c7879e6a1b69f76ee8071f69896a0a55a84c28f9a2343ce71ef423",
+"T3B1_de_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "38c402f00e5f89270d9f6f40589f3c2d48edfcb058057c873f2de0af54f0ac8a",
"T3B1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "e627294354ee448b2ba73167c5843ab4725bf7dbfca8da4187897936b5cbaf44",
"T3B1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "32f0a56bf70170e4e151ac6343406088f27c1d716f49a597497a3b14228ffcbf",
"T3B1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "d51fed1cfe06e66ac1789a279d9927e5266f54030f17e88b827d7416389193f1",
@@ -14004,6 +14012,7 @@
"T3B1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "49a73b70cadcaad8baec45e6c64ee910071db73fae8c39dfa590fea95f749448",
"T3B1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "49a73b70cadcaad8baec45e6c64ee910071db73fae8c39dfa590fea95f749448",
"T3B1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "76fbf66c7d18231da88b542b03590b9954153799ef57e8cd3b7d141cd1fab2d6",
+"T3B1_en_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "d7333615b73a2c1960f87d18669f4f63bbda891f3773c2ec0a9dabd1329a49ef",
"T3B1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "29c131e2fa9f764be083f8146f6f0c93caa80631b6b23a7a4282ee8ed43a00ee",
"T3B1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "4240a8775fa570a8e29c2b271b3b1911d375cc9eabb088ba6c8e64dde29e95c3",
"T3B1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "a9dbbe4b1fa86388b2f01d83d8d03d0135e3092735779f7a6ff82f37b336afe9",
@@ -15468,6 +15477,7 @@
"T3B1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "80fddd5f9ddcbbf61cf57cbb6188aa1eadac8995ad23af7f2c4597dfd754a3d6",
"T3B1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "80fddd5f9ddcbbf61cf57cbb6188aa1eadac8995ad23af7f2c4597dfd754a3d6",
"T3B1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "189a6c22951887cd3cc911f5bd5a9dfd5cd276d9ea0bf318b93c5bde896f4902",
+"T3B1_es_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "6294c4b02cb357c84e83351e0c297c16bd8339f7c41635ebf24185b70c9ba35f",
"T3B1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "a0bbdf9bf2eb5b2c109bf2ec0eaf87d64a0d22102d050944bf1387c74a08a18d",
"T3B1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "20b8ed7aa7717bb51525697dc7e3715a5b84f9f78304b1a80055db3e5f8001bb",
"T3B1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "85f506d745dcb05eef1b337347d0e222a49826e963fb3ea11495c26c97e2ecf6",
@@ -16932,6 +16942,7 @@
"T3B1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "841f32f609e8038ad766762c8eea1ae63820001b39ac87deeb9690766b980202",
"T3B1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "841f32f609e8038ad766762c8eea1ae63820001b39ac87deeb9690766b980202",
"T3B1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "bc991f7c0f13c35dd8c399002d04e358fc02eab87b14da052a47649ae084990b",
+"T3B1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "b6adc4e9eca1f0e82029db96d03dd1969b70551303a3c1c0c4cd26e5ed3d7bff",
"T3B1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "73638a736167f646b242bb35f4fceb2723f92dcd793bbdab2f76587de9402160",
"T3B1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "8b402ef6dd549dc009fc0b2ec6c4fdd8c47973f26b21b5e3cc80ac35ec96a9d4",
"T3B1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "c66f90b1dc281ccffcc7918c870c8a170e81169a8bcb451d1601f40feee0a4ca",
@@ -18396,6 +18407,7 @@
"T3B1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "e4ebce7a82b6eb69bf47311ccf60a7b4e782c69e44f2813510c3e8e8ac8591ce",
"T3B1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "e4ebce7a82b6eb69bf47311ccf60a7b4e782c69e44f2813510c3e8e8ac8591ce",
"T3B1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "ff812bc6371ad31391be03e8108ba58f357f83320983af19e03427811fcec95b",
+"T3B1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "e586eac5226ab26d8d90de522daa3fc5ecbcc16beeb0f356059fd35fc4177629",
"T3B1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "d6129e102e38f556b38da9ec2511bfdbf880e966fb0f1215ca05e642d7e185e8",
"T3B1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "158c61753cdd88e693b7542f4707c9e626f29e791b533a6457aa50072d1f2ff6",
"T3B1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "646685a57da6a58b0274f639bfa6dd08690b7310901e9807d533c651ad244e06",
@@ -20246,6 +20258,7 @@
"T3T1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "cf41a7163fe551ea6c8755397d368c0a6b6f57dccc28b94c0b6340f7496f1fe5",
"T3T1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "cf41a7163fe551ea6c8755397d368c0a6b6f57dccc28b94c0b6340f7496f1fe5",
"T3T1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "2f0b80534b02d3f10d97bfca58cda6f81c67b9e738b743ac0ab2c4b2f7911c47",
+"T3T1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "32c3160be34aac51f22af218a9d0ff9e4c2d1fc20a9b2bc7935586ba82ee127b",
"T3T1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "32c09e62fd9eab6d635fd857cd9147b98f0d5992df241d8414a125475859bd54",
"T3T1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "2be75685b6f90440372a68eb4132e33ffff28372aeedc6699a46ea721c80e02f",
"T3T1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "7889c1592c06e05e9990615d784598f36561c76b0f41e7143acf39a3bd4a13dd",
@@ -21741,6 +21754,7 @@
"T3T1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "9829aeb123018b2f179fd422a20d609f94f910e95e527766bdd16329d0379b47",
"T3T1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "9829aeb123018b2f179fd422a20d609f94f910e95e527766bdd16329d0379b47",
"T3T1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "72cd79eb7ccd461318aecd7122d7f61139425dd6baf9901a155381e144c2393d",
+"T3T1_de_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "b0623e1ed29a7fb5d427ddd91b68ef337bdafec81f539e7a5e8277b6974d5a06",
"T3T1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "62386a7ace36977e6f34f1517bdfd43f68229ba623e173a8cd1751e03546c64a",
"T3T1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "a5c94417306a554a33662530552e8ee5425a2967e8cd8ef1be9feb69489bbc24",
"T3T1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "c7c1dbd7d6cecad731bcfd48d2ecbb56c568d5d3287ec255a732e766e9fe3a97",
@@ -23236,6 +23250,7 @@
"T3T1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "da6a4917bb6cb39feb46f3d40575f9900b15669b12e72568c97710962c88e63f",
"T3T1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "da6a4917bb6cb39feb46f3d40575f9900b15669b12e72568c97710962c88e63f",
"T3T1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "48fef9218da927ec28e68a34b30c860f753f363b2389b54b2ac92ff384310987",
+"T3T1_en_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "79a33d81f21774992e52dabf6b8b27bb1c84898ecbc3ce5f98e46aa2565ff759",
"T3T1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "514bd58d09952fdd4c8c7cec822a9d1f9fc8f058bc5172e59054ea94cf7f6267",
"T3T1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "6145ab2539c0e0c88dae5c25eb9277c8a57e2cdfb5e2e7a5eda6b48596f04f1b",
"T3T1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "9542d914a4e8b84bc397240970c81c16954159bb1dbaf62be2e5fe6d2b93eb0b",
@@ -24731,6 +24746,7 @@
"T3T1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "79c6f369287790467e303bcd14448c5972fbb18b8937abc34f04b5c5096a6d51",
"T3T1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "79c6f369287790467e303bcd14448c5972fbb18b8937abc34f04b5c5096a6d51",
"T3T1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "5843e70f07d6a55a158e129de10e9a76884029be482974336b88d2b000677960",
+"T3T1_es_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "ae96463df65ebe4a4dcf43807cd6546c426286fb42807e00207918377e30bcac",
"T3T1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "bbd594e72af476bdf761350caf5ca01318f7e0fbff6c071de6b5080cf57ed947",
"T3T1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "778a3c7d3eb9ced37f76f1385e51ab17cbee02dd4339d3ae6400d4be1f8c556c",
"T3T1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "3fbab01703a9cefc207e268db41c4609b0e3867cbf3d9d0d2b841cd671107576",
@@ -26226,6 +26242,7 @@
"T3T1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "3ee47544e3268f8e5e781bb59371ced35d3615d967d6d758f7a06fbeaafa5d1d",
"T3T1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "3ee47544e3268f8e5e781bb59371ced35d3615d967d6d758f7a06fbeaafa5d1d",
"T3T1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "fb245adb9d7b1f7dec0c4f281d7f05bce9b284cccbd7fb71e65b9775154625df",
+"T3T1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "1838090d9b72a8ea7a663e8c5b83ed97629fac37efa0866bf9e7f9fd120f34ce",
"T3T1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "204d9107feb85dbf8062aff9e9289400d3debb9eed4d5a1f69fb64d71b0e1ba2",
"T3T1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "a31d768f6bb91ba01d99ad79d7720ab33e0e5779c2c098a810ca2f16f50e81f4",
"T3T1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "55e181139b8d435849bb0317ff84eb2a4a2d5b984e0a1f2ae89fd8539ffc7307",
@@ -27721,6 +27738,7 @@
"T3T1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "23e779bc94248a179523e8e08d284984469ed63dd354a201b9ff31a2d1337d00",
"T3T1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "23e779bc94248a179523e8e08d284984469ed63dd354a201b9ff31a2d1337d00",
"T3T1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "3df39523b703f31edb50593be0ffef9391c7cb0579613fce4708f3ab998b1e2e",
+"T3T1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "f83d44ab26d1eea4a435f78ad929f2d0dc2added7435c22f79bcfe7be57ccf91",
"T3T1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "673dc7eabcb896c5f9c37bf67386135c2b8d0bd4dfb2cbe38526ed86a64cb858",
"T3T1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "781cfa42b746064bd8daa494d23997142fc7d8bb16af51c5139ea3edbf752dcf",
"T3T1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "0d05964063aebda9acc9663f20c19dcd30046939944cebc4f7908ec0798036d0",
@@ -29856,6 +29874,7 @@
"T3W1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "4c7fc9730df2b27cbe4585311f6f9dc5cfdbb72544ccae7d1d93077e667b2eb1",
"T3W1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "4c7fc9730df2b27cbe4585311f6f9dc5cfdbb72544ccae7d1d93077e667b2eb1",
"T3W1_cs_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "d8fb73fce637731fe5d32ab8443be38bd6bd4fe4e2dc04d049bbc50ce68c2cd4",
+"T3W1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "506415142cecf2ba1ccb895f4d1683c56a035ae4a487c0954ed60b4dca1e7a8b",
"T3W1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "018f927e4f2c559c57839494a980a16e88285026f02d920198b6bbbe786e57d4",
"T3W1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "5b5b018b286c6476bd31f4392c442c11eb708af645ad4ad8cc6ecbf58f636f48",
"T3W1_cs_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "1983a45c73d4bc896b0f9b4ce1d15d3380e4ba26b707d8b1561411a8b06e3ab5",
@@ -31356,6 +31375,7 @@
"T3W1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "093ebad65c9e03665650772de332d06d23f8afab660edcf3d3f6e108c214e464",
"T3W1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "093ebad65c9e03665650772de332d06d23f8afab660edcf3d3f6e108c214e464",
"T3W1_de_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "1b5a69bba46815e035e13201fccab161f84175f5a4da01c96a9b00ba9c72c688",
+"T3W1_de_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "141531c7c522cf72659a4d4c2618c20f45467fdc8e2f82bc71c9f8853d0e2cd5",
"T3W1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "f341dc5d0183c6b171c7089604637c327a3b352267a241979dfa6f32bbf8cb29",
"T3W1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "571872eb645f95956c026f8829877a40060b8f8e879f2316bae53adc26758ff4",
"T3W1_de_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "4a7cd3e06f07b4dcf9c8b8d6162db4763461ef95608c0fa09f8c34e3fae5d7c5",
@@ -32856,6 +32876,7 @@
"T3W1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "c5e09d9d016043b5f39970f9f7b274ae0095689a3329eba6e0d1c3e6413fc933",
"T3W1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "c5e09d9d016043b5f39970f9f7b274ae0095689a3329eba6e0d1c3e6413fc933",
"T3W1_en_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "a2f7702e86093878e6c03738892d554345606759411a6462ede9c000631210e9",
+"T3W1_en_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "6a0585576a0d735f02e7d1894ad7253ea11c1f1fc3eb76f7fe40b5e49ec68427",
"T3W1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "b093847d1a688d791f660d290715f19d43d0c2e3f03ab7bb289e7f2dbdce461d",
"T3W1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "7c3cd7118c276acc648c499fb0f36f0247ee92b0b188c71097875f786e881cf9",
"T3W1_en_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "50b752978942ef3daa160f5e454c41358f352722b5c1d09eea2823e25d9c8e0d",
@@ -34356,6 +34377,7 @@
"T3W1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "1f933fbb7861305bcb97effdcc4a23d4bad92e4b052122e3f270c2164d445949",
"T3W1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "1f933fbb7861305bcb97effdcc4a23d4bad92e4b052122e3f270c2164d445949",
"T3W1_es_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "3be0767a436b1d76add0f4fa5a8ea1d4ee86518b1d9491df6c1df0b863f7c0c8",
+"T3W1_es_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "ca14ca339d44df94f5c4df8209a16faa3fcb4c603e8ad1237eb24a7a675e87bf",
"T3W1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "10032d5b41565b8ef8db10bf0305c88b21954223cdffb11e13845edf1a60ed9c",
"T3W1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "ceab1859139670a8071b6747e92a141411a62637db5516033f30b51f363d76a6",
"T3W1_es_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "475e185e735e72d37ddd84aa637b8754b7ac00c705b1181ff24fe232ed4a911b",
@@ -35856,6 +35878,7 @@
"T3W1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "8deabb5d5943831b1ccbba7b9703dcedcb1556c372b4c10dd7ed9175c4873746",
"T3W1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "8deabb5d5943831b1ccbba7b9703dcedcb1556c372b4c10dd7ed9175c4873746",
"T3W1_fr_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "3ce5f644fbe24170625a28d047a3160b96632b2bf7b1cd5a63c2e2324bc22b88",
+"T3W1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "3a368616d3d4a745c14286aad903064c046303efd85dd870b5642a68c10e2a3b",
"T3W1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "ff88634a9ae50b3bd5f1b615e01ceda62ac939b074ae005428e123c0a3d95af4",
"T3W1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "28d39bd4ca6e907a15f9cb9609677287fe6723625b2f05e989157241f92eac7d",
"T3W1_fr_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "c3671c85b0fbec741263fc772cf2770fe6e08f42f83a11fd74309817afe52188",
@@ -37361,6 +37384,7 @@
"T3W1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "6653fc2185dfc2865e79390d10c93b332eef192e33be78c4f00c1dc767b0be2f",
"T3W1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "6653fc2185dfc2865e79390d10c93b332eef192e33be78c4f00c1dc767b0be2f",
"T3W1_pt_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "e60b129dd4a61fa007cccac3bd46263659183c3482375764f7793887614faab9",
+"T3W1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[connect-e2e]": "ec88fc79554a168686913c9a749ada297d3813b86a85d712ef32c8e96e297f45",
"T3W1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "eef5d6464fa6e6eeda13e33b283697ec8f197e06d0f3ea686cc1da965ddae41d",
"T3W1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "e18b3fcb694ee4ee2a59bfbec14fa7d3c826be9883da664d736c3d309206ca49",
"T3W1_pt_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "9dffebd12f820c63997ad139fe829b3503d7e949bcc268919440e80d82ee4be2",
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.