starship/tests/testsuite/conda.rs

51 lines
1.3 KiB
Rust

use ansi_term::Color;
use std::io;
use crate::common;
use crate::common::TestCommand;
#[test]
fn not_in_env() -> io::Result<()> {
let output = common::render_module("conda")
.env_clear()
.env("PATH", env!("PATH"))
.use_config("".parse().unwrap())
.output()?;
let expected = "";
let actual = String::from_utf8(output.stdout).unwrap();
assert_eq!(expected, actual);
Ok(())
}
#[test]
fn env_set() -> io::Result<()> {
let output = common::render_module("conda")
.env_clear()
.env("CONDA_DEFAULT_ENV", "astronauts")
.use_config("".parse().unwrap())
.output()?;
let expected = format!("via {} ", Color::Green.bold().paint("C astronauts"));
let actual = String::from_utf8(output.stdout).unwrap();
assert_eq!(expected, actual);
Ok(())
}
#[test]
fn truncate() -> io::Result<()> {
let output = common::render_module("conda")
.env_clear()
.use_config("".parse().unwrap())
.env("CONDA_DEFAULT_ENV", "/some/really/long/and/really/annoying/path/that/shouldnt/be/displayed/fully/conda/my_env")
.output()?;
let expected = format!("via {} ", Color::Green.bold().paint("C my_env"));
let actual = String::from_utf8(output.stdout).unwrap();
assert_eq!(expected, actual);
Ok(())
}