test multiline parsing

This commit is contained in:
jane 2021-12-28 17:40:46 -05:00
parent e67f84a4ce
commit 1f55bb8c31
1 changed files with 7 additions and 4 deletions

View File

@ -15,7 +15,7 @@ fn main() {
let lock = Arc::new(RwLock::new([p; LED_SIZE])); let lock = Arc::new(RwLock::new([p; LED_SIZE]));
let mut pattern: Vec<Box<dyn Pattern>> = Vec::new(); let mut pattern: Vec<Box<dyn Pattern>> = Vec::new();
let read = Arc::clone(&lock); let read = Arc::clone(&lock);
/// light management //light management
thread::spawn(move || { thread::spawn(move || {
let mut controller: Controller = ControllerBuilder::new() let mut controller: Controller = ControllerBuilder::new()
.channel(0, ChannelBuilder::new() .channel(0, ChannelBuilder::new()
@ -33,8 +33,11 @@ fn main() {
} }
}); });
/// pattern parsing //pattern parsing
let mul_string = format_multiline("unit"); let mul_string = format_multiline(concat!(
"val 0 0 255",
"val r 255"
));
let res: Result<Vec<Box<dyn Pattern>>, ParseError> = mul_string.iter() let res: Result<Vec<Box<dyn Pattern>>, ParseError> = mul_string.iter()
.map(|x: &Vec<String>| parse_line((*x).clone())) .map(|x: &Vec<String>| parse_line((*x).clone()))
.collect(); .collect();
@ -42,7 +45,7 @@ fn main() {
pattern = res.unwrap(); pattern = res.unwrap();
} }
/// pattern management //pattern management
loop { loop {
thread::sleep(time::Duration::from_millis(LOOP_WAIT)); thread::sleep(time::Duration::from_millis(LOOP_WAIT));
for p in &pattern { for p in &pattern {