Beispiel #1
0
 def test_try_install_no_duplicate(self):
     dists_for_envs = [
         plan.SpecForEnv(env="_env_", spec="test2"),
         plan.SpecForEnv(env=None, spec="test3")
     ]
     plan.ensure_packge_not_duplicated_in_private_env_root(
         dists_for_envs, self.linked_in_root)
Beispiel #2
0
 def test_try_install_duplicate_package_in_root(self):
     dists_for_envs = [plan.SpecForEnv(env="_env_", spec="test1"),
                       plan.SpecForEnv(env=None, spec="something")]
     with pytest.raises(InstallError) as err:
         plan.ensure_packge_not_duplicated_in_private_env_root(
             dists_for_envs, self.linked_in_root)
         assert "Package test1 is already installed" in str(err)
         assert "Can't install in private environment _env_" in str(err)
Beispiel #3
0
 def test_try_install_duplicate_package_in_private_env(self):
     dists_for_envs = [plan.SpecForEnv(env="_env_", spec="test2"),
                       plan.SpecForEnv(env=None, spec="test3")]
     with patch.object(common, "prefix_if_in_private_env") as mock_prefix:
         mock_prefix.return_value = "some/prefix"
         with pytest.raises(InstallError) as err:
             plan.ensure_packge_not_duplicated_in_private_env_root(
                 dists_for_envs, self.linked_in_root)
             assert "Package test3 is already installed" in str(err)
             assert "private_env some/prefix" in str(err)
Beispiel #4
0
 def test_not_requires_private_env(self):
     with patch.object(plan, "not_requires_private_env") as not_requires:
         not_requires.return_value = True
         dists_for_envs = [plan.SpecForEnv(env=None, spec="test-spec"),
                           plan.SpecForEnv(env=None, spec="test-spec2")]
         specs_for_prefix = plan.determine_dists_per_prefix(
             self.res, "some/envs/prefix", self.res.index, "prefix", dists_for_envs, self.context)
     expected_output = [plan.SpecsForPrefix(
         prefix="some/envs/prefix", r=self.res, specs={"test-spec", "test-spec2"})]
     self.assertEquals(specs_for_prefix, expected_output)
Beispiel #5
0
 def test_determine_all_envs_with_channel_priority(self):
     self.res = generate_mocked_resolve([
         (None, "test-spec", "defaults", "5"),
         ("ranenv", "test-spec", "rando_chnl", "1"),
         ("test1", "test-spec2", "defaults", "1")
     ])
     prioritized_channel_map = prioritize_channels(tuple(["rando_chnl", "defaults"]))
     specs_for_envs_w_channel_priority = plan.determine_all_envs(
         self.res, self.specs, prioritized_channel_map)
     expected_output = (plan.SpecForEnv(env="ranenv", spec="test-spec"),
                        plan.SpecForEnv(env="test1", spec="test-spec2"))
     self.assertEquals(specs_for_envs_w_channel_priority, expected_output)
Beispiel #6
0
 def test_determine_dists_per_prefix(self, not_requires):
     with patch.object(plan, "get_resolve_object") as gen_resolve_object_mock:
         gen_resolve_object_mock.return_value = self.res
         dists_for_envs = [plan.SpecForEnv(env=None, spec="test-spec"),
                           plan.SpecForEnv(env=None, spec="test-spec2"),
                           plan.SpecForEnv(env="ranenv", spec="test")]
         specs_for_prefix = plan.determine_dists_per_prefix(
             self.res, "some/prefix", self.res.index, ["ranenv", None], dists_for_envs, self.context)
         expected_output = [
             plan.SpecsForPrefix(prefix="some/prefix/envs/_ranenv_",
                                 r=gen_resolve_object_mock(),
                                 specs={"test"}),
             plan.SpecsForPrefix(prefix="some/prefix", r=self.res,
                                 specs=IndexedSet(("test-spec", "test-spec2")))
         ]
     self.assertEquals(expected_output, specs_for_prefix)
Beispiel #7
0
 def test_determine_all_envs(self):
     specs_for_envs = plan.determine_all_envs(self.res, self.specs)
     expected_output = (plan.SpecForEnv(env=None, spec="test-spec"),
                        plan.SpecForEnv(env="test1", spec="test-spec2"))
     self.assertEquals(specs_for_envs, expected_output)