Skip to content

Commit f5b3649

Browse files
committed
tests: fix vm::tests::contracts issues
1 parent 1dee9cb commit f5b3649

File tree

1 file changed

+60
-14
lines changed

1 file changed

+60
-14
lines changed

clarity/src/vm/tests/contracts.rs

Lines changed: 60 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -205,18 +205,24 @@ fn test_contract_caller(epoch: StacksEpochId, mut env_factory: MemoryEnvironment
205205
ClarityVersion::Clarity2,
206206
);
207207

208+
let mut store = MemoryBackingStore::new();
209+
let mut analysis_db = store.as_analysis_db();
210+
analysis_db.begin();
211+
208212
{
209213
let mut env = owned_env.get_exec_environment(None, None, &mut placeholder_context);
210-
env.initialize_contract(
214+
env.initialize_contract_with_db(
211215
QualifiedContractIdentifier::local("contract-a").unwrap(),
212216
contract_a,
213217
ASTRules::PrecheckSize,
218+
&mut analysis_db,
214219
)
215220
.unwrap();
216-
env.initialize_contract(
221+
env.initialize_contract_with_db(
217222
QualifiedContractIdentifier::local("contract-b").unwrap(),
218223
contract_b,
219224
ASTRules::PrecheckSize,
225+
&mut analysis_db,
220226
)
221227
.unwrap();
222228
}
@@ -357,22 +363,28 @@ fn test_tx_sponsor(epoch: StacksEpochId, mut env_factory: MemoryEnvironmentGener
357363
panic!("p2 is not a principal value");
358364
};
359365

366+
let mut store = MemoryBackingStore::new();
367+
let mut analysis_db = store.as_analysis_db();
368+
analysis_db.begin();
369+
360370
{
361371
let mut env = owned_env.get_exec_environment(
362372
Some(p1.clone()),
363373
sponsor.clone(),
364374
&mut placeholder_context,
365375
);
366-
env.initialize_contract(
376+
env.initialize_contract_with_db(
367377
QualifiedContractIdentifier::local("contract-a").unwrap(),
368378
contract_a,
369379
ASTRules::PrecheckSize,
380+
&mut analysis_db,
370381
)
371382
.unwrap();
372-
env.initialize_contract(
383+
env.initialize_contract_with_db(
373384
QualifiedContractIdentifier::local("contract-b").unwrap(),
374385
contract_b,
375386
ASTRules::PrecheckSize,
387+
&mut analysis_db,
376388
)
377389
.unwrap();
378390
}
@@ -420,18 +432,24 @@ fn test_fully_qualified_contract_call(
420432
ClarityVersion::Clarity2,
421433
);
422434

435+
let mut store = MemoryBackingStore::new();
436+
let mut analysis_db = store.as_analysis_db();
437+
analysis_db.begin();
438+
423439
{
424440
let mut env = owned_env.get_exec_environment(None, None, &mut placeholder_context);
425-
env.initialize_contract(
441+
env.initialize_contract_with_db(
426442
QualifiedContractIdentifier::local("contract-a").unwrap(),
427443
contract_a,
428444
ASTRules::PrecheckSize,
445+
&mut analysis_db,
429446
)
430447
.unwrap();
431-
env.initialize_contract(
448+
env.initialize_contract_with_db(
432449
QualifiedContractIdentifier::local("contract-b").unwrap(),
433450
contract_b,
434451
ASTRules::PrecheckSize,
452+
&mut analysis_db,
435453
)
436454
.unwrap();
437455
}
@@ -738,13 +756,27 @@ fn test_simple_contract_call(epoch: StacksEpochId, mut env_factory: MemoryEnviro
738756
&mut placeholder_context,
739757
);
740758

759+
let mut store = MemoryBackingStore::new();
760+
let mut analysis_db = store.as_analysis_db();
761+
analysis_db.begin();
762+
741763
let contract_identifier = QualifiedContractIdentifier::local("factorial-contract").unwrap();
742-
env.initialize_contract(contract_identifier, contract_1, ASTRules::PrecheckSize)
743-
.unwrap();
764+
env.initialize_contract_with_db(
765+
contract_identifier,
766+
contract_1,
767+
ASTRules::PrecheckSize,
768+
&mut analysis_db,
769+
)
770+
.unwrap();
744771

745772
let contract_identifier = QualifiedContractIdentifier::local("proxy-compute").unwrap();
746-
env.initialize_contract(contract_identifier, contract_2, ASTRules::PrecheckSize)
747-
.unwrap();
773+
env.initialize_contract_with_db(
774+
contract_identifier,
775+
contract_2,
776+
ASTRules::PrecheckSize,
777+
&mut analysis_db,
778+
)
779+
.unwrap();
748780

749781
let args = symbols_from_values(vec![]);
750782

@@ -1135,14 +1167,28 @@ fn test_cc_stack_depth(
11351167
ContractContext::new(QualifiedContractIdentifier::transient(), version);
11361168
let mut env = owned_env.get_exec_environment(None, None, &mut placeholder_context);
11371169

1170+
let mut store = MemoryBackingStore::new();
1171+
let mut analysis_db = store.as_analysis_db();
1172+
analysis_db.begin();
1173+
11381174
let contract_identifier = QualifiedContractIdentifier::local("c-foo").unwrap();
1139-
env.initialize_contract(contract_identifier, contract_one, ASTRules::PrecheckSize)
1140-
.unwrap();
1175+
env.initialize_contract_with_db(
1176+
contract_identifier,
1177+
contract_one,
1178+
ASTRules::PrecheckSize,
1179+
&mut analysis_db,
1180+
)
1181+
.unwrap();
11411182

11421183
let contract_identifier = QualifiedContractIdentifier::local("c-bar").unwrap();
11431184
assert_eq!(
1144-
env.initialize_contract(contract_identifier, contract_two, ASTRules::PrecheckSize)
1145-
.unwrap_err(),
1185+
env.initialize_contract_with_db(
1186+
contract_identifier,
1187+
contract_two,
1188+
ASTRules::PrecheckSize,
1189+
&mut analysis_db
1190+
)
1191+
.unwrap_err(),
11461192
RuntimeErrorType::MaxStackDepthReached.into()
11471193
);
11481194
}

0 commit comments

Comments
 (0)