command_stream/commands/
env.rs1use crate::commands::CommandContext;
4use crate::utils::CommandResult;
5use std::env;
6
7pub async fn env(_ctx: CommandContext) -> CommandResult {
11 let mut output = String::new();
12
13 for (key, value) in env::vars() {
14 output.push_str(&format!("{}={}\n", key, value));
15 }
16
17 CommandResult::success(output)
18}
19
20#[cfg(test)]
21mod tests {
22 use super::*;
23
24 #[tokio::test]
25 async fn test_env() {
26 let ctx = CommandContext::new(vec![]);
27 let result = env(ctx).await;
28
29 assert!(result.is_success());
30 assert!(result.stdout.contains("PATH=") || result.stdout.contains("HOME="));
32 }
33}