()
| 117 | use no_std_compat::prelude::v1::*; |
| 118 | #[test] |
| 119 | fn test_sequence() { |
| 120 | use crate::key_codes::KeyCode::*; |
| 121 | |
| 122 | let map = &[A.to_u32(), B.to_u32(), C.to_u32()]; |
| 123 | let l = Sequence::new(map, X, 3); |
| 124 | let mut k = Keyboard::new(KeyOutCatcher::new()); |
| 125 | k.output.state().unicode_mode = UnicodeSendMode::Debug; |
| 126 | k.add_handler(Box::new(l)); |
| 127 | k.add_handler(Box::new(USBKeyboard::new())); |
| 128 | |
| 129 | k.pc(A, &[&[A]]); |
| 130 | k.rc(A, &[&[]]); |
| 131 | |
| 132 | k.pc(B, &[&[B]]); |
| 133 | k.rc(B, &[&[]]); |
| 134 | |
| 135 | k.pc(C, &[&[C]]); |
| 136 | k.rc(C, &[&[BSpace], &[], &[BSpace], &[], &[BSpace], &[], &[X]]); |
| 137 | |
| 138 | k.pc(A, &[&[A]]); |
| 139 | k.rc(A, &[&[]]); |
| 140 | |
| 141 | k.pc(B, &[&[B]]); |
| 142 | k.rc(B, &[&[]]); |
| 143 | |
| 144 | k.pc(D, &[&[D]]); |
| 145 | k.rc(D, &[&[]]); |
| 146 | |
| 147 | k.pc(B, &[&[B]]); |
| 148 | k.rc(B, &[&[]]); |
| 149 | |
| 150 | k.pc(C, &[&[C]]); |
| 151 | k.rc(C, &[&[]]); |
| 152 | |
| 153 | k.pc(A, &[&[A]]); |
| 154 | k.rc(A, &[&[]]); |
| 155 | |
| 156 | k.pc(B, &[&[B]]); |
| 157 | k.rc(B, &[&[]]); |
| 158 | |
| 159 | k.pc(C, &[&[C]]); |
| 160 | k.rc(C, &[&[BSpace], &[], &[BSpace], &[], &[BSpace], &[], &[X]]); |
| 161 | } |
| 162 | |
| 163 | #[test] |
| 164 | fn test_sequence_unicode_trigger() { |
nothing calls this directly
no test coverage detected