#[test]
fn show_generated_struct() {
use crate::Pane;
let _pane = Pane {
..Default::default()
};
}
#[test]
fn bitflags() {
use crate::{PANE_ALL, PANE_NONE};
let bitflags =
0b_11111111111111111_1111111111111111;
assert_eq!(bitflags, PANE_ALL);
assert_eq!(0, PANE_NONE);
}
#[test]
fn bool() {
let a = "1".parse::<usize>().unwrap();
let b = if a == 1 { true } else { false };
assert_eq!(b, true);
}
#[test]
fn parse() {
use crate::Pane;
use crate::PANE_ALL;
let pane_vec = vec![
#[cfg(feature = "tmux_1_6")]
"1",
#[cfg(feature = "tmux_2_6")]
"0",
#[cfg(feature = "tmux_2_6")]
"1",
#[cfg(feature = "tmux_2_6")]
"1",
#[cfg(feature = "tmux_2_6")]
"1",
#[cfg(feature = "tmux_2_0")]
"45",
#[cfg(feature = "tmux_1_8")]
"bash",
#[cfg(feature = "tmux_1_7")]
"/home/user",
#[cfg(feature = "tmux_1_6")]
"0",
#[cfg(feature = "tmux_2_0")]
"",
#[cfg(feature = "tmux_2_6")]
"1",
#[cfg(feature = "tmux_1_6")]
"64",
#[cfg(feature = "tmux_1_6")]
"%0",
#[cfg(feature = "tmux_1_8")]
"0",
#[cfg(feature = "tmux_1_7")]
"0",
#[cfg(feature = "tmux_2_0")]
"0",
#[cfg(feature = "tmux_2_0")]
"0",
#[cfg(feature = "tmux_3_0")]
"0",
#[cfg(feature = "tmux_3_0")]
"0",
#[cfg(feature = "tmux_2_5")]
"",
#[cfg(feature = "tmux_3_1")]
"",
#[cfg(feature = "tmux_1_6")]
"1945",
#[cfg(feature = "tmux_2_6")]
"0",
#[cfg(feature = "tmux_2_0")]
"176",
#[cfg(feature = "tmux_2_5")]
"",
#[cfg(feature = "tmux_1_6")]
"",
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_2_0")))]
"",
#[cfg(feature = "tmux_1_9")]
"0",
#[cfg(feature = "tmux_1_8")]
"",
#[cfg(feature = "tmux_1_6")]
"title",
#[cfg(feature = "tmux_2_0")]
"0",
#[cfg(feature = "tmux_1_6")]
"/dev/pts/2",
#[cfg(feature = "tmux_1_6")]
"177",
];
let pane_str = pane_vec.join("'");
let pane = Pane::from_str(&pane_str, PANE_ALL).unwrap();
#[cfg(feature = "tmux_1_7")]
assert_eq!(pane.current_path, Some("/home/user".to_string()));
#[cfg(feature = "tmux_1_6")]
assert_eq!(pane.tty, Some("/dev/pts/2".to_string()));
}
#[test]
fn bitflag_operations() {
let a = 0b001;
let b = 0b010;
let c = 0b100;
let d = a | b;
assert!(d & a == a);
assert!(d & c != c);
}
#[test]
fn parse2() {
use crate::Pane;
use crate::PANE_ALL;
let origin = Pane {
#[cfg(feature = "tmux_1_6")]
active: Some(true),
#[cfg(feature = "tmux_2_6")]
at_bottom: Some(true),
#[cfg(feature = "tmux_2_6")]
at_left: Some(true),
#[cfg(feature = "tmux_2_6")]
at_right: Some(true),
#[cfg(feature = "tmux_2_6")]
at_top: Some(true),
#[cfg(feature = "tmux_2_0")]
bottom: Some(63),
#[cfg(feature = "tmux_1_8")]
current_command: Some("bash".to_string()),
#[cfg(feature = "tmux_1_7")]
current_path: Some("/home/user".to_string()),
#[cfg(feature = "tmux_1_6")]
dead: Some(false),
#[cfg(feature = "tmux_2_0")]
dead_status: None,
#[cfg(feature = "tmux_2_6")]
format: Some(true),
#[cfg(feature = "tmux_1_6")]
height: Some(64),
#[cfg(feature = "tmux_1_6")]
id: Some(0),
#[cfg(feature = "tmux_1_8")]
in_mode: Some(false),
#[cfg(feature = "tmux_1_7")]
index: Some(0),
#[cfg(feature = "tmux_2_0")]
input_off: Some(false),
#[cfg(feature = "tmux_2_0")]
left: Some(0),
#[cfg(feature = "tmux_3_0")]
marked: Some(false),
#[cfg(feature = "tmux_3_0")]
marked_set: Some(false),
#[cfg(feature = "tmux_2_5")]
mode: None,
#[cfg(feature = "tmux_3_1")]
path: None,
#[cfg(feature = "tmux_1_6")]
pid: Some(1945),
#[cfg(feature = "tmux_2_6")]
pipe: Some(false),
#[cfg(feature = "tmux_2_0")]
right: Some(176),
#[cfg(feature = "tmux_2_5")]
search_string: None,
#[cfg(feature = "tmux_1_6")]
start_command: None,
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_2_0")))]
start_path: None,
#[cfg(feature = "tmux_1_9")]
synchronized: Some(false),
#[cfg(feature = "tmux_1_8")]
tabs: None,
#[cfg(feature = "tmux_1_6")]
title: Some("title".to_string()),
#[cfg(feature = "tmux_2_0")]
top: Some(0),
#[cfg(feature = "tmux_1_6")]
tty: Some("/dev/pts/2".to_string()),
#[cfg(feature = "tmux_1_6")]
width: Some(177),
};
let pane_vec = vec![
#[cfg(feature = "tmux_1_6")]
"1",
#[cfg(feature = "tmux_2_6")]
"1",
#[cfg(feature = "tmux_2_6")]
"1",
#[cfg(feature = "tmux_2_6")]
"1",
#[cfg(feature = "tmux_2_6")]
"1",
#[cfg(feature = "tmux_2_0")]
"63",
#[cfg(feature = "tmux_1_8")]
"bash",
#[cfg(feature = "tmux_1_7")]
"/home/user",
#[cfg(feature = "tmux_1_6")]
"0",
#[cfg(feature = "tmux_2_0")]
"",
#[cfg(feature = "tmux_2_6")]
"1",
#[cfg(feature = "tmux_1_6")]
"64",
#[cfg(feature = "tmux_1_6")]
"%0",
#[cfg(feature = "tmux_1_8")]
"0",
#[cfg(feature = "tmux_1_7")]
"0",
#[cfg(feature = "tmux_2_0")]
"0",
#[cfg(feature = "tmux_2_0")]
"0",
#[cfg(feature = "tmux_3_0")]
"0",
#[cfg(feature = "tmux_3_0")]
"0",
#[cfg(feature = "tmux_2_5")]
"",
#[cfg(feature = "tmux_3_1")]
"",
#[cfg(feature = "tmux_1_6")]
"1945",
#[cfg(feature = "tmux_2_6")]
"0",
#[cfg(feature = "tmux_2_0")]
"176",
#[cfg(feature = "tmux_2_5")]
"",
#[cfg(feature = "tmux_1_6")]
"",
#[cfg(all(feature = "tmux_1_6", not(feature = "tmux_2_0")))]
"",
#[cfg(feature = "tmux_1_9")]
"0",
#[cfg(feature = "tmux_1_8")]
"",
#[cfg(feature = "tmux_1_6")]
"title",
#[cfg(feature = "tmux_2_0")]
"0",
#[cfg(feature = "tmux_1_6")]
"/dev/pts/2",
#[cfg(feature = "tmux_1_6")]
"177",
];
let pane_str = pane_vec.join("'");
let pane = Pane::from_str(&pane_str, PANE_ALL).unwrap();
assert_eq!(origin, pane);
}