diff options
| author | Diego Barrios Romero <eldruin@gmail.com> | 2018-11-11 11:43:26 +0100 | 
|---|---|---|
| committer | Diego Barrios Romero <eldruin@gmail.com> | 2018-11-11 11:43:26 +0100 | 
| commit | d1723322ec05e3ddfd3a5a8d56ceb5f23fc7d372 (patch) | |
| tree | 2d461b8c6d7743202353b5a761e2b4fef6b696b9 /tests | |
| parent | e571469bbb1d91744819a4744ed6a8c7975e7467 (diff) | |
| download | ads1x1x-async-d1723322ec05e3ddfd3a5a8d56ceb5f23fc7d372.tar.gz ads1x1x-async-d1723322ec05e3ddfd3a5a8d56ceb5f23fc7d372.tar.xz ads1x1x-async-d1723322ec05e3ddfd3a5a8d56ceb5f23fc7d372.zip | |
Refactor tests
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/tier2_i2c.rs | 23 | 
1 files changed, 15 insertions, 8 deletions
| diff --git a/tests/tier2_i2c.rs b/tests/tier2_i2c.rs index e032a6c..b8b15fe 100644 --- a/tests/tier2_i2c.rs +++ b/tests/tier2_i2c.rs @@ -9,11 +9,12 @@ mod common;  use common::{ new_ads1014, destroy_ads1014,                DEVICE_ADDRESS as DEV_ADDR, Register, BitFlags, Config }; +  macro_rules! set_value_test { -    ($name:ident, $method:ident, $value:expr, $config:expr) => { +    ($name:ident, $method:ident, $value:expr, $reg:ident, $msb:expr, $lsb:expr) => {          #[test]          fn $name() { -            let transactions = [ I2cTrans::write(DEV_ADDR, vec![Register::CONFIG, $config.msb(), $config.lsb()]) ]; +            let transactions = [ I2cTrans::write(DEV_ADDR, vec![Register::$reg, $msb, $lsb]) ];              let mut dev = new_ads1014(&transactions);              dev.$method($value).unwrap();              destroy_ads1014(dev); @@ -21,21 +22,27 @@ macro_rules! set_value_test {      }  } +macro_rules! config_test { +    ($name:ident, $method:ident, $value:expr, $config:expr) => { +        set_value_test!($name, $method, $value, CONFIG, $config.msb(), $config.lsb()); +    } +} +  mod can_set_comparator_mode {      use super::*; -    set_value_test!(traditional, set_comparator_mode, ComparatorMode::Traditional, Config::default().with_low( BitFlags::COMP_MODE)); -    set_value_test!(window,      set_comparator_mode, ComparatorMode::Window,      Config::default().with_high(BitFlags::COMP_MODE)); +    config_test!(traditional, set_comparator_mode, ComparatorMode::Traditional, Config::default().with_low( BitFlags::COMP_MODE)); +    config_test!(window,      set_comparator_mode, ComparatorMode::Window,      Config::default().with_high(BitFlags::COMP_MODE));  }  mod can_set_comparator_polarity {      use super::*; -    set_value_test!(low,  set_comparator_polarity, ComparatorPolarity::ActiveLow,  Config::default().with_low( BitFlags::COMP_POL)); -    set_value_test!(high, set_comparator_polarity, ComparatorPolarity::ActiveHigh, Config::default().with_high(BitFlags::COMP_POL)); +    config_test!(low,  set_comparator_polarity, ComparatorPolarity::ActiveLow,  Config::default().with_low( BitFlags::COMP_POL)); +    config_test!(high, set_comparator_polarity, ComparatorPolarity::ActiveHigh, Config::default().with_high(BitFlags::COMP_POL));  }  mod can_set_comparator_latching {      use super::*; -    set_value_test!(non, set_comparator_latching, ComparatorLatching::Nonlatching, Config::default().with_low( BitFlags::COMP_LAT)); -    set_value_test!(lat, set_comparator_latching, ComparatorLatching::Latching,    Config::default().with_high(BitFlags::COMP_LAT)); +    config_test!(non, set_comparator_latching, ComparatorLatching::Nonlatching, Config::default().with_low( BitFlags::COMP_LAT)); +    config_test!(lat, set_comparator_latching, ComparatorLatching::Latching,    Config::default().with_high(BitFlags::COMP_LAT));  } | 
