Skip to content

Commit 566ec47

Browse files
authored
Merge branch 'dev' into issue-260-preserve-original-error-message
2 parents 5c3fe53 + b074453 commit 566ec47

File tree

3 files changed

+25
-0
lines changed

3 files changed

+25
-0
lines changed

adapter/src/ethereum.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -856,6 +856,8 @@ mod test {
856856
withdraw_period_start: Utc::now() + Duration::days(1),
857857
ad_units: vec![],
858858
pricing_bounds: None,
859+
price_multiplication_rules: Default::default(),
860+
price_dynamic_adjustment: false,
859861
},
860862
};
861863

primitives/src/channel.rs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ use serde::{Deserialize, Deserializer, Serialize};
77
use serde_hex::{SerHex, StrictPfx};
88

99
use crate::big_num::BigNum;
10+
use crate::sentry::Event;
1011
use crate::{AdUnit, EventSubmission, TargetingTag, ValidatorDesc, ValidatorId};
1112
use hex::{FromHex, FromHexError};
1213
use std::ops::Deref;
@@ -151,6 +152,26 @@ pub struct ChannelSpec {
151152
/// An array of AdUnit (optional)
152153
#[serde(default, skip_serializing_if = "Vec::is_empty")]
153154
pub ad_units: Vec<AdUnit>,
155+
#[serde(default, skip_serializing_if = "Vec::is_empty")]
156+
pub price_multiplication_rules: Vec<PriceMultiplicationRules>,
157+
pub price_dynamic_adjustment: bool,
158+
}
159+
160+
#[derive(Serialize, Deserialize, Debug, Clone)]
161+
#[serde(rename_all = "camelCase")]
162+
pub struct PriceMultiplicationRules {
163+
#[serde(default, skip_serializing_if = "Option::is_none")]
164+
multiplier: Option<f64>,
165+
#[serde(default, skip_serializing_if = "Option::is_none")]
166+
amount: Option<BigNum>,
167+
#[serde(default, skip_serializing_if = "Option::is_none")]
168+
ev_type: Option<Vec<Event>>,
169+
#[serde(default, skip_serializing_if = "Option::is_none")]
170+
publisher: Option<Vec<ValidatorId>>,
171+
#[serde(default, skip_serializing_if = "Option::is_none")]
172+
os_type: Option<Vec<String>>,
173+
#[serde(default, skip_serializing_if = "Option::is_none")]
174+
country: Option<Vec<String>>,
154175
}
155176

156177
#[derive(Serialize, Deserialize, Debug, Clone)]

primitives/src/util/tests/prep_db.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@ lazy_static! {
8181
withdraw_period_start: Utc.timestamp_millis(4_073_414_400_000),
8282
ad_units: vec![],
8383
pricing_bounds: Some(PricingBounds {impression: None, click: Some(Pricing { max: 0.into(), min: 0.into()})}),
84+
price_multiplication_rules: Default::default(),
85+
price_dynamic_adjustment: false,
8486
},
8587
}
8688
};

0 commit comments

Comments
 (0)