MCPcopy Create free account
hub / github.com/dtormoen/tsk-tsk / test_project_env_vars

Function test_project_env_vars

src/docker/mod.rs:1608–1656  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1606
1607 #[tokio::test]
1608 async fn test_project_env_vars() {
1609 use crate::context::{EnvVar, SharedConfig, TskConfig};
1610 use std::collections::HashMap;
1611
1612 let mock_client = Arc::new(TrackedDockerClient::default());
1613
1614 // Create TskConfig with environment variables for the test project
1615 let mut project_configs = HashMap::new();
1616 project_configs.insert(
1617 "default".to_string(),
1618 SharedConfig {
1619 env: vec![
1620 EnvVar {
1621 name: "DATABASE_URL".to_string(),
1622 value: "postgres://tsk-proxy:5432/mydb".to_string(),
1623 },
1624 EnvVar {
1625 name: "DEBUG".to_string(),
1626 value: "true".to_string(),
1627 },
1628 ],
1629 ..Default::default()
1630 },
1631 );
1632 let tsk_config = TskConfig {
1633 project: project_configs,
1634 ..Default::default()
1635 };
1636
1637 let ctx = AppContext::builder().with_tsk_config(tsk_config).build();
1638 let manager = DockerManager::new(&ctx, mock_client.clone(), None);
1639
1640 let task = create_test_task(false);
1641 let agent = crate::agent::ClaudeAgent::with_tsk_env(ctx.tsk_env());
1642 let result = manager.run_task_container("tsk/base", &task, &agent).await;
1643
1644 assert!(result.is_ok());
1645
1646 let create_calls = mock_client.create_container_calls.lock().unwrap();
1647 let task_container_config = &create_calls[1].1;
1648 let env = task_container_config.env.as_ref().unwrap();
1649
1650 // Should have project env vars added
1651 assert!(
1652 env.iter()
1653 .any(|e| e == "DATABASE_URL=postgres://tsk-proxy:5432/mydb")
1654 );
1655 assert!(env.iter().any(|e| e == "DEBUG=true"));
1656 }
1657
1658 #[tokio::test]
1659 async fn test_python_stack_sets_pythonpath() {

Callers

nothing calls this directly

Calls 5

with_tsk_configMethod · 0.80
tsk_envMethod · 0.80
run_task_containerMethod · 0.80
create_test_taskFunction · 0.70
buildMethod · 0.45

Tested by

no test coverage detected