Skip to content

Commit

Permalink
fix: Activated environment name (#3670)
Browse files Browse the repository at this point in the history
Signed-off-by: Julien Jerphanion <[email protected]>
  • Loading branch information
jjerphan authored Dec 9, 2024
1 parent 4c5c1d7 commit 53ba5c0
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 3 deletions.
6 changes: 3 additions & 3 deletions libmamba/src/core/activation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -56,10 +56,10 @@ namespace mamba
{
return "base";
}
// if ../miniconda3/envs/my_super_env, return `my_super_env`, else path
if (prefix.parent_path().stem() == "envs")
// if ../miniconda3/envs/my_super.env, return `my_super.env`, else path
if (prefix.parent_path().filename() == "envs")
{
return prefix.stem().string();
return prefix.filename().string();
}
else
{
Expand Down
18 changes: 18 additions & 0 deletions libmamba/tests/src/core/test_activation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,23 @@ namespace mamba
// std::endl; std::cout << a.activate("/home/wolfv/miniconda3/", false) <<
// std::endl;
}

TEST_CASE("Activator::get_default_env")
{
Context ctx;
ctx.prefix_params.root_prefix = "/home/user/miniforge";
PosixActivator a(ctx);
REQUIRE(a.get_default_env("/home/user/miniforge") == "base");
REQUIRE(a.get_default_env("/home/user/miniforge/envs/env") == "env");
REQUIRE(a.get_default_env("/home/user/miniforge/envs/an.env") == "an.env");
REQUIRE(a.get_default_env("/home/user/miniforge/envs/an-oth.er") == "an-oth.er");
REQUIRE(a.get_default_env("/opt/envs/yet.an-oth.er") == "yet.an-oth.er");

const fs::u8path& alternative_folder = "/opt/envs.d/env";
REQUIRE(a.get_default_env(alternative_folder) == alternative_folder);

const fs::u8path& alt_folder = "/home/user/some/env";
REQUIRE(a.get_default_env(alt_folder) == alt_folder);
}
}
} // namespace mamba

0 comments on commit 53ba5c0

Please sign in to comment.