INNER CODE UNIT · Rust
read_some_coils
slowtec/tokio-modbus · src/client/mod.rs:453
fn read_some_coils() {
// The protocol will always return entire bytes with, i.e.
// a multiple of 8 coils.
let response_coils = [true, false, false, true, false, true, false, true];
for num_coils in 1..8 {
let mut client = Box::<ClientMock>::default();
client.set_next_response(Ok(Ok(Response::ReadCoils(response_coils.to_vec()))));
let mut context = Context { client };
context.set_slave(Slave(1));
let coils = futures::executor::block_on(context.read_coils(1, num_coils))
.unwrap()
.unwrap();
assert_eq!(&response_coils[0..num_coils as usize], &coils[..]);
}
}
#[test]
fn read_some_discrete_inputs() {