55
66from pulp_python .tests .functional .constants import (
77 PYPI_SERIAL_CONSTANT ,
8- PYTHON_EGG_FILENAME ,
9- PYTHON_EGG_SHA256 ,
10- PYTHON_EGG_URL ,
118 PYTHON_SM_FIXTURE_CHECKSUMS ,
129 PYTHON_SM_FIXTURE_RELEASES ,
1310 PYTHON_SM_PROJECT_SPECIFIER ,
14- PYTHON_WHEEL_FILENAME ,
15- PYTHON_WHEEL_METADATA_SHA256 ,
16- PYTHON_WHEEL_SHA256 ,
17- PYTHON_WHEEL_URL ,
18- PYTHON_XS_FIXTURE_CHECKSUMS ,
11+ TWINE_EGG_FILENAME ,
12+ TWINE_EGG_REQUIRES_PYTHON ,
13+ TWINE_EGG_SHA256 ,
14+ TWINE_EGG_SIZE ,
15+ TWINE_EGG_URL ,
16+ TWINE_FIXTURE_CHECKSUMS ,
17+ TWINE_FIXTURE_METADATA_SHA256 ,
18+ TWINE_FIXTURE_REQUIRES_PYTHON ,
19+ TWINE_WHEEL_FILENAME ,
20+ TWINE_WHEEL_METADATA_SHA256 ,
21+ TWINE_WHEEL_REQUIRES_PYTHON ,
22+ TWINE_WHEEL_SHA256 ,
23+ TWINE_WHEEL_SIZE ,
24+ TWINE_WHEEL_URL ,
1925)
2026from pulp_python .tests .functional .utils import ensure_simple
2127
@@ -55,30 +61,27 @@ def test_simple_html_detail_api(
5561 python_distribution_factory ,
5662 python_repo_factory ,
5763):
58- content_1 = python_content_factory (PYTHON_WHEEL_FILENAME , url = PYTHON_WHEEL_URL )
59- content_2 = python_content_factory (PYTHON_EGG_FILENAME , url = PYTHON_EGG_URL )
64+ content_1 = python_content_factory (TWINE_WHEEL_FILENAME , url = TWINE_WHEEL_URL )
65+ content_2 = python_content_factory (TWINE_EGG_FILENAME , url = TWINE_EGG_URL )
6066 body = {"add_content_units" : [content_1 .pulp_href , content_2 .pulp_href ]}
6167
6268 repo = python_repo_factory ()
6369 monitor_task (python_bindings .RepositoriesPythonApi .modify (repo .pulp_href , body ).task )
6470 distro = python_distribution_factory (repository = repo )
6571
66- url = f'{ urljoin (distro .base_url , "simple/" )} shelf-reader '
72+ url = f'{ urljoin (distro .base_url , "simple/" )} twine '
6773 headers = {"Accept" : PYPI_SIMPLE_V1_HTML }
6874
6975 response = requests .get (url , headers = headers )
7076 assert response .headers ["Content-Type" ] == PYPI_SIMPLE_V1_HTML
7177 assert response .headers ["X-PyPI-Last-Serial" ] == str (PYPI_SERIAL_CONSTANT )
7278
73- metadata_sha_digests = {
74- PYTHON_WHEEL_FILENAME : PYTHON_WHEEL_METADATA_SHA256 ,
75- PYTHON_EGG_FILENAME : None , # egg files should not have metadata
76- }
7779 proper , msgs = ensure_simple (
7880 urljoin (distro .base_url , "simple/" ),
79- {"shelf-reader" : [PYTHON_WHEEL_FILENAME , PYTHON_EGG_FILENAME ]},
80- sha_digests = PYTHON_XS_FIXTURE_CHECKSUMS ,
81- metadata_sha_digests = metadata_sha_digests ,
81+ {"twine" : [TWINE_WHEEL_FILENAME , TWINE_EGG_FILENAME ]},
82+ sha_digests = TWINE_FIXTURE_CHECKSUMS ,
83+ metadata_sha_digests = TWINE_FIXTURE_METADATA_SHA256 ,
84+ requires_python = TWINE_FIXTURE_REQUIRES_PYTHON ,
8285 )
8386 assert proper , f"Simple API validation failed: { msgs } "
8487
@@ -114,15 +117,15 @@ def test_simple_json_detail_api(
114117 python_distribution_factory ,
115118 python_repo_factory ,
116119):
117- content_1 = python_content_factory (PYTHON_WHEEL_FILENAME , url = PYTHON_WHEEL_URL )
118- content_2 = python_content_factory (PYTHON_EGG_FILENAME , url = PYTHON_EGG_URL )
120+ content_1 = python_content_factory (TWINE_WHEEL_FILENAME , url = TWINE_WHEEL_URL )
121+ content_2 = python_content_factory (TWINE_EGG_FILENAME , url = TWINE_EGG_URL )
119122 body = {"add_content_units" : [content_1 .pulp_href , content_2 .pulp_href ]}
120123
121124 repo = python_repo_factory ()
122125 monitor_task (python_bindings .RepositoriesPythonApi .modify (repo .pulp_href , body ).task )
123126 distro = python_distribution_factory (repository = repo )
124127
125- url = f'{ urljoin (distro .base_url , "simple/" )} shelf-reader '
128+ url = f'{ urljoin (distro .base_url , "simple/" )} twine '
126129 headers = {"Accept" : PYPI_SIMPLE_V1_JSON }
127130
128131 response = requests .get (url , headers = headers )
@@ -131,29 +134,31 @@ def test_simple_json_detail_api(
131134
132135 data = response .json ()
133136 assert data ["meta" ] == {"api-version" : API_VERSION , "_last-serial" : PYPI_SERIAL_CONSTANT }
134- assert data ["name" ] == "shelf-reader "
137+ assert data ["name" ] == "twine "
135138 assert data ["files" ]
136- assert data ["versions" ] == ["0.1 " ]
139+ assert data ["versions" ] == ["5.1.0 " ]
137140
138141 # Check data of a wheel
139- file_whl = next ((i for i in data ["files" ] if i ["filename" ] == PYTHON_WHEEL_FILENAME ), None )
142+ file_whl = next ((i for i in data ["files" ] if i ["filename" ] == TWINE_WHEEL_FILENAME ), None )
140143 assert file_whl is not None , "wheel file not found"
141144 assert file_whl ["url" ]
142- assert file_whl ["hashes" ] == {"sha256" : PYTHON_WHEEL_SHA256 }
143- assert file_whl ["requires-python" ] is None
144- assert file_whl ["data-dist-info-metadata" ] == {"sha256" : PYTHON_WHEEL_METADATA_SHA256 }
145- assert file_whl ["core-metadata" ] == {"sha256" : PYTHON_WHEEL_METADATA_SHA256 }
146- assert file_whl ["size" ] == 22455
145+ assert file_whl ["hashes" ] == {"sha256" : TWINE_WHEEL_SHA256 }
146+ assert file_whl ["requires-python" ] == TWINE_WHEEL_REQUIRES_PYTHON
147+ assert file_whl ["data-dist-info-metadata" ] == {"sha256" : TWINE_WHEEL_METADATA_SHA256 }
148+ assert file_whl ["core-metadata" ] == {"sha256" : TWINE_WHEEL_METADATA_SHA256 }
149+ assert file_whl ["size" ] == TWINE_WHEEL_SIZE
147150 assert file_whl ["upload-time" ] is not None
151+ assert file_whl ["provenance" ] is None
152+
148153 # Check data of a tarball
149- file_tar = next ((i for i in data ["files" ] if i ["filename" ] == PYTHON_EGG_FILENAME ), None )
154+ file_tar = next ((i for i in data ["files" ] if i ["filename" ] == TWINE_EGG_FILENAME ), None )
150155 assert file_tar is not None , "tar file not found"
151156 assert file_tar ["url" ]
152- assert file_tar ["hashes" ] == {"sha256" : PYTHON_EGG_SHA256 }
153- assert file_tar ["requires-python" ] is None
157+ assert file_tar ["hashes" ] == {"sha256" : TWINE_EGG_SHA256 }
158+ assert file_tar ["requires-python" ] == TWINE_EGG_REQUIRES_PYTHON
154159 assert file_tar ["data-dist-info-metadata" ] is False
155160 assert file_tar ["core-metadata" ] is False
156- assert file_tar ["size" ] == 19097
161+ assert file_tar ["size" ] == TWINE_EGG_SIZE
157162 assert file_tar ["upload-time" ] is not None
158163 assert file_tar ["provenance" ] is None
159164
0 commit comments