def prereleases_versions_test(self): output = TestBufferConanOutput() result = satisfying(["1.1.1", "1.1.11", "1.1.21", "1.1.111"], "", output) self.assertEqual(result, "1.1.111") # prereleases are ordered result = satisfying(["1.1.1-a.1", "1.1.1-a.11", "1.1.1-a.111", "1.1.1-a.21"], "~1.1.1-a", output) self.assertEqual(result, "1.1.1-a.111") result = satisfying(["1.1.1", "1.1.1-11", "1.1.1-111", "1.1.1-21"], "", output) self.assertEqual(result, "1.1.1")
def basic_test(self): output = TestBufferConanOutput() result = satisfying(["1.1", "1.2", "1.3", "2.1"], "", output) self.assertEqual(result, "2.1") result = satisfying(["1.1", "1.2", "1.3", "2.1"], "1", output) self.assertEqual(result, "1.3") result = satisfying(["1.1", "1.2", "1.3", "2.1"], "1.1", output) self.assertEqual(result, "1.1") result = satisfying(["1.1", "1.2", "1.3", "2.1"], ">1.1", output) self.assertEqual(result, "2.1") result = satisfying(["1.1", "1.2", "1.3", "2.1"], "<1.3", output) self.assertEqual(result, "1.2") result = satisfying(["1.1", "1.2", "1.3", "2.1"], "<=1.3", output) self.assertEqual(result, "1.3") result = satisfying(["1.1", "1.2", "1.3", "2.1"], ">1.1,<2.1", output) self.assertEqual(result, "1.3") result = satisfying(["1.1.1", "1.1.2", "1.2.1", "1.3", "2.1"], "<1.2", output) self.assertEqual(result, "1.1.2") result = satisfying(["1.1.1", "1.1.2", "1.2.1", "1.3", "2.1"], "<1.2.1", output) self.assertEqual(result, "1.1.2") result = satisfying(["1.1.1", "1.1.2", "1.2.1", "1.3", "2.1"], "<=1.2.1", output) self.assertEqual(result, "1.2.1") result = satisfying(["1.6.1"], ">1.5.0,<1.6.8", output) self.assertEqual(result, "1.6.1") result = satisfying(["1.1.1", "1.1.2", "1.2", "1.2.1", "1.3", "2.1"], "<=1.2", output) self.assertEqual(result, "1.2.1") result = satisfying(["1.1.1", "1.1.2", "1.2", "1.2.1", "1.3", "2.1"], "<1.3", output) self.assertEqual(result, "1.2.1") result = satisfying(["1.a.1", "master", "X.2", "1.2.1", "1.3", "2.1"], "1.3", output) self.assertIn("Version 'master' is not semver", output) self.assertEqual(result, "1.3") result = satisfying(["1.1.1", "1.1.2", "1.2", "1.2.1", "1.3", "2.1"], "1.8||1.3", output) self.assertEqual(result, "1.3") result = satisfying(["1.3", "1.3.1"], "<1.3", output) self.assertEqual(result, None) result = satisfying(["1.3.0", "1.3.1"], "<1.3", output) self.assertEqual(result, None) result = satisfying(["1.3", "1.3.1"], "<=1.3", output) self.assertEqual(result, "1.3.1") result = satisfying(["1.3.0", "1.3.1"], "<=1.3", output) self.assertEqual(result, "1.3.1") # >2 means >=3.0.0-0 result = satisfying(["2.1"], ">2", output) self.assertEqual(result, None) result = satisfying(["2.1"], ">2.0", output) self.assertEqual(result, "2.1") # >2.1 means >=2.2.0-0 result = satisfying(["2.1.1"], ">2.1", output) self.assertEqual(result, None) result = satisfying(["2.1.1"], ">2.1.0", output) self.assertEqual(result, "2.1.1")
def basic_test(self): output = TestBufferConanOutput() result = satisfying(["1.1", "1.2", "1.3", "2.1"], "", output) self.assertEqual(result, "2.1") result = satisfying(["1.1", "1.2", "1.3", "2.1"], "1", output) self.assertEqual(result, "1.3") result = satisfying(["1.1", "1.2", "1.3", "2.1"], "1.1", output) self.assertEqual(result, "1.1") result = satisfying(["1.1", "1.2", "1.3", "2.1"], ">1.1", output) self.assertEqual(result, "2.1") result = satisfying(["1.1", "1.2", "1.3", "2.1"], "<1.3", output) self.assertEqual(result, "1.2") result = satisfying(["1.1", "1.2", "1.3", "2.1"], "<=1.3", output) self.assertEqual(result, "1.3") result = satisfying(["1.1", "1.2", "1.3", "2.1"], ">1.1,<2.1", output) self.assertEqual(result, "1.3") result = satisfying(["1.1.1", "1.1.2", "1.2.1", "1.3", "2.1"], "<1.2", output) self.assertEqual(result, "1.1.2") result = satisfying(["1.1.1", "1.1.2", "1.2.1", "1.3", "2.1"], "<1.2.1", output) self.assertEqual(result, "1.1.2") result = satisfying(["1.1.1", "1.1.2", "1.2.1", "1.3", "2.1"], "<=1.2.1", output) self.assertEqual(result, "1.2.1") result = satisfying(["1.6.1"], ">1.5.0,<1.6.8", output) self.assertEqual(result, "1.6.1") result = satisfying(["1.1.1", "1.1.2", "1.2", "1.2.1", "1.3", "2.1"], "<=1.2", output) self.assertEqual(result, "1.2") result = satisfying(["1.1.1", "1.1.2", "1.2", "1.2.1", "1.3", "2.1"], "<1.3", output) self.assertEqual(result, "1.2.1") result = satisfying(["1.a.1", "master", "X.2", "1.2.1", "1.3", "2.1"], "1.3", output) self.assertIn("Version 'master' is not semver", output) self.assertEqual(result, "1.3") result = satisfying(["1.1.1", "1.1.2", "1.2", "1.2.1", "1.3", "2.1"], "1.8||1.3", output) self.assertEqual(result, "1.3") result = satisfying(["1.3", "1.3.1"], "<1.3", output) self.assertEqual(result, None) result = satisfying(["1.3.0", "1.3.1"], "<1.3", output) self.assertEqual(result, None) result = satisfying(["1.3", "1.3.1"], "<=1.3", output) self.assertEqual(result, "1.3") result = satisfying(["1.3.0", "1.3.1"], "<=1.3", output) self.assertEqual(result, "1.3.0") # >2 means >=3.0.0-0 result = satisfying(["2.1"], ">2", output) self.assertEqual(result, None) result = satisfying(["2.1"], ">2.0", output) self.assertEqual(result, "2.1") # >2.1 means >=2.2.0-0 result = satisfying(["2.1.1"], ">2.1", output) self.assertEqual(result, None) result = satisfying(["2.1.1"], ">2.1.0", output) self.assertEqual(result, "2.1.1")