def test_simple(self): parser = RequirementParser() r_requirements = [Requirement("numpy", [GEQ("1.3.0")])] requirements = parser.parse("numpy >= 1.3.0") self.assertEqual(r_requirements, list(requirements)) r_requirements = [Requirement("numpy", [GEQ("1.3.0"), LEQ("2.0.0")])] requirements = parser.parse("numpy >= 1.3.0, numpy <= 2.0.0") self.assertEqual(r_requirements, list(requirements)) r_requirements = [Requirement("numpy", [Equal("1.3.0")])] requirements = parser.parse("numpy == 1.3.0") self.assertEqual(r_requirements, list(requirements)) r_requirements = [Requirement("numpy", [Equal("1.3.0"), Equal("1.4.0")])] requirements = parser.parse("numpy == 1.3.0, numpy == 1.4.0") self.assertEqual(r_requirements, list(requirements)) self.assertTrue(requirements[0]._cannot_match) r_requirements = [Requirement("numpy", [Any()])] requirements = parser.parse("numpy") self.assertEqual(r_requirements, list(requirements))
def test_from_string(self): requirement_string = "numpy >= 1.3.0, numpy <= 2.0.0" parser = RequirementParser() numpy_requirement = list(parser.parse(requirement_string))[0] self.assertEqual(numpy_requirement, Requirement.from_string(requirement_string)) self.assertRaises(DepSolverError, lambda: Requirement.from_string("numpy <= 1.2.0, scipy >= 2.3.2"))
def test_from_package_string(self): R = Requirement.from_string r_requirement = R("numpy == 1.3.0") requirement = Requirement.from_package_string("numpy-1.3.0") self.assertEqual(requirement, r_requirement)