use mpstthree::binary::cancel::cancel;
use mpstthree::binary::struct_trait::end::*;
use mpstthree::binary::struct_trait::session::*;
use mpstthree::binary_atmp::send::send;
use mpstthree::binary_atmp::struct_trait::send::SendTimed;
use rand::{thread_rng, Rng};
use std::collections::HashMap;
use std::error::Error;
use std::thread::sleep;
use std::time::{Duration, Instant};
pub fn send_both_positive_both_included_wrong_order_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(2));
let (sender, _receiver) = SendTimed::<i32, 'a', 2, true, 1, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_negative_both_included_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'a', -1, true, -2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_both_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', 1, true, 2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_both_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', 1, true, 2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_both_included_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, true, 2, true, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_both_included_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, true, 2, true, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_both_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', 1, true, 2, true, 'b', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_upper_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', 1, false, 2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_upper_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', 1, false, 2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_upper_included_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, false, 2, true, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_upper_included_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, false, 2, true, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_upper_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', 1, false, 2, true, 'b', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_lower_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', 1, true, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_lower_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', 1, true, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_lower_included_lower_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, true, 2, false, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_lower_included_lower_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, true, 2, false, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_lower_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', 1, true, 2, false, 'b', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_none_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', 1, false, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_none_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', 1, false, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_none_included_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, false, 2, false, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_none_included_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, false, 2, false, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_both_positive_none_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', 1, false, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_both_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', 1, true, -2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_err());
}
pub fn send_lower_positive_both_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', 1, true, -2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_both_included_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, true, -2, true, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_both_included_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, true, -2, true, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_both_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', 1, true, -2, true, 'b', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_upper_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', 1, false, -2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_err());
}
pub fn send_lower_positive_upper_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', 1, false, -2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_upper_included_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, false, -2, true, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_upper_included_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, false, -2, true, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_upper_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', 1, false, -2, true, 'b', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_lower_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', 1, true, -2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_err());
}
pub fn send_lower_positive_lower_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', 1, true, -2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_lower_included_lower_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, true, -2, false, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_lower_included_lower_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, true, -2, false, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_lower_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', 1, true, -2, false, 'b', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_none_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', 1, false, -2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_err());
}
pub fn send_lower_positive_none_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', 1, false, -2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_none_included_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, false, -2, false, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_none_included_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', 1, false, -2, false, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_lower_positive_none_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', 1, false, -2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_both_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', -1, true, 2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_both_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', -1, true, 2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_err());
}
pub fn send_upper_positive_both_included_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', -1, true, 2, true, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_both_included_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', -1, true, 2, true, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_both_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', -1, true, 2, true, 'b', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_upper_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', -1, false, 2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_upper_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', -1, false, 2, true, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_err());
}
pub fn send_upper_positive_upper_included_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', -1, false, 2, true, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_upper_included_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', -1, false, 2, true, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_upper_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', -1, false, 2, true, 'b', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_lower_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', -1, true, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_lower_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', -1, true, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_err());
}
pub fn send_upper_positive_lower_included_lower_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', -1, true, 2, false, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_lower_included_lower_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', -1, true, 2, false, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_lower_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', -1, true, 2, false, 'b', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_none_included_upper_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(3));
let (sender, _receiver) = SendTimed::<i32, 'a', -1, false, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_none_included_lower_timeout_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
let (sender, _receiver) = SendTimed::<i32, 'a', -1, false, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_err());
}
pub fn send_upper_positive_none_included_reset_clock_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', -1, false, 2, false, 'a', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_none_included_receive_missing_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, receiver) = SendTimed::<i32, 'a', -1, false, 2, false, ' ', End>::new();
cancel(receiver);
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}
pub fn send_upper_positive_none_included_wrong_reset_panics() {
assert!(|| -> Result<(), Box<dyn Error>> {
let mut all_clocks = HashMap::<char, Instant>::new();
all_clocks.insert('a', Instant::now());
let mut rng = thread_rng();
let x: i32 = rng.gen();
sleep(Duration::from_secs(1));
let (sender, _receiver) = SendTimed::<i32, 'b', -1, false, 2, false, ' ', End>::new();
let _ = send(x, &mut all_clocks, sender)?;
Ok(())
}()
.is_ok());
}