diff --git a/integration-tests/src/backend/features/batch.rs b/integration-tests/src/backend/features/batch.rs index 8f4165c4..b8b77ce7 100644 --- a/integration-tests/src/backend/features/batch.rs +++ b/integration-tests/src/backend/features/batch.rs @@ -6,10 +6,10 @@ use jormungandr_lib::interfaces::FragmentStatus; use jormungandr_testing_utils::testing::node::time; use valgrind::Protocol; use vit_servicing_station_tests::common::data::ArbitraryValidVotingTemplateGenerator; -use vitup::config::{InitialEntry, Initials}; -use vitup::scenario::network::setup_network; use vitup::builders::QuickVitBackendSettingsBuilder; use vitup::config::VoteBlockchainTime; +use vitup::config::{InitialEntry, Initials}; +use vitup::scenario::network::setup_network; const PIN: &str = "1234"; const ALICE: &str = "alice"; @@ -66,7 +66,6 @@ pub fn transactions_are_send_between_nodes_with_correct_order() { let valid_until = ValidUntil::BySlotShift(5); let expiry_date = valid_until - .clone() .into_expiry_date(Some(alice.settings().unwrap())) .unwrap(); let fragment_ids = alice diff --git a/integration-tests/src/backend/sanity/private.rs b/integration-tests/src/backend/sanity/private.rs index fb05dd00..b3d55d6c 100644 --- a/integration-tests/src/backend/sanity/private.rs +++ b/integration-tests/src/backend/sanity/private.rs @@ -1,19 +1,19 @@ use crate::common::iapyx_from_qr; use crate::common::{vitup_setup, wait_until_folder_contains_all_qrs, Error, Vote}; -use jormungandr_testing_utils::testing::asserts::VotePlanStatusAssert; use assert_fs::TempDir; use chain_impl_mockchain::block::BlockDate; use chain_impl_mockchain::key::Hash; -use vitup::config::VoteBlockchainTime; +use jormungandr_testing_utils::testing::asserts::VotePlanStatusAssert; use jormungandr_testing_utils::testing::FragmentSender; use jormungandr_testing_utils::testing::{node::time, FragmentSenderSetup}; use std::path::Path; use std::str::FromStr; use valgrind::Protocol; use vit_servicing_station_tests::common::data::ArbitraryValidVotingTemplateGenerator; +use vitup::builders::QuickVitBackendSettingsBuilder; +use vitup::config::VoteBlockchainTime; use vitup::config::{InitialEntry, Initials}; use vitup::scenario::network::setup_network; -use vitup::builders::QuickVitBackendSettingsBuilder; #[test] pub fn private_vote_e2e_flow() -> std::result::Result<(), Error> { diff --git a/integration-tests/src/backend/sanity/public.rs b/integration-tests/src/backend/sanity/public.rs index b0b5d6bd..a277215e 100644 --- a/integration-tests/src/backend/sanity/public.rs +++ b/integration-tests/src/backend/sanity/public.rs @@ -3,18 +3,18 @@ use crate::common::{vitup_setup, wait_until_folder_contains_all_qrs, Error, Vote use assert_fs::TempDir; use chain_impl_mockchain::block::BlockDate; use chain_impl_mockchain::key::Hash; +use jormungandr_testing_utils::testing::asserts::VotePlanStatusAssert; use jormungandr_testing_utils::testing::node::time; use jormungandr_testing_utils::testing::FragmentSender; use jormungandr_testing_utils::testing::FragmentSenderSetup; -use jormungandr_testing_utils::testing::asserts::VotePlanStatusAssert; -use vitup::config::VoteBlockchainTime; use std::path::Path; use std::str::FromStr; use valgrind::Protocol; use vit_servicing_station_tests::common::data::ArbitraryValidVotingTemplateGenerator; +use vitup::builders::QuickVitBackendSettingsBuilder; +use vitup::config::VoteBlockchainTime; use vitup::config::{InitialEntry, Initials}; use vitup::scenario::network::setup_network; -use vitup::builders::QuickVitBackendSettingsBuilder; const PIN: &str = "1234"; diff --git a/integration-tests/src/common/backend/setup.rs b/integration-tests/src/common/backend/setup.rs index 12163a87..7452ecc5 100644 --- a/integration-tests/src/common/backend/setup.rs +++ b/integration-tests/src/common/backend/setup.rs @@ -6,9 +6,9 @@ use std::path::Path; use std::path::PathBuf; use std::str::FromStr; use vit_servicing_station_tests::common::data::ValidVotePlanParameters; -use vitup::scenario::controller::VitController; use vitup::builders::QuickVitBackendSettingsBuilder; use vitup::config::VoteBlockchainTime; +use vitup::scenario::controller::VitController; pub fn wait_until_folder_contains_all_qrs>(qrs_count: usize, folder: P) { println!("waiting for qr code in: {:?}", folder.as_ref()); @@ -24,7 +24,7 @@ pub fn wait_until_folder_contains_all_qrs>(qrs_count: usize, fold } } -pub fn context(testing_directory: &PathBuf) -> Context { +pub fn context(testing_directory: &Path) -> Context { let jormungandr = prepare_command(PathBuf::from_str("jormungandr").unwrap()); let jcli = prepare_command(PathBuf::from_str("jcli").unwrap()); let seed = Seed::generate(rand::rngs::OsRng); @@ -35,7 +35,7 @@ pub fn context(testing_directory: &PathBuf) -> Context { seed, jormungandr, jcli, - Some(testing_directory.clone()), + Some(testing_directory.to_path_buf()), generate_documentation, ProgressBarMode::None, log_level, diff --git a/integration-tests/src/common/load.rs b/integration-tests/src/common/load.rs index be97e8c4..3afc3c61 100644 --- a/integration-tests/src/common/load.rs +++ b/integration-tests/src/common/load.rs @@ -3,19 +3,19 @@ use assert_fs::TempDir; use chain_impl_mockchain::key::Hash; use iapyx::{NodeLoad, NodeLoadConfig}; use jormungandr_lib::interfaces::BlockDate; +use jormungandr_testing_utils::testing::asserts::VotePlanStatusAssert; use jormungandr_testing_utils::testing::node::time; use jortestkit::{ load::{Configuration, Monitor}, measurement::Status, }; -use jormungandr_testing_utils::testing::asserts::VotePlanStatusAssert; use std::path::PathBuf; use std::str::FromStr; use valgrind::Protocol; use vit_servicing_station_tests::common::data::ArbitraryValidVotingTemplateGenerator; +use vitup::builders::QuickVitBackendSettingsBuilder; use vitup::config::VitStartParameters; use vitup::scenario::network::setup_network; -use vitup::builders::QuickVitBackendSettingsBuilder; #[allow(dead_code)] pub fn private_vote_test_scenario( @@ -28,7 +28,7 @@ pub fn private_vote_test_scenario( let parameters = quick_setup.parameters().clone(); let wallet_count = parameters.initials.count(); let vote_timing = quick_setup.blockchain_timing(); - + let (mut vit_controller, mut controller, vit_parameters, fund_name) = vitup_setup(quick_setup, testing_directory.path().to_path_buf()); @@ -92,7 +92,7 @@ pub fn private_vote_test_scenario( }; let target_date = BlockDate::new(vote_timing.tally_end, vote_timing.slots_per_epoch / 2); - time::wait_for_date(target_date.into(), leader_1.rest()); + time::wait_for_date(target_date, leader_1.rest()); let active_vote_plans = leader_1.vote_plans().unwrap(); let vote_plan_status = active_vote_plans diff --git a/integration-tests/src/common/registration.rs b/integration-tests/src/common/registration.rs index 683068ea..af886311 100644 --- a/integration-tests/src/common/registration.rs +++ b/integration-tests/src/common/registration.rs @@ -28,16 +28,14 @@ pub fn do_registration(temp_dir: &TempDir) -> RegistrationResult { let stake_vkey = std::env::var("STAKE_VKEY").unwrap_or_else(|_| "STAKE_VKEY not defined".to_owned()); - let registration_client = RegistrationRestClient::new_with_token( - registration_token.to_string(), - registration_address.to_string(), - ); + let registration_client = + RegistrationRestClient::new_with_token(registration_token, registration_address); let registration_request = Request { - payment_skey: payment_skey.to_string(), - payment_vkey: payment_vkey.to_string(), - stake_skey: stake_skey.to_string(), - stake_vkey: stake_vkey.to_string(), + payment_skey, + payment_vkey, + stake_skey, + stake_vkey, }; let registration_job_id = registration_client.job_new(registration_request).unwrap(); @@ -56,7 +54,7 @@ pub fn do_registration(temp_dir: &TempDir) -> RegistrationResult { .download_qr(registration_job_id.clone(), qr_code_path.path()) .unwrap(); let voting_key_sk = registration_client - .get_catalyst_sk(registration_job_id.clone()) + .get_catalyst_sk(registration_job_id) .unwrap(); RegistrationResult { diff --git a/integration-tests/src/e2e/testnet.rs b/integration-tests/src/e2e/testnet.rs index 71b41590..33205dbc 100644 --- a/integration-tests/src/e2e/testnet.rs +++ b/integration-tests/src/e2e/testnet.rs @@ -5,15 +5,15 @@ use crate::common::snapshot::wait_for_db_sync; use crate::common::{vitup_setup, Vote}; use assert_fs::TempDir; use chain_impl_mockchain::header::BlockDate; +use jormungandr_testing_utils::testing::asserts::VotePlanStatusAssert; use jormungandr_testing_utils::testing::node::time; use snapshot_trigger_service::config::JobParameters; use valgrind::Protocol; use vit_servicing_station_tests::common::data::ArbitraryValidVotingTemplateGenerator; -use jormungandr_testing_utils::testing::asserts::VotePlanStatusAssert; +use vitup::builders::QuickVitBackendSettingsBuilder; use vitup::config::Initials; -use vitup::scenario::network::setup_network; use vitup::config::VoteBlockchainTime; -use vitup::builders::QuickVitBackendSettingsBuilder; +use vitup::scenario::network::setup_network; const GRACE_PERIOD_FOR_SNAPSHOT: u64 = 300; #[test] diff --git a/integration-tests/src/non_functional/local/load.rs b/integration-tests/src/non_functional/local/load.rs index 84f0819c..7655e192 100644 --- a/integration-tests/src/non_functional/local/load.rs +++ b/integration-tests/src/non_functional/local/load.rs @@ -1,13 +1,12 @@ -use crate::common::{ - load::build_load_config, load::private_vote_test_scenario, vitup_setup, VoteTiming, -}; +use crate::common::{load::build_load_config, load::private_vote_test_scenario, vitup_setup}; use assert_fs::TempDir; use iapyx::NodeLoad; use jortestkit::measurement::Status; use valgrind::Protocol; use vit_servicing_station_tests::common::data::ArbitraryValidVotingTemplateGenerator; +use vitup::builders::QuickVitBackendSettingsBuilder; +use vitup::config::VoteBlockchainTime; use vitup::scenario::network::setup_network; -use vitup::setup::start::quick::QuickVitBackendSettingsBuilder; #[test] pub fn load_test_public_100_000_votes() { @@ -17,19 +16,17 @@ pub fn load_test_public_100_000_votes() { let version = "2.0"; let no_of_threads = 10; let no_of_wallets = 40_000; - let vote_timing = VoteTiming::new(0, 100, 102); - let vote_timing = VoteBlockchainTime { vote_start: 0, tally_start: 100, tally_end: 102, - slots_in_epoch: 60, + slots_per_epoch: 60, }; let mut quick_setup = QuickVitBackendSettingsBuilder::new(); quick_setup .initials_count(no_of_wallets, "1234") - .vote_timing(vote_timing) + .vote_timing(vote_timing.into()) .slot_duration_in_seconds(2) .proposals_count(300) .voting_power(31_000) @@ -98,12 +95,12 @@ pub fn load_test_private_pesimistic() { vote_start: 0, tally_start: 11, tally_end: 12, - slots_in_epoch: 3, + slots_per_epoch: 3, }; quick_setup .initials_count(no_of_wallets, "1234") - .vote_timing(vote_timing) + .vote_timing(vote_timing.into()) .slot_duration_in_seconds(20) .proposals_count(250) .voting_power(31_000) @@ -121,13 +118,13 @@ pub fn load_test_private_optimistic() { vote_start: 6, tally_start: 11, tally_end: 12, - slots_in_epoch: 180, + slots_per_epoch: 180, }; let mut quick_setup = QuickVitBackendSettingsBuilder::new(); quick_setup .initials_count(no_of_wallets, "1234") - .vote_timing(vote_timing) + .vote_timing(vote_timing.into()) .slot_duration_in_seconds(20) .proposals_count(500) .voting_power(31_000) diff --git a/integration-tests/src/non_functional/local/soak.rs b/integration-tests/src/non_functional/local/soak.rs index 3bf9f1a0..d9764d8f 100644 --- a/integration-tests/src/non_functional/local/soak.rs +++ b/integration-tests/src/non_functional/local/soak.rs @@ -1,5 +1,6 @@ use crate::common::load::private_vote_test_scenario; -use vitup::setup::start::quick::QuickVitBackendSettingsBuilder; +use vitup::builders::QuickVitBackendSettingsBuilder; +use vitup::config::VoteBlockchainTime; #[test] pub fn soak_test_private_super_optimistic() { @@ -11,13 +12,13 @@ pub fn soak_test_private_super_optimistic() { vote_start: 0, tally_start: 30, tally_end: 32, - slots_in_epoch: 60, + slots_per_epoch: 60, }; let mut quick_setup = QuickVitBackendSettingsBuilder::new(); quick_setup .initials_count(no_of_wallets, "1234") - .vote_timing(vote_timing) + .vote_timing(vote_timing.into()) .slot_duration_in_seconds(2) .proposals_count(500) .voting_power(1_500_000) diff --git a/integration-tests/src/snapshot/testnet.rs b/integration-tests/src/snapshot/testnet.rs index 1210c493..0b18568e 100644 --- a/integration-tests/src/snapshot/testnet.rs +++ b/integration-tests/src/snapshot/testnet.rs @@ -1,8 +1,8 @@ -use jormungandr_testing_utils::testing::asserts::InitialsAssert; use crate::common::registration::do_registration; use crate::common::snapshot::do_snapshot; use crate::common::snapshot::wait_for_db_sync; use assert_fs::TempDir; +use jormungandr_testing_utils::testing::asserts::InitialsAssert; use snapshot_trigger_service::config::JobParameters; const GRACE_PERIOD_FOR_SNAPSHOT: u64 = 300; //SR001 @@ -29,7 +29,7 @@ pub fn multiple_registration() { let job_param = JobParameters { slot_no: Some(second_registartion.slot_no().unwrap() + GRACE_PERIOD_FOR_SNAPSHOT), - threshold: (second_registartion.funds_in_lovelace().unwrap() - 2_000_000).into(), + threshold: second_registartion.funds_in_lovelace().unwrap() - 2_000_000, }; wait_for_db_sync(); @@ -53,7 +53,7 @@ pub fn wallet_has_less_than_threshold() { let job_param = JobParameters { slot_no: Some(registartion.slot_no().unwrap() + GRACE_PERIOD_FOR_SNAPSHOT), - threshold: (registartion.funds_in_lovelace().unwrap() + 1_000_000).into(), + threshold: registartion.funds_in_lovelace().unwrap() + 1_000_000, }; wait_for_db_sync(); @@ -77,7 +77,7 @@ pub fn wallet_with_funds_equals_to_threshold_should_be_elligible_to_vote() { let job_param = JobParameters { slot_no: Some(registartion.slot_no().unwrap() + GRACE_PERIOD_FOR_SNAPSHOT), - threshold: (registartion.funds_in_lovelace().unwrap() - 1_000_000).into(), + threshold: registartion.funds_in_lovelace().unwrap() - 1_000_000, }; wait_for_db_sync(); @@ -104,6 +104,6 @@ pub fn registration_after_snapshot_is_not_taken_into_account() { wait_for_db_sync(); let snapshot_result = do_snapshot(job_param).unwrap(); let initials = snapshot_result.initials(); - + initials.assert_not_contain(too_late_entry); } diff --git a/vitup/src/builders/helpers/time.rs b/vitup/src/builders/helpers/time.rs index 61b6d6c8..78297b7e 100644 --- a/vitup/src/builders/helpers/time.rs +++ b/vitup/src/builders/helpers/time.rs @@ -3,6 +3,7 @@ use crate::config::VoteBlockchainTime; use crate::config::VoteTime; use chrono::NaiveDateTime; use jormungandr_lib::time::SecondsSinceUnixEpoch; +use std::collections::HashSet; pub fn convert_to_blockchain_date( parameters: &VitStartParameters, @@ -13,32 +14,46 @@ pub fn convert_to_blockchain_date( VoteTime::Real { vote_start_timestamp, tally_start_timestamp, - tally_end_timestamp: _, + tally_end_timestamp, find_best_match: _, } => { let block0_date = NaiveDateTime::from_timestamp(block0_date.to_secs() as i64, 0); - let from_block0_till_vote_start = - (vote_start_timestamp - block0_date).num_seconds() as u64; + let from_block0_till_vote_start = (vote_start_timestamp - block0_date).num_seconds(); let from_vote_start_till_tally_start = - (tally_start_timestamp - vote_start_timestamp).num_seconds() as u64; - let _from_tally_start_till_tally_end = - (tally_start_timestamp - vote_start_timestamp).num_seconds() as u64; + (tally_start_timestamp - block0_date).num_seconds(); + let from_tally_start_till_tally_end = (tally_end_timestamp - block0_date).num_seconds(); + + let mut block0_to_start = count_divisors(from_block0_till_vote_start, 90, 60); + let start_to_end = count_divisors(from_vote_start_till_tally_start, 90, 60); - let _from_block0_till_vote_start_slots = - from_block0_till_vote_start / parameters.slot_duration as u64; - let _from_vote_start_till_tally_start_slots = - from_vote_start_till_tally_start / parameters.slot_duration as u64; + block0_to_start.extend(&start_to_end); + let max = block0_to_start.iter().max(); + if max.is_none() { + panic!("bad data"); + } + + let max: i64 = *max.unwrap(); VoteBlockchainTime { - vote_start: 0, - tally_start: 1, - tally_end: 2, - slots_per_epoch: 240, + vote_start: (from_block0_till_vote_start / max) as u32, + tally_start: (from_vote_start_till_tally_start / max) as u32, + tally_end: (from_tally_start_till_tally_end / max) as u32, + slots_per_epoch: max as u32, } } } } +fn count_divisors(n: i64, grace: i64, start: i64) -> HashSet { + let mut output = HashSet::new(); + for i in start..=n { + if n % i <= grace { + output.insert(i); + } + } + output +} + pub fn convert_to_human_date( parameters: &VitStartParameters, block0_date: SecondsSinceUnixEpoch, @@ -92,18 +107,22 @@ mod tests { fn time_test() { let block0_date = SecondsSinceUnixEpoch::now(); let mut parameters = VitStartParameters::default(); - + let vote_time = VoteTime::real_from_str( - "2021-04-11 11:00:00", - "2021-04-11 18:00:00", - "2021-05-11 09:00:00", - ).unwrap(); + "2021-10-06 11:00:00", + "2021-10-06 18:00:00", + "2021-10-07 09:00:00", + ) + .unwrap(); parameters.slot_duration = 10; parameters.vote_time = vote_time.clone(); - println!("Before {:#?}",vote_time); - let blockchain_time = convert_to_blockchain_date(¶meters,block0_date); + println!("Before {:#?}", vote_time); + let blockchain_time = convert_to_blockchain_date(¶meters, block0_date); parameters.vote_time = VoteTime::Blockchain(blockchain_time); - println!("After {:#?}",convert_to_human_date(¶meters,block0_date)); + println!( + "After {:#?}", + convert_to_human_date(¶meters, block0_date) + ); } -} \ No newline at end of file +} diff --git a/vitup/src/builders/mod.rs b/vitup/src/builders/mod.rs index acb1afff..167bb9a7 100644 --- a/vitup/src/builders/mod.rs +++ b/vitup/src/builders/mod.rs @@ -11,6 +11,7 @@ pub use helpers::{ use crate::builders::helpers::build_servicing_station_parameters; use crate::config::DataGenerationConfig; use crate::config::VitStartParameters; +use crate::config::VoteBlockchainTime; use crate::config::VoteTime; use crate::scenario::controller::VitController; use crate::scenario::controller::VitControllerBuilder; @@ -22,7 +23,6 @@ use jormungandr_lib::interfaces::CommitteeIdDef; use jormungandr_lib::interfaces::ConsensusLeaderId; pub use jormungandr_lib::interfaces::Initial; use jormungandr_lib::time::SecondsSinceUnixEpoch; -use crate::config::VoteBlockchainTime; use jormungandr_scenario_tests::scenario::settings::Settings; use jormungandr_scenario_tests::scenario::{ ActiveSlotCoefficient, ConsensusVersion, ContextChaCha, Controller, KesUpdateSpeed, Milli, @@ -221,7 +221,7 @@ impl QuickVitBackendSettingsBuilder { } pub fn blockchain_timing(&self) -> VoteBlockchainTime { - convert_to_blockchain_date(&self.config.params,self.block0_date) + convert_to_blockchain_date(&self.config.params, self.block0_date) } pub fn dump_qrs( diff --git a/vitup/src/config/vote_time.rs b/vitup/src/config/vote_time.rs index 95f21c42..d4bda3ce 100644 --- a/vitup/src/config/vote_time.rs +++ b/vitup/src/config/vote_time.rs @@ -102,8 +102,8 @@ impl VoteBlockchainTime { } } -impl Into for VoteBlockchainTime { - fn into(self) -> VoteTime { - VoteTime::Blockchain(self) +impl From for VoteTime { + fn from(vote_blockchain_time: VoteBlockchainTime) -> Self { + VoteTime::Blockchain(vote_blockchain_time) } -} \ No newline at end of file +} diff --git a/vitup/tests/data/mod.rs b/vitup/tests/data/mod.rs index 61d763a3..e798daae 100644 --- a/vitup/tests/data/mod.rs +++ b/vitup/tests/data/mod.rs @@ -6,7 +6,7 @@ use jormungandr_scenario_tests::scenario::Controller; use jormungandr_scenario_tests::Seed; use jormungandr_scenario_tests::{Context, ProgressBarMode}; use std::collections::LinkedList; -use std::path::PathBuf; +use std::path::{Path, PathBuf}; use std::str::FromStr; use valgrind::{Challenge, Fund, Proposal, ValgrindClient}; @@ -15,8 +15,8 @@ use vit_servicing_station_tests::common::data::FundTemplate; use vit_servicing_station_tests::common::data::ProposalTemplate; use vit_servicing_station_tests::common::data::ReviewTemplate; use vit_servicing_station_tests::common::data::ValidVotePlanParameters; -use vitup::scenario::controller::VitController; use vitup::builders::QuickVitBackendSettingsBuilder; +use vitup::scenario::controller::VitController; pub fn funds_eq(expected: FundTemplate, actual: Fund) { assert_eq!(expected.id, actual.id, "fund id"); @@ -149,7 +149,7 @@ pub fn proposals_eq(expected_list: LinkedList, actual_list: Ve } } -pub fn context(testing_directory: &PathBuf) -> Context { +pub fn context(testing_directory: &Path) -> Context { let jormungandr = prepare_command(PathBuf::from_str("jormungandr").unwrap()); let jcli = prepare_command(PathBuf::from_str("jcli").unwrap()); let seed = Seed::generate(rand::rngs::OsRng); @@ -160,7 +160,7 @@ pub fn context(testing_directory: &PathBuf) -> Context { seed, jormungandr, jcli, - Some(testing_directory.clone()), + Some(testing_directory.to_path_buf()), generate_documentation, ProgressBarMode::None, log_level, diff --git a/vitup/tests/data/private.rs b/vitup/tests/data/private.rs index 7ed3ce51..81a73a21 100644 --- a/vitup/tests/data/private.rs +++ b/vitup/tests/data/private.rs @@ -8,9 +8,9 @@ use crate::data::vitup_setup; use jortestkit::prelude::read_file; use vit_servicing_station_tests::common::data::parse_funds; use vit_servicing_station_tests::common::data::ExternalValidVotingTemplateGenerator; -use vitup::scenario::network::setup_network; -use vitup::config::VoteBlockchainTime; use vitup::builders::QuickVitBackendSettingsBuilder; +use vitup::config::VoteBlockchainTime; +use vitup::scenario::network::setup_network; #[test] pub fn private_vote_multiple_vote_plans() { @@ -50,7 +50,7 @@ pub fn private_vote_multiple_vote_plans() { .voting_power(expected_fund.threshold.unwrap() as u64) .private(true); - let title = quick_setup.title().clone(); + let title = quick_setup.title(); let (mut vit_controller, mut controller, vit_parameters, _) = vitup_setup(quick_setup, testing_directory.path().to_path_buf()); let (nodes, vit_station, wallet_proxy) = setup_network( @@ -78,7 +78,7 @@ pub fn private_vote_multiple_vote_plans() { testing_directory .path() .join(&title) - .join(status.id.to_string() + &"_committees") + .join(status.id.to_string() + "_committees") .join("election_public_key.sk"), ); assert_eq!( diff --git a/vitup/tests/data/public.rs b/vitup/tests/data/public.rs index 90282e81..8c52dfbc 100644 --- a/vitup/tests/data/public.rs +++ b/vitup/tests/data/public.rs @@ -10,9 +10,9 @@ use vit_servicing_station_tests::common::data::parse_reviews; use vit_servicing_station_tests::common::data::ExternalValidVotingTemplateGenerator; use crate::data::{challenges_eq, funds_eq, proposals_eq, reviews_eq, vitup_setup}; -use vitup::scenario::network::setup_network; -use vitup::config::VoteBlockchainTime; use vitup::builders::QuickVitBackendSettingsBuilder; +use vitup::config::VoteBlockchainTime; +use vitup::scenario::network::setup_network; #[ignore] #[test]