diff --git a/packages/circle/src/contract.rs b/packages/circle/src/contract.rs index 8605718..d89bdef 100644 --- a/packages/circle/src/contract.rs +++ b/packages/circle/src/contract.rs @@ -3,6 +3,7 @@ use crate::types::*; use crate::payout; use common::{math, pause}; use common::reentrancy::ReentrancyGuard; +use soroban_sdk::token; pub fn init(env: &Env, admin: &Address, factory: &Address, config: &CircleConfig) -> Result<(), CircleError> { if config.max_members < 2 || config.contribution_amount <= 0 || config.total_rounds == 0 || config.payout_type > 3 { @@ -545,6 +546,10 @@ pub fn claim_referral_bonus(env: &Env, referrer: &Address, _treasury: &Address) return Err(CircleError::InvalidAmount); } env.storage().persistent().set(&DataKey::Referrals, &referrals); + // Transfer bonus tokens from this contract to the referrer + let token_address: Address = env.storage().instance().get(&DataKey::Token).ok_or(CircleError::TokenNotSet)?; + let token_client = token::Client::new(env, &token_address); + token_client.transfer(&env.current_contract_address(), referrer, &bonus_total); ReferralBonusPaid { referrer: referrer.clone(), amount: bonus_total }.publish(env); Ok(()) } @@ -600,6 +605,10 @@ pub fn claim_streak_bonus(env: &Env, member: &Address, _treasury: &Address) -> R } let bonus = math::safe_mul(circle.contribution_amount, streak_val as i128).map_err(|_| CircleError::InvalidAmount)?; let bonus_div = math::safe_div(bonus, 100).map_err(|_| CircleError::InvalidAmount)?; + // Transfer bonus tokens from this contract to the member + let token_address: Address = env.storage().instance().get(&DataKey::Token).ok_or(CircleError::TokenNotSet)?; + let token_client = token::Client::new(env, &token_address); + token_client.transfer(&env.current_contract_address(), member, &bonus_div); StreakBonusPaid { member: member.clone(), amount: bonus_div, streak: streak_val }.publish(env); Ok(()) } diff --git a/packages/circle/src/test.rs b/packages/circle/src/test.rs index f8ad34a..72d5953 100644 --- a/packages/circle/src/test.rs +++ b/packages/circle/src/test.rs @@ -2,8 +2,10 @@ #[cfg(test)] mod tests { - use soroban_sdk::{Address, Env, String}; - use soroban_sdk::testutils::Address as _; + use soroban_sdk::{Address, BytesN, Env, String}; + use soroban_sdk::testutils::{Address as _, Ledger as _}; + use soroban_sdk::token::Client as TokenClient; + use soroban_sdk::token::StellarAssetClient; use crate as circle; use circle::{Circle, CircleArgs, CircleStatus}; @@ -452,7 +454,7 @@ mod tests { let contract_id = env.register(Circle, CircleArgs::__constructor(&admin, &factory, &config)); let client = circle::CircleClient::new(&env, &contract_id); let member = Address::generate(&env); - let evidence_hash = [1u8; 32].into(); + let evidence_hash = BytesN::from_array(&env, &[1u8; 32]); env.mock_all_auths(); client.try_join(&member).unwrap(); @@ -470,7 +472,7 @@ mod tests { let contract_id = env.register(Circle, CircleArgs::__constructor(&admin, &factory, &config)); let client = circle::CircleClient::new(&env, &contract_id); let member = Address::generate(&env); - let evidence_hash = [1u8; 32].into(); + let evidence_hash = BytesN::from_array(&env, &[1u8; 32]); env.mock_all_auths(); client.try_join(&member).unwrap(); @@ -488,7 +490,7 @@ mod tests { let contract_id = env.register(Circle, CircleArgs::__constructor(&admin, &factory, &config)); let client = circle::CircleClient::new(&env, &contract_id); let member = Address::generate(&env); - let evidence_hash = [1u8; 32].into(); + let evidence_hash = BytesN::from_array(&env, &[1u8; 32]); env.mock_all_auths(); client.try_join(&member).unwrap(); @@ -612,4 +614,242 @@ mod tests { assert!(client.try_pause_circle(&unauthorized).is_err()); assert!(client.try_unpause_circle(&unauthorized).is_err()); } + + // ── helper: deploy a 2-member active circle with a real token wired up ────── + fn setup_active_circle_with_token(env: &Env) -> ( + circle::CircleClient, + Address, // admin + Address, // m1 + Address, // m2 + Address, // token_id (use TokenClient::new(env, &token_id) to interact) + Address, // contract_id + ) { + let mut config = create_config(env); + config.max_members = 2u32; + let admin = config.organizer.clone(); + let factory = Address::generate(env); + let contract_id = env.register(circle::Circle, circle::CircleArgs::__constructor(&admin, &factory, &config)); + let client = circle::CircleClient::new(env, &contract_id); + + // Deploy a test token + let token_admin = Address::generate(env); + let token_id = env.register_stellar_asset_contract_v2(token_admin.clone()).address(); + let sac_client = StellarAssetClient::new(env, &token_id); + let token_client = TokenClient::new(env, &token_id); + + // Mock auth globally so all subsequent calls (mint, set_token, join) are authorised + env.mock_all_auths(); + + // Mint plenty of tokens to the circle contract so it can pay out bonuses + sac_client.mint(&contract_id, &1_000_000_0000000i128); + + // Wire the token into the circle contract + client.set_token(&admin, &token_id); + + // Two members join → circle becomes Active + let m1 = Address::generate(env); + let m2 = Address::generate(env); + client.join(&m1); + client.join(&m2); + + (client, admin, m1, m2, token_id, contract_id) + } + + // ── claim_referral_bonus ───────────────────────────────────────────────────── + + #[test] + fn test_claim_referral_bonus_transfers_tokens() { + let env = Env::default(); + let (client, _admin, m1, m2, token_id, _contract_id) = + setup_active_circle_with_token(&env); + let token_client = TokenClient::new(&env, &token_id); + + env.mock_all_auths(); + + // m1 refers m2 with 500 bps (5%) + client.register_referral(&m1, &m2, &500u32); + + // m2 makes a contribution so there is something to calculate the bonus from + client.contribute(&m2, &100_0000000i128, &0u32); + + let referrer_balance_before = token_client.balance(&m1); + + let treasury = Address::generate(&env); // passed but unused by contract + client.claim_referral_bonus(&m1, &treasury); + + let referrer_balance_after = token_client.balance(&m1); + + // bonus = contribution_amount * bonus_pct / 10000 + // = 100_0000000 * 500 / 10000 = 5_0000000 + let expected_bonus = 5_0000000i128; + assert_eq!( + referrer_balance_after - referrer_balance_before, + expected_bonus, + "referrer should receive exact bonus amount" + ); + } + + #[test] + fn test_claim_referral_bonus_no_double_claim() { + let env = Env::default(); + let (client, _admin, m1, m2, _token_id, _contract_id) = + setup_active_circle_with_token(&env); + + env.mock_all_auths(); + + client.register_referral(&m1, &m2, &500u32); + client.contribute(&m2, &100_0000000i128, &0u32); + + let treasury = Address::generate(&env); + client.claim_referral_bonus(&m1, &treasury); + + // Second claim should fail — referral is already marked claimed + // (bonus_total will be 0 → InvalidAmount) + let result = client.try_claim_referral_bonus(&m1, &treasury); + assert!( + result.is_err(), + "second claim_referral_bonus should fail" + ); + } + + #[test] + fn test_claim_referral_bonus_no_token_set_returns_error() { + let env = Env::default(); + let mut config = create_config(&env); + config.max_members = 2u32; + let admin = config.organizer.clone(); + let factory = Address::generate(&env); + let contract_id = env.register(circle::Circle, circle::CircleArgs::__constructor(&admin, &factory, &config)); + let client = circle::CircleClient::new(&env, &contract_id); + + env.mock_all_auths(); + + let m1 = Address::generate(&env); + let m2 = Address::generate(&env); + client.join(&m1); + client.join(&m2); + + // Register referral and make a contribution — but do NOT call set_token + client.register_referral(&m1, &m2, &500u32); + client.contribute(&m2, &100_0000000i128, &0u32); + + let treasury = Address::generate(&env); + let result = client.try_claim_referral_bonus(&m1, &treasury); + assert!(result.is_err(), "should fail when no token is configured"); + } + + #[test] + fn test_claim_referral_bonus_not_active_circle() { + let env = Env::default(); + let config = create_config(&env); // max_members=5, circle stays Pending with 1 member + let admin = config.organizer.clone(); + let factory = Address::generate(&env); + let contract_id = env.register(circle::Circle, circle::CircleArgs::__constructor(&admin, &factory, &config)); + let client = circle::CircleClient::new(&env, &contract_id); + + env.mock_all_auths(); + let referrer = Address::generate(&env); + let treasury = Address::generate(&env); + + // Circle is still Pending — should be rejected + let result = client.try_claim_referral_bonus(&referrer, &treasury); + assert!(result.is_err(), "claim_referral_bonus should fail when circle is not Active"); + } + + // ── claim_streak_bonus ─────────────────────────────────────────────────────── + + #[test] + fn test_claim_streak_bonus_transfers_tokens() { + let env = Env::default(); + let (client, _admin, m1, _m2, token_id, _contract_id) = + setup_active_circle_with_token(&env); + let token_client = TokenClient::new(&env, &token_id); + + env.mock_all_auths(); + + // Give m1 a streak of 3 by calling update_streak three times + client.update_streak(&m1, &0u32); + client.update_streak(&m1, &1u32); + client.update_streak(&m1, &2u32); + + let member_balance_before = token_client.balance(&m1); + + let treasury = Address::generate(&env); + client.claim_streak_bonus(&m1, &treasury); + + let member_balance_after = token_client.balance(&m1); + + // bonus = contribution_amount * streak / 100 + // = 100_0000000 * 3 / 100 = 3_0000000 + let expected_bonus = 3_0000000i128; + assert_eq!( + member_balance_after - member_balance_before, + expected_bonus, + "member should receive exact streak bonus" + ); + } + + #[test] + fn test_claim_streak_bonus_below_threshold_fails() { + let env = Env::default(); + let (client, _admin, m1, _m2, _token_id, _contract_id) = + setup_active_circle_with_token(&env); + + env.mock_all_auths(); + + // Only 2 rounds of streak — below threshold of 3 + client.update_streak(&m1, &0u32); + client.update_streak(&m1, &1u32); + + let treasury = Address::generate(&env); + let result = client.try_claim_streak_bonus(&m1, &treasury); + assert!( + result.is_err(), + "streak bonus should fail when streak < 3" + ); + } + + #[test] + fn test_claim_streak_bonus_no_token_set_returns_error() { + let env = Env::default(); + let mut config = create_config(&env); + config.max_members = 2u32; + let admin = config.organizer.clone(); + let factory = Address::generate(&env); + let contract_id = env.register(circle::Circle, circle::CircleArgs::__constructor(&admin, &factory, &config)); + let client = circle::CircleClient::new(&env, &contract_id); + + env.mock_all_auths(); + + let m1 = Address::generate(&env); + let m2 = Address::generate(&env); + client.join(&m1); + client.join(&m2); + + // Build up a streak — but do NOT set the token + client.update_streak(&m1, &0u32); + client.update_streak(&m1, &1u32); + client.update_streak(&m1, &2u32); + + let treasury = Address::generate(&env); + let result = client.try_claim_streak_bonus(&m1, &treasury); + assert!(result.is_err(), "should fail when no token is configured"); + } + + #[test] + fn test_claim_streak_bonus_not_active_circle() { + let env = Env::default(); + let config = create_config(&env); // stays Pending + let admin = config.organizer.clone(); + let factory = Address::generate(&env); + let contract_id = env.register(circle::Circle, circle::CircleArgs::__constructor(&admin, &factory, &config)); + let client = circle::CircleClient::new(&env, &contract_id); + + env.mock_all_auths(); + let member = Address::generate(&env); + let treasury = Address::generate(&env); + + let result = client.try_claim_streak_bonus(&member, &treasury); + assert!(result.is_err(), "claim_streak_bonus should fail when circle is not Active"); + } } diff --git a/packages/circle/src/types.rs b/packages/circle/src/types.rs index 00a36eb..3708719 100644 --- a/packages/circle/src/types.rs +++ b/packages/circle/src/types.rs @@ -216,6 +216,7 @@ pub enum CircleError { SelfReferral = 35, StreakBonusUnlocked = 36, InvalidStreakThreshold = 37, + TokenNotSet = 38, } #[contractevent] diff --git a/packages/circle/test_snapshots/test/tests/test_auction_bid_duplicate.1.json b/packages/circle/test_snapshots/test/tests/test_auction_bid_duplicate.1.json new file mode 100644 index 0000000..ed57aca --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_auction_bid_duplicate.1.json @@ -0,0 +1,708 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "auction_bid", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "u32": 500 + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "bidder" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "discount_bips" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_auction_bid_happy_path.1.json b/packages/circle/test_snapshots/test/tests/test_auction_bid_happy_path.1.json new file mode 100644 index 0000000..9048077 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_auction_bid_happy_path.1.json @@ -0,0 +1,753 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "auction_bid", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "u32": 500 + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "bidder" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "discount_bips" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [ + { + "event": { + "ext": "v0", + "contract_id": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "type_": "contract", + "body": { + "v0": { + "topics": [ + { + "symbol": "auction_bid_placed" + } + ], + "data": { + "map": [ + { + "key": { + "symbol": "bidder" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "discount_bips" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + } + ] + } + } + } + }, + "failed_call": false + } + ] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_auction_bid_invalid_discount.1.json b/packages/circle/test_snapshots/test/tests/test_auction_bid_invalid_discount.1.json new file mode 100644 index 0000000..55c1c5a --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_auction_bid_invalid_discount.1.json @@ -0,0 +1,626 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_no_double_claim.1.json b/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_no_double_claim.1.json new file mode 100644 index 0000000..8df5aba --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_no_double_claim.1.json @@ -0,0 +1,1240 @@ +{ + "generators": { + "address": 8, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [], + [ + [ + "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + { + "function": { + "contract_fn": { + "contract_address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "function_name": "set_admin", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "function_name": "mint", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "i128": "10000000000000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "set_token", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + }, + { + "address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "register_referral", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + }, + { + "u32": 500 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "claim_referral_bonus", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "account": { + "account_id": "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + "balance": "0", + "seq_num": "0", + "num_sub_entries": 0, + "inflation_dest": null, + "flags": 0, + "home_domain": "", + "thresholds": "01010101", + "signers": [], + "ext": "v0" + } + }, + "ext": "v0" + }, + "live_until": null + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Referrals" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "bonus_pct" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "claimed" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "referred" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + }, + { + "key": { + "symbol": "referrer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Token" + } + ] + }, + "val": { + "address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "4270020994084947596" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "6277191135259896685" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + "key": { + "ledger_key_nonce": { + "nonce": "2032731177588607455" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + "key": { + "ledger_key_nonce": { + "nonce": "8370022561469687789" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": { + "vec": [ + { + "symbol": "Balance" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "9999950000000" + } + }, + { + "key": { + "symbol": "authorized" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "clawback" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 518400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": { + "vec": [ + { + "symbol": "Balance" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "50000000" + } + }, + { + "key": { + "symbol": "authorized" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "clawback" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 518400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": "stellar_asset", + "storage": [ + { + "key": { + "symbol": "METADATA" + }, + "val": { + "map": [ + { + "key": { + "symbol": "decimal" + }, + "val": { + "u32": 7 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "aaa:GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV" + } + }, + { + "key": { + "symbol": "symbol" + }, + "val": { + "string": "aaa" + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "AssetInfo" + } + ] + }, + "val": { + "vec": [ + { + "symbol": "AlphaNum4" + }, + { + "map": [ + { + "key": { + "symbol": "asset_code" + }, + "val": { + "string": "aaa\\0" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "bytes": "0000000000000000000000000000000000000000000000000000000000000005" + } + } + ] + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 120960 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_no_token_set_returns_error.1.json b/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_no_token_set_returns_error.1.json new file mode 100644 index 0000000..1bd191b --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_no_token_set_returns_error.1.json @@ -0,0 +1,834 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "register_referral", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "u32": 500 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Referrals" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "bonus_pct" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "claimed" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "referred" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "referrer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_not_active_circle.1.json b/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_not_active_circle.1.json new file mode 100644 index 0000000..10338aa --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_not_active_circle.1.json @@ -0,0 +1,403 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 5 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_transfers_tokens.1.json b/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_transfers_tokens.1.json new file mode 100644 index 0000000..90d22b2 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_claim_referral_bonus_transfers_tokens.1.json @@ -0,0 +1,1241 @@ +{ + "generators": { + "address": 8, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [], + [ + [ + "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + { + "function": { + "contract_fn": { + "contract_address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "function_name": "set_admin", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "function_name": "mint", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "i128": "10000000000000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "set_token", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + }, + { + "address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "register_referral", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + }, + { + "u32": 500 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "claim_referral_bonus", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "account": { + "account_id": "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + "balance": "0", + "seq_num": "0", + "num_sub_entries": 0, + "inflation_dest": null, + "flags": 0, + "home_domain": "", + "thresholds": "01010101", + "signers": [], + "ext": "v0" + } + }, + "ext": "v0" + }, + "live_until": null + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Referrals" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "bonus_pct" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "claimed" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "referred" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + }, + { + "key": { + "symbol": "referrer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Token" + } + ] + }, + "val": { + "address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "4270020994084947596" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "6277191135259896685" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + "key": { + "ledger_key_nonce": { + "nonce": "2032731177588607455" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + "key": { + "ledger_key_nonce": { + "nonce": "8370022561469687789" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": { + "vec": [ + { + "symbol": "Balance" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "9999950000000" + } + }, + { + "key": { + "symbol": "authorized" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "clawback" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 518400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": { + "vec": [ + { + "symbol": "Balance" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "50000000" + } + }, + { + "key": { + "symbol": "authorized" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "clawback" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 518400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": "stellar_asset", + "storage": [ + { + "key": { + "symbol": "METADATA" + }, + "val": { + "map": [ + { + "key": { + "symbol": "decimal" + }, + "val": { + "u32": 7 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "aaa:GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV" + } + }, + { + "key": { + "symbol": "symbol" + }, + "val": { + "string": "aaa" + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "AssetInfo" + } + ] + }, + "val": { + "vec": [ + { + "symbol": "AlphaNum4" + }, + { + "map": [ + { + "key": { + "symbol": "asset_code" + }, + "val": { + "string": "aaa\\0" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "bytes": "0000000000000000000000000000000000000000000000000000000000000005" + } + } + ] + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 120960 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_below_threshold_fails.1.json b/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_below_threshold_fails.1.json new file mode 100644 index 0000000..1e09915 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_below_threshold_fails.1.json @@ -0,0 +1,1001 @@ +{ + "generators": { + "address": 8, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [], + [ + [ + "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + { + "function": { + "contract_fn": { + "contract_address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "function_name": "set_admin", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "function_name": "mint", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "i128": "10000000000000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "set_token", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + }, + { + "address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "account": { + "account_id": "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + "balance": "0", + "seq_num": "0", + "num_sub_entries": 0, + "inflation_dest": null, + "flags": 0, + "home_domain": "", + "thresholds": "01010101", + "signers": [], + "ext": "v0" + } + }, + "ext": "v0" + }, + "live_until": null + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Streaks" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "current_streak" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "last_round" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "longest_streak" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Token" + } + ] + }, + "val": { + "address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + "key": { + "ledger_key_nonce": { + "nonce": "2032731177588607455" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": { + "vec": [ + { + "symbol": "Balance" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "10000000000000" + } + }, + { + "key": { + "symbol": "authorized" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "clawback" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 518400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": "stellar_asset", + "storage": [ + { + "key": { + "symbol": "METADATA" + }, + "val": { + "map": [ + { + "key": { + "symbol": "decimal" + }, + "val": { + "u32": 7 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "aaa:GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV" + } + }, + { + "key": { + "symbol": "symbol" + }, + "val": { + "string": "aaa" + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "AssetInfo" + } + ] + }, + "val": { + "vec": [ + { + "symbol": "AlphaNum4" + }, + { + "map": [ + { + "key": { + "symbol": "asset_code" + }, + "val": { + "string": "aaa\\0" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "bytes": "0000000000000000000000000000000000000000000000000000000000000005" + } + } + ] + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 120960 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_no_token_set_returns_error.1.json b/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_no_token_set_returns_error.1.json new file mode 100644 index 0000000..a39b1c6 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_no_token_set_returns_error.1.json @@ -0,0 +1,690 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [], + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Streaks" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "current_streak" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "last_round" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "longest_streak" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_not_active_circle.1.json b/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_not_active_circle.1.json new file mode 100644 index 0000000..10338aa --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_not_active_circle.1.json @@ -0,0 +1,403 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 5 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_transfers_tokens.1.json b/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_transfers_tokens.1.json new file mode 100644 index 0000000..29088b4 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_claim_streak_bonus_transfers_tokens.1.json @@ -0,0 +1,1097 @@ +{ + "generators": { + "address": 8, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [], + [ + [ + "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + { + "function": { + "contract_fn": { + "contract_address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "function_name": "set_admin", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "function_name": "mint", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "i128": "10000000000000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "set_token", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + }, + { + "address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [], + [], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "claim_streak_bonus", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "account": { + "account_id": "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + "balance": "0", + "seq_num": "0", + "num_sub_entries": 0, + "inflation_dest": null, + "flags": 0, + "home_domain": "", + "thresholds": "01010101", + "signers": [], + "ext": "v0" + } + }, + "ext": "v0" + }, + "live_until": null + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Streaks" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "current_streak" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "last_round" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "longest_streak" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Token" + } + ] + }, + "val": { + "address": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "4270020994084947596" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM", + "key": { + "ledger_key_nonce": { + "nonce": "2032731177588607455" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": { + "vec": [ + { + "symbol": "Balance" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "9999970000000" + } + }, + { + "key": { + "symbol": "authorized" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "clawback" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 518400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": { + "vec": [ + { + "symbol": "Balance" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "30000000" + } + }, + { + "key": { + "symbol": "authorized" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "clawback" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 518400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CDLDVFKHEZ2RVB3NG4UQA4VPD3TSHV6XMHXMHP2BSGCJ2IIWVTOHGDSG", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": "stellar_asset", + "storage": [ + { + "key": { + "symbol": "METADATA" + }, + "val": { + "map": [ + { + "key": { + "symbol": "decimal" + }, + "val": { + "u32": 7 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "aaa:GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL7NV" + } + }, + { + "key": { + "symbol": "symbol" + }, + "val": { + "string": "aaa" + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "AssetInfo" + } + ] + }, + "val": { + "vec": [ + { + "symbol": "AlphaNum4" + }, + { + "map": [ + { + "key": { + "symbol": "asset_code" + }, + "val": { + "string": "aaa\\0" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "bytes": "0000000000000000000000000000000000000000000000000000000000000005" + } + } + ] + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 120960 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_contribute.1.json b/packages/circle/test_snapshots/test/tests/test_contribute.1.json index fa0f93c..e5699f9 100644 --- a/packages/circle/test_snapshots/test/tests/test_contribute.1.json +++ b/packages/circle/test_snapshots/test/tests/test_contribute.1.json @@ -120,50 +120,62 @@ }, "durability": "persistent", "val": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" }, - "val": { - "i128": "1000000000" + { + "u32": 0 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 0 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } } ] } @@ -625,18 +637,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_contribute_not_member.1.json b/packages/circle/test_snapshots/test/tests/test_contribute_not_member.1.json index 519fbfe..a2ca0e9 100644 --- a/packages/circle/test_snapshots/test/tests/test_contribute_not_member.1.json +++ b/packages/circle/test_snapshots/test/tests/test_contribute_not_member.1.json @@ -96,7 +96,7 @@ }, "durability": "persistent", "val": { - "vec": [] + "map": [] } } }, @@ -556,18 +556,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_contribute_wrong_amount.1.json b/packages/circle/test_snapshots/test/tests/test_contribute_wrong_amount.1.json index bd5f16d..cfa716f 100644 --- a/packages/circle/test_snapshots/test/tests/test_contribute_wrong_amount.1.json +++ b/packages/circle/test_snapshots/test/tests/test_contribute_wrong_amount.1.json @@ -96,7 +96,7 @@ }, "durability": "persistent", "val": { - "vec": [] + "map": [] } } }, @@ -556,18 +556,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_duplicate_join.1.json b/packages/circle/test_snapshots/test/tests/test_duplicate_join.1.json index 6a012d4..a79b576 100644 --- a/packages/circle/test_snapshots/test/tests/test_duplicate_join.1.json +++ b/packages/circle/test_snapshots/test/tests/test_duplicate_join.1.json @@ -77,7 +77,7 @@ }, "durability": "persistent", "val": { - "vec": [] + "map": [] } } }, @@ -469,18 +469,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_exit.1.json b/packages/circle/test_snapshots/test/tests/test_exit.1.json index 8833b47..c5c2c45 100644 --- a/packages/circle/test_snapshots/test/tests/test_exit.1.json +++ b/packages/circle/test_snapshots/test/tests/test_exit.1.json @@ -139,50 +139,62 @@ }, "durability": "persistent", "val": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" }, - "val": { - "i128": "1000000000" + { + "u32": 0 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 0 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } } ] } @@ -644,18 +656,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_fee_bps_applied_on_payout.1.json b/packages/circle/test_snapshots/test/tests/test_fee_bps_applied_on_payout.1.json index dde01e9..3ee62b0 100644 --- a/packages/circle/test_snapshots/test/tests/test_fee_bps_applied_on_payout.1.json +++ b/packages/circle/test_snapshots/test/tests/test_fee_bps_applied_on_payout.1.json @@ -95,7 +95,6 @@ ] ], [], - [], [] ], "ledger": { @@ -148,94 +147,118 @@ }, "durability": "persistent", "val": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" }, - "val": { - "i128": "1000000000" + { + "u32": 0 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 0 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" }, - "val": { - "i128": "1000000000" + { + "u32": 0 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 0 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } } ] } @@ -325,7 +348,7 @@ "symbol": "total_received" }, "val": { - "i128": "0" + "i128": "2000000000" } } ] @@ -393,7 +416,7 @@ "symbol": "total_received" }, "val": { - "i128": "1900000000" + "i128": "0" } } ] @@ -430,7 +453,7 @@ "symbol": "amount" }, "val": { - "i128": "1900000000" + "i128": "2000000000" } }, { @@ -438,7 +461,7 @@ "symbol": "fee" }, "val": { - "i128": "100000000" + "i128": "0" } }, { @@ -454,7 +477,7 @@ "symbol": "recipient" }, "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" } }, { @@ -669,7 +692,7 @@ "symbol": "payout_bitmap" }, "val": { - "u128": "0" + "u128": "1" } }, { @@ -717,7 +740,7 @@ "symbol": "total_fees" }, "val": { - "i128": "100000000" + "i128": "0" } }, { @@ -725,7 +748,7 @@ "symbol": "total_payouts" }, "val": { - "i128": "1900000000" + "i128": "2000000000" } }, { @@ -750,18 +773,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 500 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_full_lifecycle.1.json b/packages/circle/test_snapshots/test/tests/test_full_lifecycle.1.json index 220dd5c..8f972b3 100644 --- a/packages/circle/test_snapshots/test/tests/test_full_lifecycle.1.json +++ b/packages/circle/test_snapshots/test/tests/test_full_lifecycle.1.json @@ -345,402 +345,510 @@ }, "durability": "persistent", "val": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" }, - "val": { - "i128": "1000000000" + { + "u32": 0 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 0 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" }, - "val": { - "i128": "1000000000" + { + "u32": 1 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 0 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 1 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" }, - "val": { - "i128": "1000000000" + { + "u32": 2 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 0 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 2 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" }, - "val": { - "i128": "1000000000" + { + "u32": 0 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" }, - "val": { - "i128": "1000000000" + { + "u32": 1 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 1 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" }, - "val": { - "i128": "1000000000" + { + "u32": 2 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 2 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" }, - "val": { - "i128": "1000000000" + { + "u32": 0 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" }, - "val": { - "i128": "1000000000" + { + "u32": 1 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 1 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" }, - "val": { - "i128": "1000000000" + { + "u32": 2 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 2 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } } ] } @@ -830,7 +938,7 @@ "symbol": "total_received" }, "val": { - "i128": "0" + "i128": "3000000000" } } ] @@ -966,7 +1074,7 @@ "symbol": "total_received" }, "val": { - "i128": "6000000000" + "i128": "3000000000" } } ] @@ -1027,7 +1135,7 @@ "symbol": "recipient" }, "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" } }, { @@ -1079,7 +1187,7 @@ "symbol": "recipient" }, "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" } }, { @@ -1131,7 +1239,7 @@ "symbol": "recipient" }, "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" } }, { @@ -1346,7 +1454,7 @@ "symbol": "payout_bitmap" }, "val": { - "u128": "0" + "u128": "7" } }, { @@ -1427,18 +1535,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_get_contributions.1.json b/packages/circle/test_snapshots/test/tests/test_get_contributions.1.json new file mode 100644 index 0000000..182620f --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_get_contributions.1.json @@ -0,0 +1,728 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_initialize.1.json b/packages/circle/test_snapshots/test/tests/test_initialize.1.json index 28944a0..ac4a11f 100644 --- a/packages/circle/test_snapshots/test/tests/test_initialize.1.json +++ b/packages/circle/test_snapshots/test/tests/test_initialize.1.json @@ -58,7 +58,7 @@ }, "durability": "persistent", "val": { - "vec": [] + "map": [] } } }, @@ -373,18 +373,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_join.1.json b/packages/circle/test_snapshots/test/tests/test_join.1.json index 6a012d4..a79b576 100644 --- a/packages/circle/test_snapshots/test/tests/test_join.1.json +++ b/packages/circle/test_snapshots/test/tests/test_join.1.json @@ -77,7 +77,7 @@ }, "durability": "persistent", "val": { - "vec": [] + "map": [] } } }, @@ -469,18 +469,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_join_full.1.json b/packages/circle/test_snapshots/test/tests/test_join_full.1.json index 519fbfe..a2ca0e9 100644 --- a/packages/circle/test_snapshots/test/tests/test_join_full.1.json +++ b/packages/circle/test_snapshots/test/tests/test_join_full.1.json @@ -96,7 +96,7 @@ }, "durability": "persistent", "val": { - "vec": [] + "map": [] } } }, @@ -556,18 +556,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_pause_unpause.1.json b/packages/circle/test_snapshots/test/tests/test_pause_unpause.1.json index cb2b1bc..528e588 100644 --- a/packages/circle/test_snapshots/test/tests/test_pause_unpause.1.json +++ b/packages/circle/test_snapshots/test/tests/test_pause_unpause.1.json @@ -155,7 +155,7 @@ }, "durability": "persistent", "val": { - "vec": [] + "map": [] } } }, @@ -555,18 +555,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_pause_unpause_extended.1.json b/packages/circle/test_snapshots/test/tests/test_pause_unpause_extended.1.json new file mode 100644 index 0000000..67a0e47 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_pause_unpause_extended.1.json @@ -0,0 +1,751 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "pause_circle", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "unpause_circle", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "paused" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 5 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [ + { + "event": { + "ext": "v0", + "contract_id": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "type_": "contract", + "body": { + "v0": { + "topics": [ + { + "symbol": "member_joined" + } + ], + "data": { + "map": [ + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + } + ] + } + } + } + }, + "failed_call": false + } + ] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_pause_unpause_unauthorized.1.json b/packages/circle/test_snapshots/test/tests/test_pause_unpause_unauthorized.1.json new file mode 100644 index 0000000..25a6ef8 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_pause_unpause_unauthorized.1.json @@ -0,0 +1,404 @@ +{ + "generators": { + "address": 4, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 5 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_raise_dispute_duplicate.1.json b/packages/circle/test_snapshots/test/tests/test_raise_dispute_duplicate.1.json new file mode 100644 index 0000000..f191a35 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_raise_dispute_duplicate.1.json @@ -0,0 +1,634 @@ +{ + "generators": { + "address": 4, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "raise_dispute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "bytes": "0101010101010101010101010101010101010101010101010101010101010101" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Dispute" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "evidence_hash" + }, + "val": { + "bytes": "0101010101010101010101010101010101010101010101010101010101010101" + } + }, + { + "key": { + "symbol": "raised_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "raised_by" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "resolution" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "resolved_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "resolved_by" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 5 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 4 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_raise_dispute_happy_path.1.json b/packages/circle/test_snapshots/test/tests/test_raise_dispute_happy_path.1.json new file mode 100644 index 0000000..f191a35 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_raise_dispute_happy_path.1.json @@ -0,0 +1,634 @@ +{ + "generators": { + "address": 4, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "raise_dispute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "bytes": "0101010101010101010101010101010101010101010101010101010101010101" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Dispute" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "evidence_hash" + }, + "val": { + "bytes": "0101010101010101010101010101010101010101010101010101010101010101" + } + }, + { + "key": { + "symbol": "raised_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "raised_by" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "resolution" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "resolved_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "resolved_by" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 5 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 4 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_report_late_happy_path.1.json b/packages/circle/test_snapshots/test/tests/test_report_late_happy_path.1.json new file mode 100644 index 0000000..527e48b --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_report_late_happy_path.1.json @@ -0,0 +1,772 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "report_late", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 1000, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "1000" + } + } + ] + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "1" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_resolve_dispute_happy_path.1.json b/packages/circle/test_snapshots/test/tests/test_resolve_dispute_happy_path.1.json new file mode 100644 index 0000000..8f7c4d9 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_resolve_dispute_happy_path.1.json @@ -0,0 +1,676 @@ +{ + "generators": { + "address": 4, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "raise_dispute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "bytes": "0101010101010101010101010101010101010101010101010101010101010101" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "resolve_dispute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + }, + { + "u32": 1 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Dispute" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "evidence_hash" + }, + "val": { + "bytes": "0101010101010101010101010101010101010101010101010101010101010101" + } + }, + { + "key": { + "symbol": "raised_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "raised_by" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "resolution" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "resolved_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "resolved_by" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 5 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_set_fee_bps_updates_payout_fee.1.json b/packages/circle/test_snapshots/test/tests/test_set_fee_bps_updates_payout_fee.1.json index 33387a5..759c73b 100644 --- a/packages/circle/test_snapshots/test/tests/test_set_fee_bps_updates_payout_fee.1.json +++ b/packages/circle/test_snapshots/test/tests/test_set_fee_bps_updates_payout_fee.1.json @@ -189,94 +189,118 @@ }, "durability": "persistent", "val": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" }, - "val": { - "i128": "1000000000" + { + "u32": 0 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 0 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" }, - "val": { - "i128": "1000000000" + { + "u32": 0 } - }, - { - "key": { - "symbol": "member" + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" - } - }, - { - "key": { - "symbol": "on_time" + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "round" + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } }, - "val": { - "u32": 0 - } - }, - { - "key": { - "symbol": "timestamp" + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } }, - "val": { - "u64": "0" + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } } - } - ] + ] + } } ] } @@ -366,7 +390,7 @@ "symbol": "total_received" }, "val": { - "i128": "0" + "i128": "2000000000" } } ] @@ -434,7 +458,7 @@ "symbol": "total_received" }, "val": { - "i128": "1800000000" + "i128": "0" } } ] @@ -471,7 +495,7 @@ "symbol": "amount" }, "val": { - "i128": "1800000000" + "i128": "2000000000" } }, { @@ -479,7 +503,7 @@ "symbol": "fee" }, "val": { - "i128": "200000000" + "i128": "0" } }, { @@ -495,7 +519,7 @@ "symbol": "recipient" }, "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" } }, { @@ -710,7 +734,7 @@ "symbol": "payout_bitmap" }, "val": { - "u128": "0" + "u128": "1" } }, { @@ -758,7 +782,7 @@ "symbol": "total_fees" }, "val": { - "i128": "200000000" + "i128": "0" } }, { @@ -766,7 +790,7 @@ "symbol": "total_payouts" }, "val": { - "i128": "1800000000" + "i128": "2000000000" } }, { diff --git a/packages/circle/test_snapshots/test/tests/test_trigger_payout_fixed_happy_path.1.json b/packages/circle/test_snapshots/test/tests/test_trigger_payout_fixed_happy_path.1.json new file mode 100644 index 0000000..4b1b59a --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_trigger_payout_fixed_happy_path.1.json @@ -0,0 +1,944 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "2000000000" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "2000000000" + } + }, + { + "key": { + "symbol": "fee" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "recipient" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "1" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "2000000000" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [ + { + "event": { + "ext": "v0", + "contract_id": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "type_": "contract", + "body": { + "v0": { + "topics": [ + { + "symbol": "payout_executed" + } + ], + "data": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "2000000000" + } + }, + { + "key": { + "symbol": "fee" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "recipient" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + } + ] + } + } + } + }, + "failed_call": false + } + ] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_trigger_payout_random_happy_path.1.json b/packages/circle/test_snapshots/test/tests/test_trigger_payout_random_happy_path.1.json new file mode 100644 index 0000000..3ee62b0 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_trigger_payout_random_happy_path.1.json @@ -0,0 +1,883 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "2000000000" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "2000000000" + } + }, + { + "key": { + "symbol": "fee" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "recipient" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "1" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "2000000000" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_trigger_payout_unauthorized.1.json b/packages/circle/test_snapshots/test/tests/test_trigger_payout_unauthorized.1.json new file mode 100644 index 0000000..c69f8f8 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_trigger_payout_unauthorized.1.json @@ -0,0 +1,829 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "contribute", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "i128": "1000000000" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "u32": 0 + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "member" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "on_time" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + } + ] + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_unauthorized.1.json b/packages/circle/test_snapshots/test/tests/test_unauthorized.1.json index f819a1d..6e1c6dc 100644 --- a/packages/circle/test_snapshots/test/tests/test_unauthorized.1.json +++ b/packages/circle/test_snapshots/test/tests/test_unauthorized.1.json @@ -58,7 +58,7 @@ }, "durability": "persistent", "val": { - "vec": [] + "map": [] } } }, @@ -373,18 +373,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" } - }, - { - "key": { - "vec": [ - { - "symbol": "FeeBps" - } - ] - }, - "val": { - "u32": 0 - } } ] } diff --git a/packages/circle/test_snapshots/test/tests/test_vote_payout_duplicate.1.json b/packages/circle/test_snapshots/test/tests/test_vote_payout_duplicate.1.json new file mode 100644 index 0000000..b1ad529 --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_vote_payout_duplicate.1.json @@ -0,0 +1,708 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "vote_payout", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "vote_for" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "voter" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/packages/circle/test_snapshots/test/tests/test_vote_payout_happy_path.1.json b/packages/circle/test_snapshots/test/tests/test_vote_payout_happy_path.1.json new file mode 100644 index 0000000..d3067bb --- /dev/null +++ b/packages/circle/test_snapshots/test/tests/test_vote_payout_happy_path.1.json @@ -0,0 +1,753 @@ +{ + "generators": { + "address": 5, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "join", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "function_name": "vote_payout", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + }, + { + "u32": 0 + } + ] + } + }, + "sub_invocations": [] + } + ] + ] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Bids" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Contributions" + } + ] + }, + "durability": "persistent", + "val": { + "map": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Members" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "address" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "exited_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "joined_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "position" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "strikes" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "total_contributions" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": "0" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Payouts" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "vec": [ + { + "symbol": "Votes" + } + ] + }, + "durability": "persistent", + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "vote_for" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "voter" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "symbol": "reent" + }, + "val": { + "bool": false + } + }, + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Circle" + } + ] + }, + "val": { + "map": [ + { + "key": { + "symbol": "collateral_amount" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "contribution_amount" + }, + "val": { + "i128": "1000000000" + } + }, + { + "key": { + "symbol": "contribution_deadline_seconds" + }, + "val": { + "u64": "604800" + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "current_round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "factory" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "symbol": "grace_period_seconds" + }, + "val": { + "u64": "86400" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "max_members" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "max_strikes" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "member_count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "min_moi_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Circle" + } + }, + { + "key": { + "symbol": "organizer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "symbol": "payout_bitmap" + }, + "val": { + "u128": "0" + } + }, + { + "key": { + "symbol": "payout_type" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "penalty_bps" + }, + "val": { + "u32": 500 + } + }, + { + "key": { + "symbol": "slug" + }, + "val": { + "string": "test-circle" + } + }, + { + "key": { + "symbol": "started_at" + }, + "val": { + "u64": "0" + } + }, + { + "key": { + "symbol": "status" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_fees" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_payouts" + }, + "val": { + "i128": "0" + } + }, + { + "key": { + "symbol": "total_rounds" + }, + "val": { + "u32": 5 + } + } + ] + } + }, + { + "key": { + "vec": [ + { + "symbol": "Factory" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [ + { + "event": { + "ext": "v0", + "contract_id": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "type_": "contract", + "body": { + "v0": { + "topics": [ + { + "symbol": "vote_cast" + } + ], + "data": { + "map": [ + { + "key": { + "symbol": "round" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "vote_for" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM" + } + }, + { + "key": { + "symbol": "voter" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + } + } + }, + "failed_call": false + } + ] +} \ No newline at end of file diff --git a/packages/common/src/vrf.rs b/packages/common/src/vrf.rs index be98406..8649718 100644 --- a/packages/common/src/vrf.rs +++ b/packages/common/src/vrf.rs @@ -1,4 +1,5 @@ -use soroban_sdk::{Env, Set}; +use soroban_sdk::Env; + pub fn random_in_range(env: &Env, max: u32) -> u32 { let salt = env.prng().gen::(); let sequence = env.ledger().sequence(); @@ -6,21 +7,24 @@ pub fn random_in_range(env: &Env, max: u32) -> u32 { if max == 0 { return 0; } (seed % (max as u64)) as u32 } + pub fn shuffle_positions(env: &Env, n: u32) -> soroban_sdk::Vec { let mut shuffled = soroban_sdk::Vec::new(env); - let mut used: Set = Set::new(env); - let mut remaining = n; + // Track used positions in a Vec; linear scan is fine for small circle sizes + let mut used: soroban_sdk::Vec = soroban_sdk::Vec::new(env); for _ in 0..n { + // If all positions are already chosen, stop early + if used.len() >= n { + break; + } loop { let pos = random_in_range(env, n); if !used.contains(&pos) { shuffled.push_back(pos); - used.insert(pos); + used.push_back(pos); break; } - remaining = remaining.saturating_sub(1); - if remaining == 0 { break; } } } shuffled