@@ -45,7 +45,7 @@ def test_cli_with_default_urls():
4545@pytest .mark .online
4646def test_pdt_output ():
4747 requirements_file = test_env .get_test_loc ("pdt-requirements.txt" )
48- expected_file = test_env .get_test_loc ("pdt-expected.json" , must_exist = False )
48+ expected_file = test_env .get_test_loc ("pdt-requirements.txt- expected.json" , must_exist = False )
4949 extra_options = []
5050 check_requirements_resolution (
5151 requirements_file = requirements_file ,
@@ -58,8 +58,10 @@ def test_pdt_output():
5858
5959@pytest .mark .online
6060def test_pdt_output_with_pinned_requirements ():
61- requirements_file = test_env .get_test_loc ("pinned-requirements.txt" )
62- expected_file = test_env .get_test_loc ("pinned-requirements-pdt-expected.json" , must_exist = False )
61+ requirements_file = test_env .get_test_loc ("pinned-pdt-requirements.txt" )
62+ expected_file = test_env .get_test_loc (
63+ "pinned-pdt-requirements.txt-expected.json" , must_exist = False
64+ )
6365 extra_options = []
6466 check_requirements_resolution (
6567 requirements_file = requirements_file ,
@@ -73,7 +75,7 @@ def test_pdt_output_with_pinned_requirements():
7375@pytest .mark .online
7476def test_pdt_output_with_frozen_requirements ():
7577 requirements_file = test_env .get_test_loc ("frozen-requirements.txt" )
76- expected_file = test_env .get_test_loc ("frozen-requirements-pdt -expected.json" , must_exist = False )
78+ expected_file = test_env .get_test_loc ("frozen-requirements.txt -expected.json" , must_exist = False )
7779 extra_options = []
7880 check_requirements_resolution (
7981 requirements_file = requirements_file ,
@@ -137,6 +139,27 @@ def test_cli_with_multiple_index_url_and_tilde_req():
137139 )
138140
139141
142+ @pytest .mark .online
143+ def test_cli_with_environment_marker_and_complex_ranges ():
144+ requirements_file = test_env .get_test_loc ("environment-marker-test-requirements.txt" )
145+ expected_file = test_env .get_test_loc (
146+ "environment-marker-test-requirements.txt-expected.json" , must_exist = False
147+ )
148+ extra_options = [
149+ "--operating-system" ,
150+ "linux" ,
151+ "--python-version" ,
152+ "37" ,
153+ ]
154+ check_requirements_resolution (
155+ requirements_file = requirements_file ,
156+ expected_file = expected_file ,
157+ extra_options = extra_options ,
158+ pdt_output = True ,
159+ regen = REGEN_TEST_FIXTURES ,
160+ )
161+
162+
140163@pytest .mark .online
141164def test_cli_with_multiple_index_url_and_tilde_req_with_max_rounds ():
142165 expected_file = test_env .get_test_loc ("tilde_req-expected.json" , must_exist = False )
@@ -345,13 +368,23 @@ def test_get_requirements_from_direct_dependencies():
345368 )
346369 ]
347370
348- requirements = [str (r ) for r in get_requirements_from_direct_dependencies (direct_dependencies )]
371+ requirements = [
372+ str (r )
373+ for r in get_requirements_from_direct_dependencies (
374+ direct_dependencies = direct_dependencies , environment_marker = {}
375+ )
376+ ]
349377
350378 assert requirements == ["django>=1.11.11" ]
351379
352380
353381def test_get_requirements_from_direct_dependencies_with_empty_list ():
354- assert list (get_requirements_from_direct_dependencies (direct_dependencies = [])) == []
382+ assert (
383+ list (
384+ get_requirements_from_direct_dependencies (direct_dependencies = [], environment_marker = {})
385+ )
386+ == []
387+ )
355388
356389
357390def test_get_requirements_from_direct_dependencies_with_editable_requirements ():
@@ -378,6 +411,11 @@ def test_get_requirements_from_direct_dependencies_with_editable_requirements():
378411 )
379412 ]
380413
381- requirements = [str (r ) for r in get_requirements_from_direct_dependencies (direct_dependencies )]
414+ requirements = [
415+ str (r )
416+ for r in get_requirements_from_direct_dependencies (
417+ direct_dependencies = direct_dependencies , environment_marker = {}
418+ )
419+ ]
382420
383421 assert requirements == []
0 commit comments