Esempio n. 1
0
    def setUp(self):
        self.wheels = {
            'torch_cpu': [
                avail_wheels.Wheel(filename="torch_cpu",
                                   name="torch_cpu",
                                   parse=False)
            ],
            'numpy':
            [avail_wheels.Wheel(filename="numpy", name="numpy", parse=False)]
        }

        self.wheel_names = ['a', 'b', 'torch*']
Esempio n. 2
0
    def test_not_avail_empty(self):
        """ Test that an empty dict of wheels only contains the given wheel names. """
        ret = avail_wheels.add_not_available_wheels({}, self.wheel_names)

        self.assertEqual(
            ret, {
                'a': [avail_wheels.Wheel(filename='a', name='a', parse=False)],
                'b': [avail_wheels.Wheel(filename='b', name='b', parse=False)],
                'torch*': [
                    avail_wheels.Wheel(
                        filename="torch*", name="torch*", parse=False)
                ]
            })
Esempio n. 3
0
    def test_not_avail(self):
        """ Test that wheels patterns are not added if they previously matched. """
        ret = avail_wheels.add_not_available_wheels(self.wheels,
                                                    self.wheel_names)

        self.assertEqual(
            ret, {
                'a': [avail_wheels.Wheel(filename='a', name='a', parse=False)],
                'b': [avail_wheels.Wheel(filename='b', name='b', parse=False)],
                'torch_cpu': [
                    avail_wheels.Wheel(
                        filename="torch_cpu", name="torch_cpu", parse=False)
                ],
                'numpy': [
                    avail_wheels.Wheel(
                        filename="numpy", name="numpy", parse=False)
                ]
            })
Esempio n. 4
0
    def test_parse_tags(self):
        filenames = [
            "avx2/netCDF4-1.3.1-cp36-cp36m-linux_x86_64.whl",
            "avx/tensorflow_cpu-1.6.0+computecanada-cp36-cp36m-linux_x86_64.whl",
            "generic/backports.functools_lru_cache-1.4-py2.py3-none-any.whl",
            "sse3/Shapely-1.6.2.post1-cp35-cp35m-linux_x86_64.whl"
        ]
        tags = {
            filenames[0]: {
                'arch': 'avx2',
                'name': 'netCDF4',
                'version': '1.3.1',
                'build': '',
                'python': 'cp36',
                'abi': 'cp36m',
                'platform': 'linux_x86_64'
            },
            filenames[1]: {
                'arch': 'avx',
                'name': 'tensorflow_cpu',
                'version': '1.6.0',
                'build': "computecanada",
                'python': 'cp36',
                'abi': 'cp36m',
                'platform': 'linux_x86_64'
            },
            filenames[2]: {
                'arch': 'generic',
                'name': 'backports.functools_lru_cache',
                'version': '1.4',
                'build': '',
                'python': 'py2.py3',
                'abi': 'none',
                'platform': "any"
            },
            filenames[3]: {
                'arch': 'sse3',
                'name': 'Shapely',
                'version': '1.6.2.post1',
                'build': '',
                'python': 'cp35',
                'abi': 'cp35m',
                'platform': "linux_x86_64"
            }
        }

        for file in filenames:
            wheel = avail_wheels.Wheel(file)
            self.assertEqual(wheel.filename, file)
            self.assertEqual(wheel.arch, tags[file]['arch'])
            self.assertEqual(wheel.name, tags[file]['name'])
            self.assertEqual(wheel.version, tags[file]['version'])
            self.assertEqual(wheel.build, tags[file]['build'])
            self.assertEqual(wheel.python, tags[file]['python'])
            self.assertEqual(wheel.abi, tags[file]['abi'])
            self.assertEqual(wheel.platform, tags[file]['platform'])
Esempio n. 5
0
    def test_get_wheels_wildname_arch_python(self):
        arch = 'avx2'
        search_paths = [f"{self.wheelhouse}/{self.current_stack}/{arch}"]
        pythons = ['3.6']
        wildname = "*CDF*"
        other = {
            'netCDF4': [
                avail_wheels.Wheel(
                    f"{arch}/{self.raw_filenames['netCDF4'][2]}"),
                avail_wheels.Wheel(
                    f"{arch}/{self.raw_filenames['netCDF4'][3]}")
            ]
        }

        ret = avail_wheels.get_wheels(paths=search_paths,
                                      pythons=pythons,
                                      names_versions=product([wildname], "*"),
                                      latest=False)
        self.assertEqual(ret, other)
Esempio n. 6
0
    def test_get_wheels_arch_all_pythons(self):
        arch = 'avx2'
        search_paths = [f'{self.wheelhouse}/{self.current_stack}/{arch}']
        other = {'netCDF4': [], 'torch_cpu': []}
        for wheel_name, files in self.raw_filenames.items():
            for file in files:
                other[wheel_name].append(avail_wheels.Wheel(f"{arch}/{file}"))

        ret = avail_wheels.get_wheels(paths=search_paths,
                                      pythons=avail_wheels.AVAILABLE_PYTHONS,
                                      names_versions=product('*', '*'),
                                      latest=False)
        self.assertEqual(ret, other)
Esempio n. 7
0
 def test_ctor_kwargs(self):
     wheel = avail_wheels.Wheel(filename="file",
                                parse=False,
                                arch='avx',
                                name='torch_cpu',
                                version='1.2.0',
                                build="computecanada",
                                python="cp36",
                                abi="cp36m",
                                platform="linux_x86_64")
     self.assertEqual(wheel.filename, "file")
     self.assertEqual(wheel.arch, "avx")
     self.assertEqual(wheel.name, "torch_cpu")
     self.assertEqual(wheel.version, "1.2.0")
     self.assertEqual(wheel.build, "computecanada")
     self.assertEqual(wheel.python, "cp36")
     self.assertEqual(wheel.abi, "cp36m")
     self.assertEqual(wheel.platform, "linux_x86_64")
Esempio n. 8
0
 def setUp(self):
     self.wheel = avail_wheels.Wheel(
         "avx/netCDF4-1.3.1-cp27-cp27mu-linux_x86_64.whl")
Esempio n. 9
0
    def setUp(self):
        self.wheels = {
            'netCDF4': [
                avail_wheels.Wheel(
                    "avx/netCDF4-1.3.1-cp27-cp27mu-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx/netCDF4-1.3.1-cp35-cp35m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx/netCDF4-1.3.1-cp36-cp36m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.1-cp27-cp27mu-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.1-cp35-cp35m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.1-cp36-cp36m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "sse3/netCDF4-1.3.1-cp27-cp27mu-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "sse3/netCDF4-1.3.1-cp35-cp35m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "sse3/netCDF4-1.3.1-cp36-cp36m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "generic/netCDF4-1.4.0-cp27-cp27mu-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "generic/netCDF4-1.2.8-cp27-cp27mu-linux_x86_64.whl")
            ],
            "botocore": [
                avail_wheels.Wheel(
                    "generic/botocore-1.10.63-py2.py3-none-any.whl"),
                avail_wheels.Wheel(
                    "generic/botocore-1.9.5-py2.py3-none-any.whl"),
                avail_wheels.Wheel(
                    "generic/botocore-1.10.57-py2.py3-none-any.whl"),
                avail_wheels.Wheel(
                    "generic/botocore-1.9.11-py2.py3-none-any.whl")
            ],
            "pydicom": [
                avail_wheels.Wheel(
                    "generic/pydicom-1.1.0-1-py2.py3-none-any.whl"),
                avail_wheels.Wheel("generic/pydicom-0.9.9-py3-none-any.whl")
            ],
            "torch_cpu": [
                avail_wheels.Wheel(
                    "avx2/torch_cpu-0.4.0-cp36-cp36m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/torch_cpu-0.2.0+d8f3c60-cp27-cp27mu-linux_x86_64.whl"
                )
            ]
        }

        self.wheels['netCDF4'].reverse()

        self.output = [['botocore', '1.10.63', '', 'py2.py3', 'generic'],
                       ['botocore', '1.10.57', '', 'py2.py3', 'generic'],
                       ['botocore', '1.9.11', '', 'py2.py3', 'generic'],
                       ['botocore', '1.9.5', '', 'py2.py3', 'generic'],
                       ['netCDF4', '1.4.0', '', 'cp27', 'generic'],
                       ['netCDF4', '1.3.1', '', 'cp36', 'sse3'],
                       ['netCDF4', '1.3.1', '', 'cp35', 'sse3'],
                       ['netCDF4', '1.3.1', '', 'cp27', 'sse3'],
                       ['netCDF4', '1.3.1', '', 'cp36', 'avx2'],
                       ['netCDF4', '1.3.1', '', 'cp35', 'avx2'],
                       ['netCDF4', '1.3.1', '', 'cp27', 'avx2'],
                       ['netCDF4', '1.3.1', '', 'cp36', 'avx'],
                       ['netCDF4', '1.3.1', '', 'cp35', 'avx'],
                       ['netCDF4', '1.3.1', '', 'cp27', 'avx'],
                       ['netCDF4', '1.2.8', '', 'cp27', 'generic'],
                       ["pydicom", "1.1.0", "1", "py2.py3", "generic"],
                       ["pydicom", "0.9.9", "", "py3", "generic"],
                       ["torch_cpu", "0.4.0", "", "cp36", "avx2"],
                       ["torch_cpu", "0.2.0", "d8f3c60", "cp27", "avx2"]]

        self.condensed_output = [
            [
                "botocore", "1.10.63, 1.10.57, 1.9.11, 1.9.5", '', "py2.py3",
                "generic"
            ],
            [
                "netCDF4", "1.4.0, 1.3.1, 1.2.8", '', "cp36, cp35, cp27",
                "sse3, generic, avx2, avx"
            ], ["pydicom", "1.1.0, 0.9.9", "1, ", "py3, py2.py3", "generic"],
            ["torch_cpu", "0.4.0, 0.2.0", ", d8f3c60", "cp36, cp27", "avx2"]
        ]
Esempio n. 10
0
    def setUp(self):
        self.wheels = {
            'netCDF4': [
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.2-cp36-cp36m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.2-cp35-cp35m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.2-cp27-cp27mu-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.1-cp36-cp36m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.1-cp36-cp36m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.1-cp36-cp36m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.2.0-cp36-cp36m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3-cp36-cp36m-linux_x86_64.whl")
            ],
            'torch_cpu': [
                avail_wheels.Wheel(
                    "avx2/torch_cpu-0.4.0-cp36-cp36m-linux_x86_64.whl")
            ]
        }

        self.wheels['netCDF4'].reverse()

        self.latest_wheels = {
            'netCDF4': [
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.2-cp27-cp27mu-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.2-cp35-cp35m-linux_x86_64.whl"),
                avail_wheels.Wheel(
                    "avx2/netCDF4-1.3.2-cp36-cp36m-linux_x86_64.whl")
            ],
            'torch_cpu': [
                avail_wheels.Wheel(
                    "avx2/torch_cpu-0.4.0-cp36-cp36m-linux_x86_64.whl")
            ]
        }
Esempio n. 11
0
 def test_ctor_noparse(self):
     wheel = avail_wheels.Wheel("file", parse=False)
     self.assertEqual(wheel.filename, "file")
Esempio n. 12
0
 def test_wheel_noteq_instance(self):
     a, b = avail_wheels.Wheel(
         "avx2/torch_cpu-0.4.0-cp36-cp36m-linux_x86_64.whl"
     ), "avx2/torch_cpu-0.4.0-cp36-cp36m-linux_x86_64.whl"
     self.assertNotEqual(a, b)
Esempio n. 13
0
 def test_wheel_eq(self):
     a, b = avail_wheels.Wheel(
         "avx2/torch_cpu-0.4.0-cp36-cp36m-linux_x86_64.whl"
     ), avail_wheels.Wheel(
         "avx2/torch_cpu-0.4.0-cp36-cp36m-linux_x86_64.whl")
     self.assertEqual(a, b)
Esempio n. 14
0
 def test_wheel_print(self):
     wheel = str(avail_wheels.Wheel("file", parse=False))
     self.assertEqual(wheel, "file")