File: device.rs

package info (click to toggle)
rust-evdev 0.13.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 540 kB
  • sloc: makefile: 2
file content (25 lines) | stat: -rw-r--r-- 596 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#![cfg(feature = "device-test")]

mod common;

use common::{get_test_device, key_event};
use evdev::KeyCode;

#[test]
pub fn test_get_key_state() -> Result<(), Box<dyn std::error::Error>> {
    let (input, mut output) = get_test_device()?;

    output.emit(&[key_event(KeyCode::KEY_DOT, 1)])?;

    assert_eq!(1, input.get_key_state()?.iter().count());
    assert!(input
        .get_key_state()?
        .iter()
        .all(|e| e.code() == KeyCode::KEY_DOT.code()));

    output.emit(&[key_event(KeyCode::KEY_DOT, 0)])?;

    assert_eq!(0, input.get_key_state()?.iter().count());

    Ok(())
}