Skip to content

Commit

Permalink
Double-check evaluation reward benchmarks
Browse files Browse the repository at this point in the history
  • Loading branch information
JuaniRios authored and lrazovic committed May 22, 2024
1 parent 2670766 commit 284add0
Show file tree
Hide file tree
Showing 4 changed files with 1,513 additions and 15 deletions.
2 changes: 1 addition & 1 deletion pallets/funding/src/functions/3_auction.rs
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ impl<T: Config> Pallet<T> {
#[transactional]
pub fn do_end_auction_closing(project_id: ProjectId) -> DispatchResultWithPostInfo {
// * Get variables *
let mut project_details = ProjectsDetails::<T>::get(project_id).ok_or(Error::<T>::ProjectDetailsNotFound)?;
let project_details = ProjectsDetails::<T>::get(project_id).ok_or(Error::<T>::ProjectDetailsNotFound)?;
let project_metadata = ProjectsMetadata::<T>::get(project_id).ok_or(Error::<T>::ProjectMetadataNotFound)?;
let now = <frame_system::Pallet<T>>::block_number();
let auction_closing_start_block =
Expand Down
5 changes: 0 additions & 5 deletions pallets/funding/src/functions/4_contribution.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,14 +27,9 @@ impl<T: Config> Pallet<T> {
pub fn do_start_community_funding(project_id: ProjectId) -> DispatchResultWithPostInfo {
// * Get variables *
let project_details = ProjectsDetails::<T>::get(project_id).ok_or(Error::<T>::ProjectDetailsNotFound)?;
let project_metadata = ProjectsMetadata::<T>::get(project_id).ok_or(Error::<T>::ProjectMetadataNotFound)?;
let now = <frame_system::Pallet<T>>::block_number();
let auction_closing_start_block =
project_details.phase_transition_points.auction_closing.start().ok_or(Error::<T>::TransitionPointNotSet)?;
let auction_closing_end_block =
project_details.phase_transition_points.auction_closing.end().ok_or(Error::<T>::TransitionPointNotSet)?;
let auction_random_end =
project_details.phase_transition_points.random_closing_ending.ok_or(Error::<T>::TransitionPointNotSet)?;

// * Validity checks *
ensure!(now > auction_closing_end_block, Error::<T>::TooEarlyForRound);
Expand Down
11 changes: 2 additions & 9 deletions pallets/funding/src/tests/3_auction.rs
Original file line number Diff line number Diff line change
Expand Up @@ -676,12 +676,11 @@ mod round_flow {
fn all_bids_but_one_have_price_higher_than_wap() {
let mut inst = MockInstantiator::new(Some(RefCell::new(new_test_ext())));
let total_allocation = 10_000_000 * CT_UNIT;
let initial_price = PriceOf::<TestRuntime>::from_float(10.0f64);
let min_bid_ct = 500 * CT_UNIT; // 5k USD at 10USD/CT
let max_bids_per_project: u32 = <TestRuntime as Config>::MaxBidsPerProject::get();
let big_bid: BidParams<TestRuntime> = (BIDDER_1, total_allocation).into();
let small_bids: Vec<BidParams<TestRuntime>> =
(0..max_bids_per_project-1).map(|i| (i + BIDDER_1, min_bid_ct).into()).collect();
(0..max_bids_per_project - 1).map(|i| (i + BIDDER_1, min_bid_ct).into()).collect();
let all_bids = vec![vec![big_bid.clone()], small_bids.clone()].into_iter().flatten().collect_vec();

let mut project_metadata = default_project_metadata(ISSUER_1);
Expand All @@ -697,17 +696,11 @@ mod round_flow {
);

let wap = inst.get_project_details(project_id).weighted_average_price.unwrap();
let absolute_price = <TestRuntime as Config>::PriceProvider::convert_back_to_normal_price(
wap,
USD_DECIMALS,
project_metadata.token_information.decimals,
);
let big_bid = inst.execute(|| Bids::<TestRuntime>::get((project_id, BIDDER_1, 0))).unwrap();

let all_bids = inst.execute(|| Bids::<TestRuntime>::iter_prefix_values((project_id,)).collect_vec());

let higher_than_wap_bids = all_bids.iter().filter(|bid| bid.original_ct_usd_price > wap).collect_vec();
assert_eq!(higher_than_wap_bids.len(), (max_bids_per_project-1u32) as usize);
assert_eq!(higher_than_wap_bids.len(), (max_bids_per_project - 1u32) as usize);
}
}

Expand Down
Loading

0 comments on commit 284add0

Please sign in to comment.