Skip to content

Commit

Permalink
adding adl tests to pass
Browse files Browse the repository at this point in the history
  • Loading branch information
faytey committed Oct 30, 2023
1 parent 52d60a5 commit d543d50
Show file tree
Hide file tree
Showing 2 changed files with 69 additions and 4 deletions.
41 changes: 41 additions & 0 deletions Scarb.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Code generated by scarb DO NOT EDIT.
version = 1

[[package]]
name = "alexandria_data_structures"
version = "0.1.0"
source = "git+https://github.com/keep-starknet-strange/alexandria.git?rev=a3052ff#a3052ffc72d431c981ae0b92b29a40487b47a5ee"

[[package]]
name = "alexandria_math"
version = "0.2.0"
source = "git+https://github.com/keep-starknet-strange/alexandria.git?rev=a3052ff#a3052ffc72d431c981ae0b92b29a40487b47a5ee"
dependencies = [
"alexandria_data_structures",
]

[[package]]
name = "alexandria_sorting"
version = "0.1.0"
source = "git+https://github.com/keep-starknet-strange/alexandria.git?rev=a3052ff#a3052ffc72d431c981ae0b92b29a40487b47a5ee"

[[package]]
name = "alexandria_storage"
version = "0.2.0"
source = "git+https://github.com/keep-starknet-strange/alexandria.git?rev=a3052ff#a3052ffc72d431c981ae0b92b29a40487b47a5ee"

[[package]]
name = "satoru"
version = "0.1.0"
dependencies = [
"alexandria_data_structures",
"alexandria_math",
"alexandria_sorting",
"alexandria_storage",
"snforge_std",
]

[[package]]
name = "snforge_std"
version = "0.1.0"
source = "git+https://github.com/foundry-rs/starknet-foundry.git?tag=v0.8.3#cb05cb81cae9451a91e42a03af09e0457284b4de"
32 changes: 28 additions & 4 deletions tests/adl/test_adl_utils.cairo
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
use core::traits::TryInto;
// Core libe imports.
use starknet::{
ContractAddress, get_caller_address, Felt252TryIntoContractAddress, contract_address_const
Expand Down Expand Up @@ -221,18 +222,41 @@ fn given_non_valid_position_when_create_adl_order_then_fails() {

#[test]
fn given_normal_conditions_when_create_adl_order_then_works() { // Setup
//let (caller_address, role_store, data_store, event_emitter, oracle) = setup_oracle_and_store();
let (caller_address, role_store, data_store, event_emitter, oracle) = setup_oracle_and_store();
// TODO
// For testing "position_utils::get_position_key", ".data_store.get_position" should be implmented
assert(true, 'e');
let account1 = 'account1'.try_into().unwrap();
let market = 'market'.try_into().unwrap();
let collateral_token = 'token'.try_into().unwrap();
let params = adl_utils::CreateAdlOrderParams {
data_store: data_store,
event_emitter: event_emitter,
account: account1,
market: market,
collateral_token: collateral_token,
is_long: true,
size_delta_usd: 0,
updated_at_block: 100
};
adl_utils::create_adl_order(params);
}


#[test]
fn given_normal_conditions_when_update_adl_state_then_works() {
// Setup
//let (caller_address, role_store, data_store, event_emitter, oracle) = setup_oracle_and_store();
let (caller_address, role_store, data_store, event_emitter, oracle) = setup_oracle_and_store();
// TODO
// For testing "get_enabled_market", "get_market_prices" and "is_pnl_factor_exceeded_direct" should be implmented
assert(true, 'e');
let market = 'market'.try_into().unwrap();
let is_long = true;
let block_value = 9_u64;
adl_utils::set_latest_adl_block(data_store, market, is_long, block_value);

let block_numbers = array![10_u64, 9_u64];
adl_utils::update_adl_state(
data_store, event_emitter, oracle, market, is_long, block_numbers.span()
);

teardown(data_store.contract_address);
}

0 comments on commit d543d50

Please sign in to comment.