class PrefixDatarUnitTests(TestCase): def setUp(self): tempdirdir = gettempdir() dirname = str(uuid4())[:8] self.prefix = join(tempdirdir, dirname) mkdir_p(self.prefix) assert isdir(self.prefix) mkdir_p(join(self.prefix, 'conda-meta')) activate_env_vars = join(self.prefix, PREFIX_STATE_FILE) with open(activate_env_vars, 'w') as f: f.write(ENV_VARS_FILE) self.pd = PrefixData(self.prefix) def tearDown(self): rm_rf(self.prefix) assert not lexists(self.prefix) def test_get_environment_env_vars(self): ex_env_vars = { "ENV_ONE": "one", "ENV_TWO": "you", "ENV_THREE": "me" } env_vars = self.pd.get_environment_env_vars() assert ex_env_vars == env_vars def test_set_unset_environment_env_vars(self): env_vars_one = { "ENV_ONE": "one", "ENV_TWO": "you", "ENV_THREE": "me", } env_vars_add = { "ENV_ONE": "one", "ENV_TWO": "you", "ENV_THREE": "me", "WOAH": "dude" } self.pd.set_environment_env_vars({"WOAH":"dude"}) env_vars = self.pd.get_environment_env_vars() assert env_vars_add == env_vars self.pd.unset_environment_env_vars(['WOAH']) env_vars = self.pd.get_environment_env_vars() assert env_vars_one == env_vars def test_set_unset_environment_env_vars_no_exist(self): env_vars_one = { "ENV_ONE": "one", "ENV_TWO": "you", "ENV_THREE": "me", } self.pd.unset_environment_env_vars(['WOAH']) env_vars = self.pd.get_environment_env_vars() assert env_vars_one == env_vars
def execute_unset(args, parser): prefix = get_prefix(args, search=False) or context.active_prefix pd = PrefixData(prefix) if not lexists(prefix): raise EnvironmentLocationNotFound(prefix) vars_to_unset = [_.strip() for _ in args.vars] pd.unset_environment_env_vars(vars_to_unset) if prefix == context.active_prefix: print("To make your changes take effect please reactivate your environment")