diff --git a/bill_payments/src/lib.rs b/bill_payments/src/lib.rs index 7523cc7..cd64fec 100644 --- a/bill_payments/src/lib.rs +++ b/bill_payments/src/lib.rs @@ -1360,11 +1360,7 @@ impl BillPayments { .get(&STORAGE_UNPAID_TOTALS) .unwrap_or_else(|| Map::new(env)); let current = totals.get(owner.clone()).unwrap_or(0); - let next = if delta >= 0 { - current.saturating_add(delta) - } else { - current.saturating_sub(delta.saturating_abs()) - }; + let next = current.checked_add(delta).expect("overflow"); totals.set(owner.clone(), next); env.storage() .instance() @@ -2264,6 +2260,7 @@ mod test { &(now - 1 - i as u64), &false, &0, + &String::from_str(&env, "XLM"), ); } @@ -2276,6 +2273,7 @@ mod test { &(now + 1 + i as u64), &false, &0, + &String::from_str(&env, "XLM"), ); } @@ -2309,6 +2307,7 @@ mod test { &(now + i as u64), // due_date >= now — strict less-than is required to be overdue &false, &0, + &String::from_str(&env, "XLM"), ); } @@ -2346,6 +2345,7 @@ mod test { &base_due, &true, &freq_days, + &String::from_str(&env, "XLM"), ); client.pay_bill(&owner, &bill_id); @@ -2359,6 +2359,8 @@ mod test { ); prop_assert!(!next_bill.paid, "next recurring bill must be unpaid"); } + } + /// Issue #102 – When pay_bill is called on a recurring bill, the contract /// creates the next occurrence. This test asserts every cloned field /// individually so that a regression in the clone logic (e.g. paid left diff --git a/bill_payments/tests/stress_test_large_amounts.rs b/bill_payments/tests/stress_test_large_amounts.rs index d1bab4b..e422188 100644 --- a/bill_payments/tests/stress_test_large_amounts.rs +++ b/bill_payments/tests/stress_test_large_amounts.rs @@ -158,43 +158,43 @@ fn test_get_total_unpaid_with_two_large_bills() { assert_eq!(total, amount + amount); } -// #[test] -// #[should_panic(expected = "overflow")] -// fn test_get_total_unpaid_overflow_panics() { -// let env = Env::default(); -// let contract_id = env.register_contract(None, BillPayments); -// let client = BillPaymentsClient::new(&env, &contract_id); -// let owner = ::generate(&env); +#[test] +#[should_panic(expected = "overflow")] +fn test_get_total_unpaid_overflow_panics() { + let env = Env::default(); + let contract_id = env.register_contract(None, BillPayments); + let client = BillPaymentsClient::new(&env, &contract_id); + let owner = ::generate(&env); -// env.mock_all_auths(); + env.mock_all_auths(); -// // Create two bills that will overflow when added -// let amount = i128::MAX / 2 + 1000; + // Create two bills that will overflow when added + let amount = i128::MAX / 2 + 1000; -// client.create_bill( -// &owner, -// &String::from_str(&env, "Bill1"), -// &amount, -// &1000000, -// &false, -// &0, -// &String::from_str(&env, "XLM"), -// ); + client.create_bill( + &owner, + &String::from_str(&env, "Bill1"), + &amount, + &1000000, + &false, + &0, + &String::from_str(&env, "XLM"), + ); -// env.mock_all_auths(); -// client.create_bill( -// &owner, -// &String::from_str(&env, "Bill2"), -// &amount, -// &1000000, -// &false, -// &0, -// &String::from_str(&env, "XLM"), -// ); + env.mock_all_auths(); + client.create_bill( + &owner, + &String::from_str(&env, "Bill2"), + &amount, + &1000000, + &false, + &0, + &String::from_str(&env, "XLM"), + ); -// // This should panic due to overflow -// client.get_total_unpaid(&owner); -// } + // This should panic due to overflow + client.get_total_unpaid(&owner); +} #[test] fn test_multiple_large_bills_different_owners() { diff --git a/gas_results.json b/gas_results.json new file mode 100644 index 0000000..f595367 --- /dev/null +++ b/gas_results.json @@ -0,0 +1,7 @@ +[ + {"contract":"bill_payments","method":"get_total_unpaid","scenario":"100_bills_50_cancelled","cpu":1077221,"mem":235460}, + {"contract":"savings_goals","method":"get_all_goals","scenario":"100_goals_single_owner","cpu":2661552,"mem":480721}, + {"contract":"insurance","method":"get_total_monthly_premium","scenario":"100_active_policies","cpu":2373104,"mem":427575}, + {"contract":"family_wallet","method":"configure_multisig","scenario":"9_signers_threshold_all","cpu":342677,"mem":69106}, + {"contract":"remittance_split","method":"distribute_usdc","scenario":"4_recipients_all_nonzero","cpu":654751,"mem":86208} +] diff --git a/insurance/src/lib.rs b/insurance/src/lib.rs index 1d5068f..ff63d85 100644 --- a/insurance/src/lib.rs +++ b/insurance/src/lib.rs @@ -2078,6 +2078,87 @@ mod test_events { assert_eq!(result, Err(Ok(InsuranceError::PolicyInactive))); } + // ----------------------------------------------------------------------- + // Property-based tests: time-dependent behavior + // ----------------------------------------------------------------------- + + proptest! { + /// After paying a premium at any timestamp `now`, + /// next_payment_date must always equal now + 30 days. + #[test] + fn prop_pay_premium_sets_next_payment_date( + now in 1_000_000u64..100_000_000u64, + ) { + let env = make_env(); + env.ledger().set_timestamp(now); + env.mock_all_auths(); + let cid = env.register_contract(None, Insurance); + let client = InsuranceClient::new(&env, &cid); + let owner = Address::generate(&env); + + let policy_id = client.create_policy( + &owner, + &String::from_str(&env, "Policy"), + &String::from_str(&env, "health"), + &100, + &10000, + ); + + client.pay_premium(&owner, &policy_id); + + let policy = client.get_policy(&policy_id).unwrap(); + prop_assert_eq!( + policy.next_payment_date, + now + 30 * 86400, + "next_payment_date must equal now + 30 days after premium payment" + ); + } + } + + proptest! { + /// A premium schedule must not execute before its due date, + /// and must execute at or after its due date. + #[test] + fn prop_execute_due_schedules_only_triggers_past_due( + creation_time in 1_000_000u64..5_000_000u64, + gap in 1000u64..1_000_000u64, + ) { + let env = make_env(); + env.ledger().set_timestamp(creation_time); + env.mock_all_auths(); + let cid = env.register_contract(None, Insurance); + let client = InsuranceClient::new(&env, &cid); + let owner = Address::generate(&env); + + let policy_id = client.create_policy( + &owner, + &String::from_str(&env, "Policy"), + &String::from_str(&env, "health"), + &100, + &10000, + ); + + // Schedule fires at creation_time + gap (strictly in the future) + let next_due = creation_time + gap; + let schedule_id = client.create_premium_schedule(&owner, &policy_id, &next_due, &0); + + // One tick before due: schedule must not execute + env.ledger().set_timestamp(next_due - 1); + let executed_before = client.execute_due_premium_schedules(); + prop_assert_eq!( + executed_before.len(), + 0u32, + "schedule must not fire before its due date" + ); + + // Exactly at due date: schedule must execute + env.ledger().set_timestamp(next_due); + let executed_at = client.execute_due_premium_schedules(); + prop_assert_eq!(executed_at.len(), 1u32); + prop_assert_eq!(executed_at.get(0).unwrap(), schedule_id); + } + } + // ══════════════════════════════════════════════════════════════════════ // Time & Ledger Drift Resilience Tests (#158) // diff --git a/insurance/test_snapshots/test/test_get_active_policies_paginated.1.json b/insurance/test_snapshots/test/test_get_active_policies_paginated.1.json index 7635fb2..6751dcc 100644 --- a/insurance/test_snapshots/test/test_get_active_policies_paginated.1.json +++ b/insurance/test_snapshots/test/test_get_active_policies_paginated.1.json @@ -911,6 +911,26 @@ } ] } + }, + { + "key": { + "symbol": "PRM_TOT" + }, + "val": { + "map": [ + { + "key": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + }, + "val": { + "i128": { + "hi": 0, + "lo": 1400 + } + } + } + ] + } } ] } diff --git a/remittance_split/tests/stress_test_large_amounts.rs b/remittance_split/tests/stress_test_large_amounts.rs index b7f5793..88f3a53 100644 --- a/remittance_split/tests/stress_test_large_amounts.rs +++ b/remittance_split/tests/stress_test_large_amounts.rs @@ -34,6 +34,10 @@ fn test_calculate_split_with_large_amount() { // client.calculate_split returns Vec directly let amounts = client.calculate_split(&large_amount); + let result = client.try_calculate_split(&large_amount); + assert!(result.is_ok()); + + let amounts = result.unwrap().unwrap(); assert_eq!(amounts.len(), 4); let total: i128 = amounts.iter().sum(); assert_eq!(total, large_amount); @@ -54,6 +58,10 @@ fn test_calculate_split_near_max_safe_value() { let max_safe = i128::MAX / 100 - 1; let amounts = client.calculate_split(&max_safe); + let result = client.try_calculate_split(&max_safe); + assert!(result.is_ok()); + + let amounts = result.unwrap().unwrap(); let total: i128 = amounts.iter().sum(); assert!((total - max_safe).abs() < 4); // Allow small rounding difference } @@ -69,8 +77,8 @@ fn test_calculate_split_near_max_safe_value() { // client.initialize_split(&owner, &0, &50, &30, &15, &5); -// // Value that will overflow when multiplied by percentage -// let overflow_amount = i128::MAX / 50; // Will overflow when multiplied by 50 + // Value that will overflow when multiplied by percentage + let overflow_amount = i128::MAX / 50 + 1; // Will overflow when multiplied by 50 // let result = client.try_calculate_split(&overflow_amount); @@ -91,9 +99,10 @@ fn test_calculate_split_with_minimal_percentages() { let large_amount = i128::MAX / 150; - // FIX: Remove .is_ok() and .unwrap() - let amounts = client.calculate_split(&large_amount); + let result = client.try_calculate_split(&large_amount); + assert!(result.is_ok()); + let amounts = result.unwrap().unwrap(); let total: i128 = amounts.iter().sum(); assert_eq!(total, large_amount); } @@ -111,8 +120,10 @@ fn test_get_split_allocations_with_large_amount() { let large_amount = i128::MAX / 200; - let allocations = client.get_split_allocations(&large_amount); + let result = client.try_get_split_allocations(&large_amount); + assert!(result.is_ok()); + let allocations = result.unwrap().unwrap(); assert_eq!(allocations.len(), 4); let total: i128 = allocations.iter().map(|a| a.amount).sum(); assert_eq!(total, large_amount); @@ -132,9 +143,10 @@ fn test_multiple_splits_with_large_amounts() { let large_amount = i128::MAX / 300; for _ in 0..5 { - // FIX: result is now directly the amounts Vec - let amounts = client.calculate_split(&large_amount); + let result = client.try_calculate_split(&large_amount); + assert!(result.is_ok()); + let amounts = result.unwrap().unwrap(); let total: i128 = amounts.iter().sum(); assert_eq!(total, large_amount); } @@ -153,9 +165,10 @@ fn test_edge_case_i128_max_divided_by_100() { // Exact edge case: i128::MAX / 100 let edge_amount = i128::MAX / 100; - // FIX: Remove .is_ok() and .unwrap() - let amounts = client.calculate_split(&edge_amount); + let result = client.try_calculate_split(&edge_amount); + assert!(result.is_ok()); + let amounts = result.unwrap().unwrap(); assert_eq!(amounts.len(), 4); } @@ -173,9 +186,10 @@ fn test_split_with_100_percent_to_one_category() { let large_amount = i128::MAX / 150; - // FIX: result is now the amounts Vec directly - let amounts = client.calculate_split(&large_amount); + let result = client.try_calculate_split(&large_amount); + assert!(result.is_ok()); + let amounts = result.unwrap().unwrap(); // First amount should be the full amount // .get(i) returns Option, so .unwrap() here is correct and necessary assert_eq!(amounts.get(0).unwrap(), large_amount); @@ -199,8 +213,10 @@ fn test_rounding_behavior_with_large_amounts() { let large_amount = i128::MAX / 200; - let amounts = client.calculate_split(&large_amount); + let result = client.try_calculate_split(&large_amount); + assert!(result.is_ok()); + let amounts = result.unwrap().unwrap(); let total: i128 = amounts.iter().sum(); // Due to rounding, total should equal input @@ -228,9 +244,10 @@ fn test_sequential_large_calculations() { ]; for amount in amounts_to_test { - // FIX: result is directly the soroban_sdk::Vec - let splits = client.calculate_split(&amount); + let result = client.try_calculate_split(&amount); + assert!(result.is_ok(), "Failed for amount: {}", amount); + let splits = result.unwrap().unwrap(); let total: i128 = splits.iter().sum(); assert_eq!(total, amount, "Failed for amount: {}", amount); } @@ -279,9 +296,10 @@ fn test_insurance_remainder_calculation_with_large_values() { let large_amount = i128::MAX / 200; - // FIX: Remove .is_ok() and .unwrap() - // result is already soroban_sdk::Vec - let amounts = client.calculate_split(&large_amount); + let result = client.try_calculate_split(&large_amount); + assert!(result.is_ok()); + + let amounts = result.unwrap().unwrap(); // Verify insurance (last element) is calculated correctly as remainder // Note: Soroban Vec::get returns Option, so these unwrap()s are correct for the elements diff --git a/reporting/src/lib.rs b/reporting/src/lib.rs index 4617025..189bd20 100644 --- a/reporting/src/lib.rs +++ b/reporting/src/lib.rs @@ -221,9 +221,9 @@ pub trait SavingsGoalsTrait { #[contractclient(name = "BillPaymentsClient")] pub trait BillPaymentsTrait { - fn get_unpaid_bills(env: Env, owner: Address) -> Vec; + fn get_unpaid_bills(env: Env, owner: Address, cursor: u32, limit: u32) -> BillPage; fn get_total_unpaid(env: Env, owner: Address) -> i128; - fn get_all_bills(env: Env) -> Vec; + fn get_all_bills_for_owner(env: Env, owner: Address, cursor: u32, limit: u32) -> BillPage; } #[contractclient(name = "InsuranceClient")] @@ -264,6 +264,14 @@ pub struct Bill { pub currency: soroban_sdk::String, } +#[contracttype] +#[derive(Clone)] +pub struct BillPage { + pub items: Vec, + pub next_cursor: u32, + pub count: u32, +} + #[contracttype] #[derive(Clone)] pub struct InsurancePolicy { @@ -286,6 +294,14 @@ pub struct PolicyPage { pub count: u32, } +#[contracttype] +#[derive(Clone)] +pub struct PolicyPage { + pub items: Vec, + pub next_cursor: u32, + pub count: u32, +} + #[contract] pub struct ReportingContract; @@ -485,7 +501,8 @@ impl ReportingContract { .unwrap_or_else(|| panic!("Contract addresses not configured")); let bill_client = BillPaymentsClient::new(&env, &addresses.bill_payments); - let all_bills = bill_client.get_all_bills(); + let page = bill_client.get_all_bills_for_owner(&user, &0u32, &50u32); + let all_bills = page.items; let mut total_bills = 0u32; let mut paid_bills = 0u32; @@ -498,10 +515,6 @@ impl ReportingContract { let current_time = env.ledger().timestamp(); for bill in all_bills.iter() { - if bill.owner != user { - continue; - } - // Filter by period if bill.created_at < period_start || bill.created_at > period_end { continue; @@ -615,7 +628,7 @@ impl ReportingContract { // Bills score (0-40 points) let bill_client = BillPaymentsClient::new(&env, &addresses.bill_payments); - let unpaid_bills = bill_client.get_unpaid_bills(&user); + let unpaid_bills = bill_client.get_unpaid_bills(&user, &0u32, &50u32).items; let bills_score = if unpaid_bills.is_empty() { 40 } else { diff --git a/reporting/src/tests.rs b/reporting/src/tests.rs index d6c0101..9182060 100644 --- a/reporting/src/tests.rs +++ b/reporting/src/tests.rs @@ -71,17 +71,15 @@ mod savings_goals { } mod bill_payments { - use crate::{Bill, BillPaymentsTrait}; - use soroban_sdk::{ - contract, contractimpl, testutils::Address as _, Address, Env, String as SorobanString, Vec, - }; + use crate::{Bill, BillPage, BillPaymentsTrait}; + use soroban_sdk::{contract, contractimpl, Address, Env, String as SorobanString, Vec}; #[contract] pub struct BillPayments; #[contractimpl] impl BillPaymentsTrait for BillPayments { - fn get_unpaid_bills(_env: Env, _owner: Address) -> Vec { + fn get_unpaid_bills(_env: Env, _owner: Address, _cursor: u32, _limit: u32) -> BillPage { let env = _env; let mut bills = Vec::new(&env); bills.push_back(Bill { @@ -98,20 +96,28 @@ mod bill_payments { schedule_id: None, currency: SorobanString::from_str(&env, "XLM"), }); - bills + BillPage { + count: bills.len(), + items: bills, + next_cursor: 0, + } } fn get_total_unpaid(_env: Env, _owner: Address) -> i128 { 100 } - fn get_all_bills(_env: Env) -> Vec { + fn get_all_bills_for_owner( + _env: Env, + _owner: Address, + _cursor: u32, + _limit: u32, + ) -> BillPage { let env = _env; - let owner = Address::generate(&env); let mut bills = Vec::new(&env); bills.push_back(Bill { id: 1, - owner: owner.clone(), + owner: _owner.clone(), name: SorobanString::from_str(&env, "Electricity"), amount: 100, due_date: 1735689600, @@ -125,7 +131,7 @@ mod bill_payments { }); bills.push_back(Bill { id: 2, - owner, + owner: _owner, name: SorobanString::from_str(&env, "Water"), amount: 50, due_date: 1735689600, @@ -137,13 +143,17 @@ mod bill_payments { schedule_id: None, currency: SorobanString::from_str(&env, "XLM"), }); - bills + BillPage { + count: bills.len(), + items: bills, + next_cursor: 0, + } } } } mod insurance { - use crate::{InsurancePolicy, InsuranceTrait}; + use crate::{InsurancePolicy, InsuranceTrait, PolicyPage}; use soroban_sdk::{contract, contractimpl, Address, Env, String as SorobanString, Vec}; #[contract] diff --git a/reporting/test_snapshots/tests/test_archive_old_reports.1.json b/reporting/test_snapshots/tests/test_archive_old_reports.1.json index 6e25d5d..3e4afe9 100644 --- a/reporting/test_snapshots/tests/test_archive_old_reports.1.json +++ b/reporting/test_snapshots/tests/test_archive_old_reports.1.json @@ -83,7 +83,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -101,7 +101,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -110,7 +110,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -136,7 +136,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -145,7 +145,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -155,7 +155,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -164,7 +164,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -1467,7 +1467,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -1490,105 +1500,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -1624,7 +1659,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } @@ -2108,10 +2143,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -2129,210 +2176,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -2613,7 +2685,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -2631,7 +2703,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -2640,7 +2712,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -2666,7 +2738,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -2675,7 +2747,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -2685,7 +2757,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -2694,7 +2766,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -3117,7 +3189,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -3135,7 +3207,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -3144,7 +3216,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -3170,7 +3242,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -3179,7 +3251,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -3189,7 +3261,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -3198,7 +3270,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -3708,7 +3780,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -3726,7 +3798,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -3735,7 +3807,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -3761,7 +3833,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -3770,7 +3842,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -3780,7 +3852,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -3789,7 +3861,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] diff --git a/reporting/test_snapshots/tests/test_archive_ttl_extended_on_archive_reports.1.json b/reporting/test_snapshots/tests/test_archive_ttl_extended_on_archive_reports.1.json index f90530a..7e2379d 100644 --- a/reporting/test_snapshots/tests/test_archive_ttl_extended_on_archive_reports.1.json +++ b/reporting/test_snapshots/tests/test_archive_ttl_extended_on_archive_reports.1.json @@ -83,7 +83,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -101,7 +101,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -110,7 +110,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -136,7 +136,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -145,7 +145,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -155,7 +155,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -164,7 +164,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -1465,7 +1465,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -1488,105 +1498,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -1622,7 +1657,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } @@ -2106,10 +2141,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -2127,210 +2174,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -2611,7 +2683,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -2629,7 +2701,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -2638,7 +2710,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -2664,7 +2736,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -2673,7 +2745,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -2683,7 +2755,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -2692,7 +2764,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -3115,7 +3187,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -3133,7 +3205,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -3142,7 +3214,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -3168,7 +3240,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -3177,7 +3249,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -3187,7 +3259,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -3196,7 +3268,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] diff --git a/reporting/test_snapshots/tests/test_calculate_health_score.1.json b/reporting/test_snapshots/tests/test_calculate_health_score.1.json index f9d1599..a9e9c97 100644 --- a/reporting/test_snapshots/tests/test_calculate_health_score.1.json +++ b/reporting/test_snapshots/tests/test_calculate_health_score.1.json @@ -766,7 +766,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -789,105 +799,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -923,7 +958,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } diff --git a/reporting/test_snapshots/tests/test_cleanup_old_reports.1.json b/reporting/test_snapshots/tests/test_cleanup_old_reports.1.json index e43fa79..216af9c 100644 --- a/reporting/test_snapshots/tests/test_cleanup_old_reports.1.json +++ b/reporting/test_snapshots/tests/test_cleanup_old_reports.1.json @@ -83,7 +83,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -101,7 +101,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -110,7 +110,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -136,7 +136,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -145,7 +145,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -155,7 +155,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -164,7 +164,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -1464,7 +1464,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -1487,105 +1497,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -1621,7 +1656,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } @@ -2105,10 +2140,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -2126,210 +2173,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -2610,7 +2682,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -2628,7 +2700,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -2637,7 +2709,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -2663,7 +2735,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -2672,7 +2744,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -2682,7 +2754,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -2691,7 +2763,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -3114,7 +3186,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -3132,7 +3204,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -3141,7 +3213,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -3167,7 +3239,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -3176,7 +3248,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -3186,7 +3258,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -3195,7 +3267,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] diff --git a/reporting/test_snapshots/tests/test_get_bill_compliance_report.1.json b/reporting/test_snapshots/tests/test_get_bill_compliance_report.1.json index 4a491b2..474e8c6 100644 --- a/reporting/test_snapshots/tests/test_get_bill_compliance_report.1.json +++ b/reporting/test_snapshots/tests/test_get_bill_compliance_report.1.json @@ -568,10 +568,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -589,210 +601,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -823,7 +860,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -841,7 +878,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -850,7 +887,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -876,7 +913,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -885,7 +922,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -895,7 +932,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -904,7 +941,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] diff --git a/reporting/test_snapshots/tests/test_get_financial_health_report.1.json b/reporting/test_snapshots/tests/test_get_financial_health_report.1.json index 0595ca1..e27795d 100644 --- a/reporting/test_snapshots/tests/test_get_financial_health_report.1.json +++ b/reporting/test_snapshots/tests/test_get_financial_health_report.1.json @@ -772,7 +772,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -795,105 +805,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -929,7 +964,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } @@ -1413,10 +1448,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -1434,210 +1481,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -1918,7 +1990,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -1936,7 +2008,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -1945,7 +2017,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -1971,7 +2043,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -1980,7 +2052,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -1990,7 +2062,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -1999,7 +2071,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] diff --git a/reporting/test_snapshots/tests/test_health_score_no_goals.1.json b/reporting/test_snapshots/tests/test_health_score_no_goals.1.json index f29735f..dde144c 100644 --- a/reporting/test_snapshots/tests/test_health_score_no_goals.1.json +++ b/reporting/test_snapshots/tests/test_health_score_no_goals.1.json @@ -621,7 +621,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -644,105 +654,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -778,7 +813,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } diff --git a/reporting/test_snapshots/tests/test_instance_ttl_refreshed_on_store_report.1.json b/reporting/test_snapshots/tests/test_instance_ttl_refreshed_on_store_report.1.json index c0372a4..8f68b95 100644 --- a/reporting/test_snapshots/tests/test_instance_ttl_refreshed_on_store_report.1.json +++ b/reporting/test_snapshots/tests/test_instance_ttl_refreshed_on_store_report.1.json @@ -83,7 +83,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -101,7 +101,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -110,7 +110,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -136,7 +136,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -145,7 +145,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -155,7 +155,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -164,7 +164,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -678,7 +678,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -696,7 +696,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -705,7 +705,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -731,7 +731,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -740,7 +740,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -750,7 +750,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -759,7 +759,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -1801,7 +1801,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -1824,105 +1834,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -1958,7 +1993,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } @@ -2442,10 +2477,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -2463,210 +2510,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -2947,7 +3019,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -2965,7 +3037,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -2974,7 +3046,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -3000,7 +3072,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -3009,7 +3081,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -3019,7 +3091,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -3028,7 +3100,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -3451,7 +3523,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -3469,7 +3541,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -3478,7 +3550,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -3504,7 +3576,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -3513,7 +3585,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -3523,7 +3595,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -3532,7 +3604,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] diff --git a/reporting/test_snapshots/tests/test_report_data_persists_across_ledger_advancements.1.json b/reporting/test_snapshots/tests/test_report_data_persists_across_ledger_advancements.1.json index 818c628..3256b93 100644 --- a/reporting/test_snapshots/tests/test_report_data_persists_across_ledger_advancements.1.json +++ b/reporting/test_snapshots/tests/test_report_data_persists_across_ledger_advancements.1.json @@ -83,7 +83,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -101,7 +101,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -110,7 +110,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -136,7 +136,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -145,7 +145,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -155,7 +155,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -164,7 +164,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -1180,7 +1180,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -1198,7 +1198,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -1207,7 +1207,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -1233,7 +1233,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -1242,7 +1242,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -1252,7 +1252,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -1261,7 +1261,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -2824,7 +2824,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -2847,105 +2857,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -2981,7 +3016,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } @@ -3465,10 +3500,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -3486,210 +3533,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -3970,7 +4042,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -3988,7 +4060,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -3997,7 +4069,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -4023,7 +4095,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -4032,7 +4104,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -4042,7 +4114,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -4051,7 +4123,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -4474,7 +4546,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -4492,7 +4564,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -4501,7 +4573,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -4527,7 +4599,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -4536,7 +4608,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -4546,7 +4618,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -4555,7 +4627,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -5259,7 +5331,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -5269,7 +5351,43 @@ { "event": { "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000006", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_call" + }, + { + "bytes": "0000000000000000000000000000000000000000000000000000000000000007" + }, + { + "symbol": "get_active_policies" + } + ], + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 1 + } + ] + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000007", "type_": "diagnostic", "body": { "v0": { @@ -5282,105 +5400,160 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + "symbol": "coverage_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50000 + } + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + "symbol": "coverage_type" + }, + "val": { + "string": "health" + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + "symbol": "monthly_premium" + }, + "val": { + "i128": { + "hi": 0, + "lo": 200 + } + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "symbol": "name" + }, + "val": { + "string": "Health Insurance" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + "symbol": "next_payment_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -5416,7 +5589,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } @@ -5527,12 +5700,6 @@ "val": { "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" } ] } @@ -5900,10 +6067,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -5921,210 +6100,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -7500,7 +7704,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -7518,7 +7722,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -7527,7 +7731,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -7553,7 +7757,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -7562,7 +7766,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -7572,7 +7776,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -7581,7 +7785,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] diff --git a/reporting/test_snapshots/tests/test_storage_stats.1.json b/reporting/test_snapshots/tests/test_storage_stats.1.json index 337eaad..d55ae4c 100644 --- a/reporting/test_snapshots/tests/test_storage_stats.1.json +++ b/reporting/test_snapshots/tests/test_storage_stats.1.json @@ -84,7 +84,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -102,7 +102,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -111,7 +111,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -137,7 +137,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -146,7 +146,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -156,7 +156,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -165,7 +165,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -1538,7 +1538,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -1561,105 +1571,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -1695,7 +1730,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } @@ -2179,10 +2214,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -2200,210 +2247,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -2684,7 +2756,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -2702,7 +2774,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -2711,7 +2783,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -2737,7 +2809,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -2746,7 +2818,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -2756,7 +2828,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -2765,7 +2837,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -3188,7 +3260,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -3206,7 +3278,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -3215,7 +3287,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -3241,7 +3313,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -3250,7 +3322,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -3260,7 +3332,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -3269,7 +3341,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] diff --git a/reporting/test_snapshots/tests/test_store_and_retrieve_report.1.json b/reporting/test_snapshots/tests/test_store_and_retrieve_report.1.json index ba44220..78f30ad 100644 --- a/reporting/test_snapshots/tests/test_store_and_retrieve_report.1.json +++ b/reporting/test_snapshots/tests/test_store_and_retrieve_report.1.json @@ -83,7 +83,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -101,7 +101,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -110,7 +110,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -136,7 +136,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -145,7 +145,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -155,7 +155,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -164,7 +164,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -678,7 +678,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -696,7 +696,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -705,7 +705,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -731,7 +731,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -740,7 +740,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -750,7 +750,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -759,7 +759,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -1801,7 +1801,17 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } @@ -1824,105 +1834,130 @@ } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -1958,7 +1993,7 @@ "u32": 0 }, { - "u32": 1 + "u32": 50 } ] } @@ -2442,10 +2477,22 @@ "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], - "data": "void" + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } } } }, @@ -2463,210 +2510,235 @@ "symbol": "fn_return" }, { - "symbol": "get_all_bills" + "symbol": "get_all_bills_for_owner" } ], "data": { - "vec": [ + "map": [ { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 100 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 1 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Electricity" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": false - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": "void" - }, - { - "key": { - "symbol": "recurring" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + "key": { + "symbol": "count" + }, + "val": { + "u32": 2 + } }, { - "map": [ - { - "key": { - "symbol": "amount" - }, - "val": { - "i128": { - "hi": 0, - "lo": 50 - } - } - }, - { - "key": { - "symbol": "created_at" - }, - "val": { - "u64": 1704067200 - } - }, - { - "key": { - "symbol": "currency" - }, - "val": { - "string": "XLM" - } - }, - { - "key": { - "symbol": "due_date" - }, - "val": { - "u64": 1735689600 - } - }, - { - "key": { - "symbol": "frequency_days" - }, - "val": { - "u32": 30 - } - }, - { - "key": { - "symbol": "id" - }, - "val": { - "u32": 2 - } - }, - { - "key": { - "symbol": "name" - }, - "val": { - "string": "Water" - } - }, - { - "key": { - "symbol": "owner" - }, - "val": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" - } - }, - { - "key": { - "symbol": "paid" - }, - "val": { - "bool": true - } - }, - { - "key": { - "symbol": "paid_at" - }, - "val": { - "u64": 1704153600 - } - }, - { - "key": { - "symbol": "recurring" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 100 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electricity" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] }, - "val": { - "bool": true + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 50 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "XLM" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1735689600 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Water" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": { + "u64": 1704153600 + } + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] } - }, - { - "key": { - "symbol": "schedule_id" - }, - "val": "void" - } - ] + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } @@ -2947,7 +3019,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -2965,7 +3037,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -2974,7 +3046,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -3000,7 +3072,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -3009,7 +3081,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -3019,7 +3091,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -3028,7 +3100,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -3451,7 +3523,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -3469,7 +3541,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -3478,7 +3550,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -3504,7 +3576,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -3513,7 +3585,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -3523,7 +3595,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -3532,7 +3604,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] @@ -4042,7 +4114,7 @@ "symbol": "compliance_percentage" }, "val": { - "u32": 100 + "u32": 50 } }, { @@ -4060,7 +4132,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 50 } } }, @@ -4069,7 +4141,7 @@ "symbol": "paid_bills" }, "val": { - "u32": 0 + "u32": 1 } }, { @@ -4095,7 +4167,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 150 } } }, @@ -4104,7 +4176,7 @@ "symbol": "total_bills" }, "val": { - "u32": 0 + "u32": 2 } }, { @@ -4114,7 +4186,7 @@ "val": { "i128": { "hi": 0, - "lo": 0 + "lo": 100 } } }, @@ -4123,7 +4195,7 @@ "symbol": "unpaid_bills" }, "val": { - "u32": 0 + "u32": 1 } } ] diff --git a/scenarios/src/lib.rs b/scenarios/src/lib.rs index d7f43a3..57b22e9 100644 --- a/scenarios/src/lib.rs +++ b/scenarios/src/lib.rs @@ -6,8 +6,17 @@ pub mod tests { pub fn setup_env() -> Env { let env = Env::default(); - env.mock_all_auths(); - set_ledger_time(&env, 1, 1704067200); // Jan 1, 2024 + env.mock_all_auths_allowing_non_root_auth(); + env.ledger().set(LedgerInfo { + timestamp: 1704067200, // Jan 1, 2024 + protocol_version: 20, + sequence_number: 1, + network_id: [0; 32], + base_reserve: 10, + min_temp_entry_ttl: 10, + min_persistent_entry_ttl: 10, + max_entry_ttl: 3110400, + }); env } } diff --git a/scenarios/test_snapshots/test_end_to_end_flow.1.json b/scenarios/test_snapshots/test_end_to_end_flow.1.json index aaddc53..89e2e84 100644 --- a/scenarios/test_snapshots/test_end_to_end_flow.1.json +++ b/scenarios/test_snapshots/test_end_to_end_flow.1.json @@ -181,7 +181,31 @@ } ] ], - [] + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "function_name": "get_all_bills_for_owner", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } + }, + "sub_invocations": [] + } + ] + ] ], "ledger": { "protocol_version": 20, @@ -1076,6 +1100,39 @@ 3110400 ] ], + [ + { + "contract_data": { + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5", + "key": { + "ledger_key_nonce": { + "nonce": 8370022561469687789 + } + }, + "durability": "temporary" + } + }, + [ + { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5", + "key": { + "ledger_key_nonce": { + "nonce": 8370022561469687789 + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + 3110409 + ] + ], [ { "contract_data": { @@ -1915,7 +1972,7 @@ } } }, - "failed_call": true + "failed_call": false }, { "event": { @@ -2011,7 +2068,7 @@ } } }, - "failed_call": true + "failed_call": false }, { "event": { @@ -2032,12 +2089,22 @@ } ], "data": { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } }, - "failed_call": true + "failed_call": false }, { "event": { @@ -2048,87 +2115,228 @@ "v0": { "topics": [ { - "symbol": "log" + "symbol": "fn_return" + }, + { + "symbol": "get_unpaid_bills" } ], "data": { - "vec": [ + "map": [ { - "string": "caught panic 'invalid number of input arguments: 3 expected, got 1' from contract function 'Symbol(obj#353)'" + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } }, { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 150 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "USDC" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1704499200 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electric" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] + } + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } } } }, - "failed_call": true + "failed_call": false }, { "event": { "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000005", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", "type_": "diagnostic", "body": { "v0": { "topics": [ { - "symbol": "error" + "symbol": "fn_call" + }, + { + "bytes": "0000000000000000000000000000000000000000000000000000000000000006" }, { - "error": { - "wasm_vm": "invalid_action" - } + "symbol": "get_active_policies" } ], "data": { - "string": "caught error from function" + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] } } } }, - "failed_call": true + "failed_call": false }, { "event": { "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000006", "type_": "diagnostic", "body": { "v0": { "topics": [ { - "symbol": "error" + "symbol": "fn_return" }, { - "error": { - "wasm_vm": "invalid_action" - } + "symbol": "get_active_policies" } ], "data": { - "vec": [ + "map": [ { - "string": "contract call failed" + "key": { + "symbol": "count" + }, + "val": { + "u32": 0 + } }, { - "symbol": "get_unpaid_bills" + "key": { + "symbol": "items" + }, + "val": { + "vec": [] + } }, { - "vec": [ - { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" - } - ] + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } } ] } } } }, - "failed_call": true + "failed_call": false }, { "event": { @@ -2139,92 +2347,80 @@ "v0": { "topics": [ { - "symbol": "error" + "symbol": "fn_call" + }, + { + "bytes": "0000000000000000000000000000000000000000000000000000000000000003" }, { - "error": { - "wasm_vm": "invalid_action" - } + "symbol": "get_split" } ], - "data": { - "string": "escalating error to panic" - } + "data": "void" } } }, - "failed_call": true + "failed_call": false }, { "event": { "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000003", "type_": "diagnostic", "body": { "v0": { "topics": [ { - "symbol": "error" + "symbol": "fn_return" }, { - "error": { - "wasm_vm": "invalid_action" - } + "symbol": "get_split" } ], "data": { - "string": "caught error from function" + "vec": [ + { + "u32": 50 + }, + { + "u32": 30 + }, + { + "u32": 15 + }, + { + "u32": 5 + } + ] } } } }, - "failed_call": true + "failed_call": false }, { "event": { "ext": "v0", - "contract_id": null, + "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", "type_": "diagnostic", "body": { "v0": { "topics": [ { - "symbol": "error" + "symbol": "fn_call" }, { - "error": { - "wasm_vm": "invalid_action" - } + "bytes": "0000000000000000000000000000000000000000000000000000000000000003" + }, + { + "symbol": "calculate_split" } ], "data": { - "vec": [ - { - "string": "contract call failed" - }, - { - "symbol": "get_financial_health_report" - }, - { - "vec": [ - { - "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" - }, - { - "i128": { - "hi": 0, - "lo": 5000 - } - }, - { - "u64": 1704067200 - }, - { - "u64": 1704931200 - } - ] - } - ] + "i128": { + "hi": 0, + "lo": 5000 + } } } } @@ -2234,22 +2430,1124 @@ { "event": { "ext": "v0", - "contract_id": null, - "type_": "diagnostic", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000003", + "type_": "contract", "body": { "v0": { "topics": [ { - "symbol": "error" - }, - { - "error": { - "wasm_vm": "invalid_action" - } + "symbol": "calc" } ], "data": { - "string": "escalating error to panic" + "map": [ + { + "key": { + "symbol": "bills_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 750 + } + } + }, + { + "key": { + "symbol": "insurance_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 250 + } + } + }, + { + "key": { + "symbol": "savings_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 1500 + } + } + }, + { + "key": { + "symbol": "spending_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 2500 + } + } + }, + { + "key": { + "symbol": "timestamp" + }, + "val": { + "u64": 1704931200 + } + }, + { + "key": { + "symbol": "total_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 5000 + } + } + } + ] + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000003", + "type_": "contract", + "body": { + "v0": { + "topics": [ + { + "symbol": "split" + }, + { + "vec": [ + { + "symbol": "Calculated" + } + ] + } + ], + "data": { + "i128": { + "hi": 0, + "lo": 5000 + } + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000003", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_return" + }, + { + "symbol": "calculate_split" + } + ], + "data": { + "vec": [ + { + "i128": { + "hi": 0, + "lo": 2500 + } + }, + { + "i128": { + "hi": 0, + "lo": 1500 + } + }, + { + "i128": { + "hi": 0, + "lo": 750 + } + }, + { + "i128": { + "hi": 0, + "lo": 250 + } + } + ] + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_call" + }, + { + "bytes": "0000000000000000000000000000000000000000000000000000000000000004" + }, + { + "symbol": "get_all_goals" + } + ], + "data": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000004", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_return" + }, + { + "symbol": "get_all_goals" + } + ], + "data": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "current_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 0 + } + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "locked" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Test Goal" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + } + }, + { + "key": { + "symbol": "target_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 1000 + } + } + }, + { + "key": { + "symbol": "target_date" + }, + "val": { + "u64": 1706659200 + } + }, + { + "key": { + "symbol": "unlock_date" + }, + "val": "void" + } + ] + } + ] + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_call" + }, + { + "bytes": "0000000000000000000000000000000000000000000000000000000000000005" + }, + { + "symbol": "get_all_bills_for_owner" + } + ], + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000005", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_return" + }, + { + "symbol": "get_all_bills_for_owner" + } + ], + "data": { + "map": [ + { + "key": { + "symbol": "count" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 150 + } + } + }, + { + "key": { + "symbol": "created_at" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "currency" + }, + "val": { + "string": "USDC" + } + }, + { + "key": { + "symbol": "due_date" + }, + "val": { + "u64": 1704499200 + } + }, + { + "key": { + "symbol": "frequency_days" + }, + "val": { + "u32": 30 + } + }, + { + "key": { + "symbol": "id" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "name" + }, + "val": { + "string": "Electric" + } + }, + { + "key": { + "symbol": "owner" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + } + }, + { + "key": { + "symbol": "paid" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "paid_at" + }, + "val": "void" + }, + { + "key": { + "symbol": "recurring" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "schedule_id" + }, + "val": "void" + } + ] + } + ] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } + } + ] + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_call" + }, + { + "bytes": "0000000000000000000000000000000000000000000000000000000000000006" + }, + { + "symbol": "get_active_policies" + } + ], + "data": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + }, + { + "u32": 0 + }, + { + "u32": 50 + } + ] + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000006", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_return" + }, + { + "symbol": "get_active_policies" + } + ], + "data": { + "map": [ + { + "key": { + "symbol": "count" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "items" + }, + "val": { + "vec": [] + } + }, + { + "key": { + "symbol": "next_cursor" + }, + "val": { + "u32": 0 + } + } + ] + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_call" + }, + { + "bytes": "0000000000000000000000000000000000000000000000000000000000000006" + }, + { + "symbol": "get_total_monthly_premium" + } + ], + "data": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVAX5" + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000006", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_return" + }, + { + "symbol": "get_total_monthly_premium" + } + ], + "data": { + "i128": { + "hi": 0, + "lo": 0 + } + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", + "type_": "contract", + "body": { + "v0": { + "topics": [ + { + "symbol": "report" + }, + { + "vec": [ + { + "symbol": "ReportGenerated" + } + ] + } + ], + "data": { + "u64": 1704931200 + } + } + } + }, + "failed_call": false + }, + { + "event": { + "ext": "v0", + "contract_id": "0000000000000000000000000000000000000000000000000000000000000008", + "type_": "diagnostic", + "body": { + "v0": { + "topics": [ + { + "symbol": "fn_return" + }, + { + "symbol": "get_financial_health_report" + } + ], + "data": { + "map": [ + { + "key": { + "symbol": "bill_compliance" + }, + "val": { + "map": [ + { + "key": { + "symbol": "compliance_percentage" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "overdue_bills" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "paid_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 0 + } + } + }, + { + "key": { + "symbol": "paid_bills" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "period_end" + }, + "val": { + "u64": 1704931200 + } + }, + { + "key": { + "symbol": "period_start" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "total_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 150 + } + } + }, + { + "key": { + "symbol": "total_bills" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "unpaid_amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 150 + } + } + }, + { + "key": { + "symbol": "unpaid_bills" + }, + "val": { + "u32": 1 + } + } + ] + } + }, + { + "key": { + "symbol": "generated_at" + }, + "val": { + "u64": 1704931200 + } + }, + { + "key": { + "symbol": "health_score" + }, + "val": { + "map": [ + { + "key": { + "symbol": "bills_score" + }, + "val": { + "u32": 20 + } + }, + { + "key": { + "symbol": "insurance_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "savings_score" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "score" + }, + "val": { + "u32": 20 + } + } + ] + } + }, + { + "key": { + "symbol": "insurance_report" + }, + "val": { + "map": [ + { + "key": { + "symbol": "active_policies" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "annual_premium" + }, + "val": { + "i128": { + "hi": 0, + "lo": 0 + } + } + }, + { + "key": { + "symbol": "coverage_to_premium_ratio" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "monthly_premium" + }, + "val": { + "i128": { + "hi": 0, + "lo": 0 + } + } + }, + { + "key": { + "symbol": "period_end" + }, + "val": { + "u64": 1704931200 + } + }, + { + "key": { + "symbol": "period_start" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "total_coverage" + }, + "val": { + "i128": { + "hi": 0, + "lo": 0 + } + } + } + ] + } + }, + { + "key": { + "symbol": "remittance_summary" + }, + "val": { + "map": [ + { + "key": { + "symbol": "category_breakdown" + }, + "val": { + "vec": [ + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 2500 + } + } + }, + { + "key": { + "symbol": "category" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "percentage" + }, + "val": { + "u32": 50 + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 1500 + } + } + }, + { + "key": { + "symbol": "category" + }, + "val": { + "u32": 2 + } + }, + { + "key": { + "symbol": "percentage" + }, + "val": { + "u32": 30 + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 750 + } + } + }, + { + "key": { + "symbol": "category" + }, + "val": { + "u32": 3 + } + }, + { + "key": { + "symbol": "percentage" + }, + "val": { + "u32": 15 + } + } + ] + }, + { + "map": [ + { + "key": { + "symbol": "amount" + }, + "val": { + "i128": { + "hi": 0, + "lo": 250 + } + } + }, + { + "key": { + "symbol": "category" + }, + "val": { + "u32": 4 + } + }, + { + "key": { + "symbol": "percentage" + }, + "val": { + "u32": 5 + } + } + ] + } + ] + } + }, + { + "key": { + "symbol": "period_end" + }, + "val": { + "u64": 1704931200 + } + }, + { + "key": { + "symbol": "period_start" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "total_allocated" + }, + "val": { + "i128": { + "hi": 0, + "lo": 5000 + } + } + }, + { + "key": { + "symbol": "total_received" + }, + "val": { + "i128": { + "hi": 0, + "lo": 5000 + } + } + } + ] + } + }, + { + "key": { + "symbol": "savings_report" + }, + "val": { + "map": [ + { + "key": { + "symbol": "completed_goals" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "completion_percentage" + }, + "val": { + "u32": 0 + } + }, + { + "key": { + "symbol": "period_end" + }, + "val": { + "u64": 1704931200 + } + }, + { + "key": { + "symbol": "period_start" + }, + "val": { + "u64": 1704067200 + } + }, + { + "key": { + "symbol": "total_goals" + }, + "val": { + "u32": 1 + } + }, + { + "key": { + "symbol": "total_saved" + }, + "val": { + "i128": { + "hi": 0, + "lo": 0 + } + } + }, + { + "key": { + "symbol": "total_target" + }, + "val": { + "i128": { + "hi": 0, + "lo": 1000 + } + } + } + ] + } + } + ] } } }