1
1
use assert_matches:: assert_matches;
2
2
use blockifier:: execution:: contract_class:: ContractClass ;
3
3
use cairo_lang_starknet_classes:: allowed_libfuncs:: AllowedLibfuncsError ;
4
- use mempool_test_utils:: starknet_api_test_utils:: declare_tx;
4
+ use mempool_test_utils:: starknet_api_test_utils:: declare_tx as rpc_declare_tx ;
5
5
use rstest:: { fixture, rstest} ;
6
6
use starknet_api:: core:: CompiledClassHash ;
7
7
use starknet_api:: rpc_transaction:: { RPCDeclareTransaction , RPCTransaction } ;
@@ -15,13 +15,21 @@ fn gateway_compiler() -> GatewayCompiler {
15
15
GatewayCompiler { config : Default :: default ( ) }
16
16
}
17
17
18
+ #[ fixture]
19
+ fn declare_tx ( ) -> RPCDeclareTransaction {
20
+ assert_matches ! (
21
+ rpc_declare_tx( ) ,
22
+ RPCTransaction :: Declare ( declare_tx) => declare_tx
23
+ )
24
+ }
25
+
18
26
// TODO(Arni): Redesign this test once the compiler is passed with dependancy injection.
19
27
#[ rstest]
20
- fn test_compile_contract_class_compiled_class_hash_mismatch ( gateway_compiler : GatewayCompiler ) {
21
- let mut tx = assert_matches ! (
22
- declare_tx( ) ,
23
- RPCTransaction :: Declare ( RPCDeclareTransaction :: V3 ( tx ) ) => tx
24
- ) ;
28
+ fn test_compile_contract_class_compiled_class_hash_mismatch (
29
+ gateway_compiler : GatewayCompiler ,
30
+ declare_tx : RPCDeclareTransaction ,
31
+ ) {
32
+ let RPCDeclareTransaction :: V3 ( mut tx ) = declare_tx ;
25
33
let expected_hash_result = tx. compiled_class_hash ;
26
34
let supplied_hash = CompiledClassHash :: default ( ) ;
27
35
@@ -37,11 +45,11 @@ fn test_compile_contract_class_compiled_class_hash_mismatch(gateway_compiler: Ga
37
45
}
38
46
39
47
#[ rstest]
40
- fn test_compile_contract_class_bad_sierra ( gateway_compiler : GatewayCompiler ) {
41
- let mut tx = assert_matches ! (
42
- declare_tx( ) ,
43
- RPCTransaction :: Declare ( RPCDeclareTransaction :: V3 ( tx ) ) => tx
44
- ) ;
48
+ fn test_compile_contract_class_bad_sierra (
49
+ gateway_compiler : GatewayCompiler ,
50
+ declare_tx : RPCDeclareTransaction ,
51
+ ) {
52
+ let RPCDeclareTransaction :: V3 ( mut tx ) = declare_tx ;
45
53
// Truncate the sierra program to trigger an error.
46
54
tx. contract_class . sierra_program = tx. contract_class . sierra_program [ ..100 ] . to_vec ( ) ;
47
55
let declare_tx = RPCDeclareTransaction :: V3 ( tx) ;
@@ -56,11 +64,10 @@ fn test_compile_contract_class_bad_sierra(gateway_compiler: GatewayCompiler) {
56
64
}
57
65
58
66
#[ rstest]
59
- fn test_process_declare_tx_success ( gateway_compiler : GatewayCompiler ) {
60
- let declare_tx = assert_matches ! (
61
- declare_tx( ) ,
62
- RPCTransaction :: Declare ( declare_tx) => declare_tx
63
- ) ;
67
+ fn test_process_declare_tx_success (
68
+ gateway_compiler : GatewayCompiler ,
69
+ declare_tx : RPCDeclareTransaction ,
70
+ ) {
64
71
let RPCDeclareTransaction :: V3 ( declare_tx_v3) = & declare_tx;
65
72
let contract_class = & declare_tx_v3. contract_class ;
66
73
0 commit comments