pub mod context;
mod core_helper_functions {
}
mod core_target_u8 {
use super::context::*;
#[test]
fn u8bit_is_set() {
let yes: u8 = 0b1 << U8_OFFSET;
assert_eq!(true, U8_BIT.is_set(&yes));
}
#[test]
fn u8bit_is_not_set() {
let no: u8 = 0;
assert_eq!(false, U8_BIT.is_set(&no));
}
}
mod core_target_u16 {
use super::context::*;
#[test]
fn u16bit_is_set() {
let yes: u16 = 0b1 << U8_OFFSET;
assert_eq!(true, U8_BIT.is_set(&yes));
}
#[test]
fn u16bit_is_not_set() {
let no: u16 = 0;
assert_eq!(false, U8_BIT.is_set(&no));
}
#[test]
fn u16bit_is_clr() {
let yes: u8 = 0;
assert_eq!(true, U8_BIT.is_clr(&yes));
}
#[test]
fn u16bit_is_not_clr() {
let no: u8 = 0b1 << U8_OFFSET;
assert_eq!(false, U8_BIT.is_clr(&no));
}
#[test]
fn u32field_0_32_in_u8array_read() {
let no: [u8; 5] = [0x12, 0x34, 0x56, 0x78, 0x9a];
let f = Field::<0, 32>::new();
let s : u32 = f.read(&no);
assert_eq!(0x12345678, s);
}
#[test]
fn u32field_0_32_in_u8array_read_at_0() {
let no: [u8; 5] = [0x12, 0x34, 0x56, 0x78, 0x9a];
let f = Field::<0, 32>::new();
let s0 : u32 = f.read_at(&no, 0);
assert_eq!(0x12345678, s0);
}
#[test]
fn u32field_0_32_in_u8array_read_at_1() {
let no: [u8; 5] = [0x12, 0x34, 0x56, 0x78, 0x9a];
let f = Field::<0, 32>::new();
let s1 : u32 = f.read_at(&no, 1);
assert_eq!(0x3456789a, s1);
}
#[test]
fn u32field_8_24_in_u8array_read_at_1() {
let no: [u8; 5] = [0x12, 0x34, 0x56, 0x78, 0x9a];
let f = Field::<8, 24>::new();
let s0 : u32 = f.read_at(&no, 1);
assert_eq!(0x345678, s0);
}
#[test]
fn u32field_4_20_in_u8array_read_at_1() {
let no: [u8; 5] = [0x12, 0x34, 0x56, 0x78, 0x9a];
let f = Field::<4, 20>::new();
let s0 : u32 = f.read_at(&no, 1);
assert_eq!(0x56789, s0);
}
}
mod basic_bit_and_bitmasks {
use super::context::*;
const BITMASK_U32: Mask = Mask::new(1 << U8_OFFSET);
#[test]
fn u32_from_bitmask_u32() {
assert_eq!( 1 << U8_OFFSET, u32::from(BITMASK_U32) );
}
}
mod bit_deref_tests {
}
mod bit_add_tests {
}