mirror of
https://github.com/uutils/coreutils.git
synced 2026-06-10 15:48:22 -07:00
dircolors: turn integration test into unit test
This commit is contained in:
committed by
Sylvestre Ledru
parent
f6bf222a7a
commit
f1073d7c9e
@@ -527,7 +527,7 @@ fn generate_dircolors_config() -> String {
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::escape;
|
||||
use super::*;
|
||||
|
||||
#[test]
|
||||
fn test_escape() {
|
||||
@@ -536,4 +536,48 @@ mod tests {
|
||||
assert_eq!("\\:", escape(":"));
|
||||
assert_eq!("\\:", escape("\\:"));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_guess_syntax() {
|
||||
use std::env;
|
||||
let last = env::var("SHELL");
|
||||
unsafe {
|
||||
env::set_var("SHELL", "/path/csh");
|
||||
}
|
||||
assert_eq!(OutputFmt::CShell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "csh");
|
||||
}
|
||||
assert_eq!(OutputFmt::CShell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "/path/bash");
|
||||
}
|
||||
assert_eq!(OutputFmt::Shell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "bash");
|
||||
}
|
||||
assert_eq!(OutputFmt::Shell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "/asd/bar");
|
||||
}
|
||||
assert_eq!(OutputFmt::Shell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "foo");
|
||||
}
|
||||
assert_eq!(OutputFmt::Shell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "");
|
||||
}
|
||||
assert_eq!(OutputFmt::Unknown, guess_syntax());
|
||||
unsafe {
|
||||
env::remove_var("SHELL");
|
||||
}
|
||||
assert_eq!(OutputFmt::Unknown, guess_syntax());
|
||||
|
||||
if let Ok(s) = last {
|
||||
unsafe {
|
||||
env::set_var("SHELL", s);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
use uutests::at_and_ucmd;
|
||||
use uutests::new_ucmd;
|
||||
|
||||
use dircolors::{OutputFmt, StrUtils, guess_syntax};
|
||||
use dircolors::StrUtils;
|
||||
|
||||
#[test]
|
||||
#[cfg(target_os = "linux")]
|
||||
@@ -30,50 +30,6 @@ fn test_invalid_arg() {
|
||||
new_ucmd!().arg("--definitely-invalid").fails_with_code(1);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_shell_syntax() {
|
||||
use std::env;
|
||||
let last = env::var("SHELL");
|
||||
unsafe {
|
||||
env::set_var("SHELL", "/path/csh");
|
||||
}
|
||||
assert_eq!(OutputFmt::CShell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "csh");
|
||||
}
|
||||
assert_eq!(OutputFmt::CShell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "/path/bash");
|
||||
}
|
||||
assert_eq!(OutputFmt::Shell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "bash");
|
||||
}
|
||||
assert_eq!(OutputFmt::Shell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "/asd/bar");
|
||||
}
|
||||
assert_eq!(OutputFmt::Shell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "foo");
|
||||
}
|
||||
assert_eq!(OutputFmt::Shell, guess_syntax());
|
||||
unsafe {
|
||||
env::set_var("SHELL", "");
|
||||
}
|
||||
assert_eq!(OutputFmt::Unknown, guess_syntax());
|
||||
unsafe {
|
||||
env::remove_var("SHELL");
|
||||
}
|
||||
assert_eq!(OutputFmt::Unknown, guess_syntax());
|
||||
|
||||
if let Ok(s) = last {
|
||||
unsafe {
|
||||
env::set_var("SHELL", s);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_str_utils() {
|
||||
let s = " asd#zcv #hk\t\n ";
|
||||
|
||||
Reference in New Issue
Block a user