def test_whl_with_METADATA_no_marker_in_dependencies(self): # Wheel with simple dependencies without a marker. td = TestData('pyOpenSSL_19_0_0_whl/file/' + 'pyOpenSSL-19.0.0-py2.py3-none-any.whl') wheel = whl.Wheel(td) self.assertEqual(set(wheel.dependencies()), set(['cryptography', 'six']))
def test_mock_whl_extras_3_0(self, *args): td = TestData('mock_whl/file/mock-2.0.0-py2.py3-none-any.whl') wheel = whl.Wheel(td) self.assertEqual(['docs', 'test'], wheel.extras()) self.assertEqual(set(wheel.dependencies(extra='docs')), set(['sphinx', 'Pygments', 'jinja2'])) self.assertEqual(set(wheel.dependencies(extra='test')), set(['unittest2']))
def test_google_cloud_language_whl_3_4(self, *args): td = TestData('google_cloud_language_whl/file/' + 'google_cloud_language-0.29.0-py2.py3-none-any.whl') wheel = whl.Wheel(td) expected_deps = [ 'google-gax', 'google-cloud-core', 'googleapis-common-protos[grpc]' ] self.assertEqual(set(wheel.dependencies()), set(expected_deps))
def test_whl_with_METADATA_file(self): td = TestData('futures_2_2_0_whl/file/futures-2.2.0-py2.py3-none-any.whl') wheel = whl.Wheel(td) self.assertEqual(wheel.name(), 'futures') self.assertEqual(wheel.distribution(), 'futures') self.assertEqual(wheel.version(), '2.2.0') self.assertEqual(set(wheel.dependencies()), set()) self.assertEqual('pypi__futures_2_2_0', wheel.repository_suffix())
def test_whl_with_METADATA_file_duplicate_extras(self): # Wheel with the same extra mentioned several times in METADATA. td = TestData('gunicorn_19_9_0_whl/file/' + 'gunicorn-19.9.0-py2.py3-none-any.whl') wheel = whl.Wheel(td) # Ensure that extras() does not return any duplicates. self.assertEqual(sorted(wheel.extras()), ['eventlet', 'gevent', 'gthread', 'tornado'])
def test_mock_whl(self, *args): td = TestData('mock_whl/file/mock-2.0.0-py2.py3-none-any.whl') wheel = whl.Wheel(td) self.assertEqual(wheel.name(), 'mock') self.assertEqual(wheel.distribution(), 'mock') self.assertEqual(wheel.version(), '2.0.0') self.assertEqual(set(wheel.dependencies()), set(['funcsigs', 'pbr', 'six'])) self.assertEqual('pypi__mock_2_0_0', wheel.repository_name())
def test_futures_whl(self): td = TestData('futures_3_1_1_whl/file/futures-3.1.1-py2-none-any.whl') wheel = whl.Wheel(td) self.assertEqual(wheel.name(), 'futures') self.assertEqual(wheel.distribution(), 'futures') self.assertEqual(wheel.version(), '3.1.1') self.assertEqual(set(wheel.dependencies()), set()) self.assertEqual('pypi__futures_3_1_1', wheel.repository_name()) self.assertEqual([], wheel.extras())
def test_grpc_whl(self): td = TestData('grpc_whl/file/grpcio-1.6.0-cp27-cp27m-manylinux1_i686.whl') wheel = whl.Wheel(td) self.assertEqual(wheel.name(), 'grpcio') self.assertEqual(wheel.distribution(), 'grpcio') self.assertEqual(wheel.version(), '1.6.0') self.assertEqual(set(wheel.dependencies()), set(['enum34', 'futures', 'protobuf', 'six'])) self.assertEqual('pypi__grpcio_1_6_0', wheel.repository_suffix()) self.assertEqual([], wheel.extras())
def test_whl_with_METADATA_file_extras(self): # Wheel which provides specific dependencies for extras. td = TestData( 'apispec_2_0_1_whl/file/apispec-2.0.1-py2.py3-none-any.whl') wheel = whl.Wheel(td) self.assertEqual(wheel.extras(), [ 'dev', 'lint', 'tests', 'validation', 'webframeworks-tests', 'yaml' ]) self.assertEqual(set(wheel.dependencies()), set()) self.assertEqual(set(wheel.dependencies(extra='yaml')), set(['PyYAML']))
def test_whl_with_METADATA_file_depencendy_with_multiple_extras(self): # Wheel with a dependency on a package with multiple extras specified. td = TestData('google_cloud_spanner_1_9_0_whl/file/' + 'google_cloud_spanner-1.9.0-py2.py3-none-any.whl') wheel = whl.Wheel(td) self.assertEqual( set(wheel.dependencies()), set([ 'google-api-core', 'google-api-core[grpcgcp]', 'google-api-core[grpc]', 'grpc-google-iam-v1', 'google-cloud-core' ]))
def test_google_cloud_language_whl(self, *args): td = TestData('google_cloud_language_whl/file/' + 'google_cloud_language-0.29.0-py2.py3-none-any.whl') wheel = whl.Wheel(td) self.assertEqual(wheel.name(), 'google-cloud-language') self.assertEqual(wheel.distribution(), 'google_cloud_language') self.assertEqual(wheel.version(), '0.29.0') expected_deps = ['google-gax', 'google-cloud-core', 'googleapis-common-protos[grpc]', 'enum34'] self.assertEqual(set(wheel.dependencies()), set(expected_deps)) self.assertEqual('pypi__google_cloud_language_0_29_0', wheel.repository_suffix()) self.assertEqual([], wheel.extras())
def test_mock_whl_3_3(self, *args): td = TestData('mock_whl/file/mock-2.0.0-py2.py3-none-any.whl') wheel = whl.Wheel(td) self.assertEqual(set(wheel.dependencies()), set(['pbr', 'six']))