mirror of
https://github.com/EvolutionAPI/evolution-client-python.git
synced 2026-02-04 13:56:23 -06:00
initial commit
This commit is contained in:
@@ -0,0 +1,117 @@
|
||||
import unittest
|
||||
|
||||
class WheelTests(unittest.TestCase):
|
||||
|
||||
def _getTargetClass(self):
|
||||
from pkginfo.wheel import Wheel
|
||||
return Wheel
|
||||
|
||||
def _makeOne(self, filename=None, metadata_version=None):
|
||||
if metadata_version is not None:
|
||||
return self._getTargetClass()(filename, metadata_version)
|
||||
return self._getTargetClass()(filename)
|
||||
|
||||
def _checkSample(self, wheel, filename):
|
||||
self.assertEqual(wheel.filename, filename)
|
||||
self.assertEqual(wheel.name, 'mypackage')
|
||||
self.assertEqual(wheel.version, '0.1')
|
||||
self.assertEqual(wheel.keywords, None)
|
||||
|
||||
def _checkClassifiers(self, wheel):
|
||||
self.assertEqual(list(wheel.classifiers),
|
||||
['Development Status :: 4 - Beta',
|
||||
'Environment :: Console (Text Based)',
|
||||
])
|
||||
self.assertEqual(list(wheel.supported_platforms), [])
|
||||
|
||||
def test_ctor_w_bogus_filename(self):
|
||||
import os
|
||||
d, _ = os.path.split(__file__)
|
||||
filename = '%s/../../docs/examples/nonesuch-0.1-any.whl' % d
|
||||
self.assertRaises(ValueError, self._makeOne, filename)
|
||||
|
||||
def test_ctor_w_non_wheel(self):
|
||||
import os
|
||||
d, _ = os.path.split(__file__)
|
||||
filename = '%s/../../docs/examples/mypackage-0.1.zip' % d
|
||||
self.assertRaises(ValueError, self._makeOne, filename)
|
||||
|
||||
def test_ctor_wo_dist_info(self):
|
||||
import os
|
||||
d, _ = os.path.split(__file__)
|
||||
filename = '%s/../../docs/examples/nodistinfo-0.1-any.whl' % d
|
||||
self.assertRaises(ValueError, self._makeOne, filename)
|
||||
|
||||
def test_ctor_w_valid_wheel(self):
|
||||
import os
|
||||
d, _ = os.path.split(__file__)
|
||||
filename = ('%s/../../docs/examples/'
|
||||
'mypackage-0.1-cp26-none-linux_x86_64.whl') % d
|
||||
wheel = self._makeOne(filename)
|
||||
self.assertEqual(wheel.metadata_version, '2.0')
|
||||
self._checkSample(wheel, filename)
|
||||
self._checkClassifiers(wheel)
|
||||
|
||||
def test_ctor_w_installed_wheel(self):
|
||||
import os
|
||||
d, _ = os.path.split(__file__)
|
||||
filename = (
|
||||
'%s/../../docs/examples/mypackage-0.1.dist-info') % d
|
||||
wheel = self._makeOne(filename)
|
||||
self.assertEqual(wheel.metadata_version, '2.0')
|
||||
self._checkSample(wheel, filename)
|
||||
self._checkClassifiers(wheel)
|
||||
|
||||
def test_ctor_w_valid_wheel_and_metadata_version(self):
|
||||
import os
|
||||
d, _ = os.path.split(__file__)
|
||||
filename = ('%s/../../docs/examples/'
|
||||
'mypackage-0.1-cp26-none-linux_x86_64.whl') % d
|
||||
wheel = self._makeOne(filename, metadata_version='1.1')
|
||||
self.assertEqual(wheel.metadata_version, '1.1')
|
||||
self._checkSample(wheel, filename)
|
||||
self._checkClassifiers(wheel)
|
||||
|
||||
def test_ctor_w_valid_wheel_w_description_header(self):
|
||||
import os
|
||||
d, _ = os.path.split(__file__)
|
||||
filename = ('%s/../../docs/examples/'
|
||||
'distlib-0.3.1-py2.py3-none-any.whl') % d
|
||||
wheel = self._makeOne(filename, metadata_version='1.1')
|
||||
self.assertEqual(wheel.metadata_version, '1.1')
|
||||
self.assertTrue(wheel.description)
|
||||
|
||||
def test_ctor_w_valid_wheel_w_description_body(self):
|
||||
import os
|
||||
d, _ = os.path.split(__file__)
|
||||
filename = ('%s/../../docs/examples/'
|
||||
'testlp1974172-0.0.0-py3-none-any.whl') % d
|
||||
wheel = self._makeOne(filename, metadata_version='2.1')
|
||||
self.assertEqual(wheel.metadata_version, '2.1')
|
||||
self.assertIn(
|
||||
"https://bugs.launchpad.net/pkginfo/+bug/1885458",
|
||||
wheel.description
|
||||
)
|
||||
|
||||
def test_ctor_w_valid_installed_wheel(self):
|
||||
import os
|
||||
import shutil
|
||||
import tempfile
|
||||
import zipfile
|
||||
|
||||
d, _ = os.path.split(__file__)
|
||||
filename = ('%s/../../docs/examples/'
|
||||
'mypackage-0.1-cp26-none-linux_x86_64.whl') % d
|
||||
|
||||
try:
|
||||
# note: we mock a wheel installation by unzipping
|
||||
test_dir = tempfile.mkdtemp()
|
||||
with zipfile.ZipFile(filename) as zipf:
|
||||
zipf.extractall(test_dir)
|
||||
wheel = self._makeOne(filename)
|
||||
self.assertEqual(wheel.metadata_version, '2.0')
|
||||
self._checkSample(wheel, filename)
|
||||
self._checkClassifiers(wheel)
|
||||
finally:
|
||||
if os.path.exists(test_dir):
|
||||
shutil.rmtree(test_dir)
|
||||
Reference in New Issue
Block a user