From cb3dbd718477298f981e62b883cd52d580907388 Mon Sep 17 00:00:00 2001 From: Bartosz Lenart Date: Fri, 14 Feb 2025 16:54:03 +0100 Subject: [PATCH] [RDS-2179] fix:Use proper logic. (#4793) Fixes wrong assert. --------- Co-authored-by: bartossh --- .../contracts/redstone_sdk/sources/validate.move | 4 ++-- packages/movement-connector/scripts/sample-run.ts | 4 ++-- .../test/MovementPricesContractAdapter.spec.ts | 12 ++++++------ 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/movement-connector/movement/contracts/redstone_sdk/sources/validate.move b/packages/movement-connector/movement/contracts/redstone_sdk/sources/validate.move index bcedee6f7..e9a17ad67 100644 --- a/packages/movement-connector/movement/contracts/redstone_sdk/sources/validate.move +++ b/packages/movement-connector/movement/contracts/redstone_sdk/sources/validate.move @@ -123,10 +123,9 @@ module redstone_sdk::validate { vector::push_back(&mut seen_signers, *address); count = count + 1; - if (count >= threshold) { return }; }; - assert!(count < threshold, E_INSUFFICIENT_SIGNER_COUNT); + assert!(count >= threshold, E_INSUFFICIENT_SIGNER_COUNT); } // === Tests Functions === @@ -365,6 +364,7 @@ module redstone_sdk::validate { } #[test] + #[expected_failure(abort_code = E_SIGNER_DUPLICATED)] fun test_verify_data_packages_fail_on_duplicated_packages_after_threshold_met() { let config = test_config(); let timestamp = 1000; diff --git a/packages/movement-connector/scripts/sample-run.ts b/packages/movement-connector/scripts/sample-run.ts index 3cde71f56..f688380fb 100644 --- a/packages/movement-connector/scripts/sample-run.ts +++ b/packages/movement-connector/scripts/sample-run.ts @@ -7,8 +7,8 @@ import { makeAptos } from "./utils"; async function main() { const paramsProvider = new ContractParamsProvider({ dataServiceId: "redstone-primary-prod", - uniqueSignersCount: 2, - dataPackagesIds: ["LBTC", "BTC", "ETH"], + uniqueSignersCount: 3, + dataPackagesIds: ["ETH", "BTC"], authorizedSigners: getSignersForDataServiceId("redstone-primary-prod"), }); const { account, network, url } = getEnvParams(["CONTRACT_NAME"]); diff --git a/packages/movement-connector/test/MovementPricesContractAdapter.spec.ts b/packages/movement-connector/test/MovementPricesContractAdapter.spec.ts index 45eb46167..2652b5a8d 100644 --- a/packages/movement-connector/test/MovementPricesContractAdapter.spec.ts +++ b/packages/movement-connector/test/MovementPricesContractAdapter.spec.ts @@ -30,10 +30,10 @@ const WRITE_TEST_TIMEOUT = 20_000; const WAIT_TS = 5_000; const HOUR_MS = 3_600_000; const DATA_SERVICE_ID = "redstone-primary-prod"; -const FEED_ETH = "ETH"; const FEED_BTC = "BTC"; -const FEED_LBTC = "LBTC"; -const DATA_PACKAGES_IDS = [FEED_ETH, FEED_BTC, FEED_LBTC]; +const FEED_ETH = "ETH"; +const DATA_PACKAGES_IDS = [FEED_ETH, FEED_BTC]; +const SIGNERS_COUNT = 3; jest.setTimeout(TEST_FILE_TIMEOUT); @@ -96,7 +96,7 @@ describe("MovementPricesContractAdapter", () => { contractParamsProviderMultiple = new ContractParamsProvider({ dataServiceId: DATA_SERVICE_ID, dataPackagesIds: DATA_PACKAGES_IDS, - uniqueSignersCount: 2, + uniqueSignersCount: SIGNERS_COUNT, authorizedSigners: getSignersForDataServiceId(DATA_SERVICE_ID), }); }); @@ -119,7 +119,7 @@ describe("MovementPricesContractAdapter", () => { contractParamsProviderMultiple = new ContractParamsProvider({ dataServiceId: DATA_SERVICE_ID, dataPackagesIds: DATA_PACKAGES_IDS, - uniqueSignersCount: 2, + uniqueSignersCount: SIGNERS_COUNT, authorizedSigners: getSignersForDataServiceId(DATA_SERVICE_ID), }); }); @@ -135,7 +135,7 @@ describe("MovementPricesContractAdapter", () => { }); // this would fail if ETH flipped BTC - expect(result[1] < result[2]).toBeTruthy(); + expect(result[0] < result[1]).toBeTruthy(); }); });