summaryrefslogtreecommitdiffstats
path: root/tests/tier1.rs
diff options
context:
space:
mode:
authorDiego Barrios Romero <eldruin@gmail.com>2019-03-30 13:36:06 +0200
committerDiego Barrios Romero <eldruin@gmail.com>2019-03-31 13:41:26 +0200
commit50223ad02e2f487540107e320c8bef40a9849582 (patch)
tree58b4e44e2261940d07aba96b8d8e83457e641f53 /tests/tier1.rs
parentab1221e175f2da577c7a3fb510b5ae5cf41b0697 (diff)
downloadads1x1x-async-50223ad02e2f487540107e320c8bef40a9849582.tar.gz
ads1x1x-async-50223ad02e2f487540107e320c8bef40a9849582.tar.xz
ads1x1x-async-50223ad02e2f487540107e320c8bef40a9849582.zip
Format code
Diffstat (limited to 'tests/tier1.rs')
-rw-r--r--tests/tier1.rs242
1 files changed, 193 insertions, 49 deletions
diff --git a/tests/tier1.rs b/tests/tier1.rs
index de44b3c..89a60e0 100644
--- a/tests/tier1.rs
+++ b/tests/tier1.rs
@@ -7,22 +7,28 @@ extern crate ads1x1x;
use ads1x1x::{channel, DataRate12Bit, DataRate16Bit};
mod common;
-use common::{ new_ads1013, destroy_ads1013, new_ads1113, destroy_ads1113,
- DEVICE_ADDRESS as DEV_ADDR, Register, BitFlags, Config };
+use common::{
+ destroy_ads1013, destroy_ads1113, new_ads1013, new_ads1113, BitFlags as BF, Config, Register,
+ DEVICE_ADDRESS as DEV_ADDR,
+};
macro_rules! measure_tests {
($IC:ident, $create:ident, $destroy:ident, $expected:expr) => {
mod $IC {
- use embedded_hal::adc::OneShot;
use super::*;
+ use embedded_hal::adc::OneShot;
mod would_block {
use super::*;
#[test]
fn read_if_measurement_in_progress() {
- let config = Config::default().with_low(BitFlags::OS);
- let transactions = [ I2cTrans::write_read(DEV_ADDR, vec![Register::CONFIG], vec![config.msb(), config.lsb()] ) ];
+ let config = Config::default().with_low(BF::OS);
+ let transactions = [I2cTrans::write_read(
+ DEV_ADDR,
+ vec![Register::CONFIG],
+ vec![config.msb(), config.lsb()],
+ )];
let mut dev = $create(&transactions);
assert_would_block!(dev.read(&mut channel::DifferentialA0A1));
$destroy(dev);
@@ -32,11 +38,24 @@ macro_rules! measure_tests {
#[test]
fn can_measure() {
let default_config = Config::default();
- let config_with_os = Config::default().with_high(BitFlags::OS);
- let transactions = [ I2cTrans::write_read(DEV_ADDR, vec![Register::CONFIG], vec![default_config.msb(), default_config.lsb()]),
- I2cTrans::write(DEV_ADDR, vec![Register::CONFIG, config_with_os.msb(), config_with_os.lsb()]),
- I2cTrans::write_read(DEV_ADDR, vec![Register::CONFIG], vec![config_with_os.msb(), config_with_os.lsb()]),
- I2cTrans::write_read(DEV_ADDR, vec![Register::CONVERSION], vec![0x80, 0x00] ) ];
+ let config_with_os = Config::default().with_high(BF::OS);
+ let transactions = [
+ I2cTrans::write_read(
+ DEV_ADDR,
+ vec![Register::CONFIG],
+ vec![default_config.msb(), default_config.lsb()],
+ ),
+ I2cTrans::write(
+ DEV_ADDR,
+ vec![Register::CONFIG, config_with_os.msb(), config_with_os.lsb()],
+ ),
+ I2cTrans::write_read(
+ DEV_ADDR,
+ vec![Register::CONFIG],
+ vec![config_with_os.msb(), config_with_os.lsb()],
+ ),
+ I2cTrans::write_read(DEV_ADDR, vec![Register::CONVERSION], vec![0x80, 0x00]),
+ ];
let mut dev = $create(&transactions);
let measurement = block!(dev.read(&mut channel::DifferentialA0A1)).unwrap();
assert_eq!($expected, measurement);
@@ -45,9 +64,11 @@ macro_rules! measure_tests {
#[test]
fn can_measure_continuous() {
- let config = Config::default().with_low(BitFlags::OP_MODE);
- let transactions = [ I2cTrans::write(DEV_ADDR, vec![Register::CONFIG, config.msb(), config.lsb()]),
- I2cTrans::write_read(DEV_ADDR, vec![Register::CONVERSION], vec![0x80, 0x00] ) ];
+ let config = Config::default().with_low(BF::OP_MODE);
+ let transactions = [
+ I2cTrans::write(DEV_ADDR, vec![Register::CONFIG, config.msb(), config.lsb()]),
+ I2cTrans::write_read(DEV_ADDR, vec![Register::CONVERSION], vec![0x80, 0x00]),
+ ];
let dev = $create(&transactions);
let mut dev = dev.into_continuous().ok().unwrap();
let measurement = dev.read().unwrap();
@@ -55,64 +76,180 @@ macro_rules! measure_tests {
$destroy(dev);
}
}
- }
+ };
}
-measure_tests!(ads1013, new_ads1013, destroy_ads1013, -2048);
+measure_tests!(ads1013, new_ads1013, destroy_ads1013, -2048);
measure_tests!(ads1113, new_ads1113, destroy_ads1113, -32768);
-
mod data_rate_12bit {
+ use super::*;
+
macro_rules! test {
($name:ident, $variant:ident, $config: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::CONFIG, $config.msb(), $config.lsb()],
+ )];
let mut dev = new_ads1013(&transactions);
dev.set_data_rate(DataRate12Bit::$variant).unwrap();
destroy_ads1013(dev);
}
- }
+ };
}
- use super::*;
- test!(sps128, Sps128, Config::default().with_low( BitFlags::DR2).with_low( BitFlags::DR1).with_low( BitFlags::DR0));
- test!(sps250, Sps250, Config::default().with_low( BitFlags::DR2).with_low( BitFlags::DR1).with_high(BitFlags::DR0));
- test!(sps490, Sps490, Config::default().with_low( BitFlags::DR2).with_high(BitFlags::DR1).with_low( BitFlags::DR0));
- test!(sps920, Sps920, Config::default().with_low( BitFlags::DR2).with_high(BitFlags::DR1).with_high(BitFlags::DR0));
- test!(sps1600, Sps1600, Config::default().with_high(BitFlags::DR2).with_low( BitFlags::DR1).with_low( BitFlags::DR0));
- test!(sps2400, Sps2400, Config::default().with_high(BitFlags::DR2).with_low( BitFlags::DR1).with_high(BitFlags::DR0));
- test!(sps3300, Sps3300, Config::default().with_high(BitFlags::DR2).with_high(BitFlags::DR1).with_low( BitFlags::DR0));
+ test!(
+ sps128,
+ Sps128,
+ Config::default()
+ .with_low(BF::DR2)
+ .with_low(BF::DR1)
+ .with_low(BF::DR0)
+ );
+ test!(
+ sps250,
+ Sps250,
+ Config::default()
+ .with_low(BF::DR2)
+ .with_low(BF::DR1)
+ .with_high(BF::DR0)
+ );
+ test!(
+ sps490,
+ Sps490,
+ Config::default()
+ .with_low(BF::DR2)
+ .with_high(BF::DR1)
+ .with_low(BF::DR0)
+ );
+ test!(
+ sps920,
+ Sps920,
+ Config::default()
+ .with_low(BF::DR2)
+ .with_high(BF::DR1)
+ .with_high(BF::DR0)
+ );
+ test!(
+ sps1600,
+ Sps1600,
+ Config::default()
+ .with_high(BF::DR2)
+ .with_low(BF::DR1)
+ .with_low(BF::DR0)
+ );
+ test!(
+ sps2400,
+ Sps2400,
+ Config::default()
+ .with_high(BF::DR2)
+ .with_low(BF::DR1)
+ .with_high(BF::DR0)
+ );
+ test!(
+ sps3300,
+ Sps3300,
+ Config::default()
+ .with_high(BF::DR2)
+ .with_high(BF::DR1)
+ .with_low(BF::DR0)
+ );
}
mod data_rate_16bit {
+ use super::*;
+
macro_rules! test {
($name:ident, $variant:ident, $config: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::CONFIG, $config.msb(), $config.lsb()],
+ )];
let mut dev = new_ads1113(&transactions);
dev.set_data_rate(DataRate16Bit::$variant).unwrap();
destroy_ads1113(dev);
}
- }
+ };
}
- use super::*;
- test!(sps8, Sps8, Config::default().with_low( BitFlags::DR2).with_low( BitFlags::DR1).with_low( BitFlags::DR0));
- test!(sps16, Sps16, Config::default().with_low( BitFlags::DR2).with_low( BitFlags::DR1).with_high(BitFlags::DR0));
- test!(sps32, Sps32, Config::default().with_low( BitFlags::DR2).with_high(BitFlags::DR1).with_low( BitFlags::DR0));
- test!(sps64, Sps64, Config::default().with_low( BitFlags::DR2).with_high(BitFlags::DR1).with_high(BitFlags::DR0));
- test!(sps128, Sps128, Config::default().with_high(BitFlags::DR2).with_low( BitFlags::DR1).with_low( BitFlags::DR0));
- test!(sps250, Sps250, Config::default().with_high(BitFlags::DR2).with_low( BitFlags::DR1).with_high(BitFlags::DR0));
- test!(sps475, Sps475, Config::default().with_high(BitFlags::DR2).with_high(BitFlags::DR1).with_low( BitFlags::DR0));
- test!(sps860, Sps860, Config::default().with_high(BitFlags::DR2).with_high(BitFlags::DR1).with_high(BitFlags::DR0));
+ test!(
+ sps8,
+ Sps8,
+ Config::default()
+ .with_low(BF::DR2)
+ .with_low(BF::DR1)
+ .with_low(BF::DR0)
+ );
+ test!(
+ sps16,
+ Sps16,
+ Config::default()
+ .with_low(BF::DR2)
+ .with_low(BF::DR1)
+ .with_high(BF::DR0)
+ );
+ test!(
+ sps32,
+ Sps32,
+ Config::default()
+ .with_low(BF::DR2)
+ .with_high(BF::DR1)
+ .with_low(BF::DR0)
+ );
+ test!(
+ sps64,
+ Sps64,
+ Config::default()
+ .with_low(BF::DR2)
+ .with_high(BF::DR1)
+ .with_high(BF::DR0)
+ );
+ test!(
+ sps128,
+ Sps128,
+ Config::default()
+ .with_high(BF::DR2)
+ .with_low(BF::DR1)
+ .with_low(BF::DR0)
+ );
+ test!(
+ sps250,
+ Sps250,
+ Config::default()
+ .with_high(BF::DR2)
+ .with_low(BF::DR1)
+ .with_high(BF::DR0)
+ );
+ test!(
+ sps475,
+ Sps475,
+ Config::default()
+ .with_high(BF::DR2)
+ .with_high(BF::DR1)
+ .with_low(BF::DR0)
+ );
+ test!(
+ sps860,
+ Sps860,
+ Config::default()
+ .with_high(BF::DR2)
+ .with_high(BF::DR1)
+ .with_high(BF::DR0)
+ );
}
#[test]
fn can_read_measurement_in_progress() {
- let config_os = Config::default().with_low(BitFlags::OS);
- let transactions = [ I2cTrans::write_read(DEV_ADDR, vec![Register::CONFIG], vec![config_os.msb(), config_os.lsb()]) ];
+ let config_os = Config::default().with_low(BF::OS);
+ let transactions = [I2cTrans::write_read(
+ DEV_ADDR,
+ vec![Register::CONFIG],
+ vec![config_os.msb(), config_os.lsb()],
+ )];
let mut dev = new_ads1013(&transactions);
assert!(dev.is_measurement_in_progress().unwrap());
destroy_ads1013(dev);
@@ -120,8 +257,12 @@ fn can_read_measurement_in_progress() {
#[test]
fn can_read_measurement_not_in_progress() {
- let config_os = Config::default().with_high(BitFlags::OS);
- let transactions = [ I2cTrans::write_read(DEV_ADDR, vec![Register::CONFIG], vec![config_os.msb(), config_os.lsb()]) ];
+ let config_os = Config::default().with_high(BF::OS);
+ let transactions = [I2cTrans::write_read(
+ DEV_ADDR,
+ vec![Register::CONFIG],
+ vec![config_os.msb(), config_os.lsb()],
+ )];
let mut dev = new_ads1013(&transactions);
assert!(!dev.is_measurement_in_progress().unwrap());
destroy_ads1013(dev);
@@ -129,7 +270,7 @@ fn can_read_measurement_not_in_progress() {
#[test]
fn can_convert_to_continuous() {
- let config = Config::default().with_low(BitFlags::OP_MODE);
+ let config = Config::default().with_low(BF::OP_MODE);
let transactions = [I2cTrans::write(
DEV_ADDR,
vec![Register::CONFIG, config.msb(), config.lsb()],
@@ -141,15 +282,18 @@ fn can_convert_to_continuous() {
#[test]
fn can_convert_to_one_shot() {
- let config_cont = Config::default().with_low(BitFlags::OP_MODE);
+ let config_cont = Config::default().with_low(BF::OP_MODE);
let config_os = Config::default();
- let transactions = [I2cTrans::write(
- DEV_ADDR,
- vec![Register::CONFIG, config_cont.msb(), config_cont.lsb()]),
+ let transactions = [
I2cTrans::write(
- DEV_ADDR,
- vec![Register::CONFIG, config_os.msb(), config_os.lsb()],
- )];
+ DEV_ADDR,
+ vec![Register::CONFIG, config_cont.msb(), config_cont.lsb()],
+ ),
+ I2cTrans::write(
+ DEV_ADDR,
+ vec![Register::CONFIG, config_os.msb(), config_os.lsb()],
+ ),
+ ];
let dev = new_ads1013(&transactions);
let dev = dev.into_continuous().ok().unwrap();
let dev = dev.into_one_shot().ok().unwrap();