def test_environment_marker_extras(self, data): """ Test that the environment marker extras are used with non-wheel installs. """ reqset = RequirementSet() req = InstallRequirement.from_editable( data.packages.join("LocalEnvironMarker")) reqset.add_requirement(req) finder = PackageFinder([data.find_links], [], session=PipSession()) resolver = self._basic_resolver(finder) resolver.resolve(reqset) # This is hacky but does test both case in py2 and py3 if sys.version_info[:2] in ((2, 7), (3, 4)): assert reqset.has_requirement('simple') else: assert not reqset.has_requirement('simple')
def test_environment_marker_extras(self, data): """ Test that the environment marker extras are used with non-wheel installs. """ reqset = RequirementSet() req = InstallRequirement.from_editable( data.packages.join("LocalEnvironMarker")) reqset.add_requirement(req) finder = PackageFinder([data.find_links], [], session=PipSession()) resolver = self._basic_resolver(finder) resolver.resolve(reqset) # This is hacky but does test both case in py2 and py3 if sys.version_info[:2] in ((2, 7), (3, 4)): assert reqset.has_requirement('simple') else: assert not reqset.has_requirement('simple')
def test_exclusive_environment_markers(): """Make sure RequirementSet accepts several excluding env markers""" eq26 = InstallRequirement.from_line("Django>=1.6.10,<1.7 ; python_version == '2.6'") ne26 = InstallRequirement.from_line("Django>=1.6.10,<1.8 ; python_version != '2.6'") req_set = RequirementSet("", "", "", session=PipSession()) req_set.add_requirement(eq26) req_set.add_requirement(ne26) assert req_set.has_requirement("Django")
def test_exclusive_environment_markers(): """Make sure RequirementSet accepts several excluding env markers""" eq26 = InstallRequirement.from_line( "Django>=1.6.10,<1.7 ; python_version == '2.6'") ne26 = InstallRequirement.from_line( "Django>=1.6.10,<1.8 ; python_version != '2.6'") req_set = RequirementSet('', '', '', session=PipSession()) req_set.add_requirement(eq26) req_set.add_requirement(ne26) assert req_set.has_requirement('Django')