57 lines
1.2 KiB
Rust
57 lines
1.2 KiB
Rust
|
use modules::terminal::winapi_terminal::WinApiTerminal;
|
||
|
use modules::terminal::ansi_terminal::AnsiTerminal;
|
||
|
|
||
|
use modules::terminal::ITerminal;
|
||
|
|
||
|
use Screen;
|
||
|
|
||
|
/* ======================== WinApi =========================== */
|
||
|
#[cfg(windows)]
|
||
|
mod winapi_tests {
|
||
|
use super::*;
|
||
|
|
||
|
#[test]
|
||
|
fn resize_winapi()
|
||
|
{
|
||
|
let screen = Screen::default();
|
||
|
let terminal = WinApiTerminal::new();
|
||
|
|
||
|
terminal.set_size(10, 10, &screen.stdout);
|
||
|
|
||
|
let (x, y) = terminal.terminal_size(&screen.stdout);
|
||
|
|
||
|
assert_eq!(x, 10);
|
||
|
assert_eq!(y, 10);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/* ======================== ANSI =========================== */
|
||
|
#[test]
|
||
|
fn resize_ansi()
|
||
|
{
|
||
|
if try_enable_ansi() {
|
||
|
let screen = Screen::default();
|
||
|
let terminal = WinApiTerminal::new();
|
||
|
|
||
|
terminal.set_size(10,10, &screen.stdout);
|
||
|
|
||
|
let (x, y) = terminal.terminal_size(&screen.stdout);
|
||
|
|
||
|
assert_eq!(x, 10);
|
||
|
assert_eq!(y, 10);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
fn try_enable_ansi() -> bool
|
||
|
{
|
||
|
if cfg!(target_os = "windows") {
|
||
|
#[cfg(windows)]
|
||
|
use kernel::windows_kernel::ansi_support::try_enable_ansi_support;
|
||
|
|
||
|
if !try_enable_ansi_support()
|
||
|
{ return false; }
|
||
|
}
|
||
|
|
||
|
return true;
|
||
|
}
|