mirror of
https://github.com/starship/starship.git
synced 2024-12-04 22:32:33 +01:00
7c45f74d11
The user's config is automatically loaded in context.new_module. This change explicitly sets the empty config to avoid depending on the environment. Without this fix, the tests do not pass for users who have a custom symbol defined for conda. This prevents installing/upgrading from Arch Linux AUR.
51 lines
1.3 KiB
Rust
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(())
|
|
}
|