clearml-agent/tests/package/test_pytorch_map.py
2020-12-22 23:00:57 +02:00

34 lines
873 B
Python

import attr
import pytest
import requests
from furl import furl
import six
from clearml_agent.helper.package.pytorch import PytorchRequirement
@attr.s
class PytorchURLWheel(object):
os = attr.ib()
cuda = attr.ib()
python = attr.ib()
pytorch = attr.ib()
url = attr.ib()
wheels = [
PytorchURLWheel(os=os, cuda=cuda, python=python, pytorch=pytorch_version, url=url)
for os, os_d in PytorchRequirement.MAP.items()
for cuda, cuda_d in os_d.items()
if isinstance(cuda_d, dict)
for python, python_d in cuda_d.items()
if isinstance(python_d, dict)
for pytorch_version, url in python_d.items()
if isinstance(url, six.string_types) and furl(url).scheme
]
@pytest.mark.parametrize('wheel', wheels, ids=[','.join(map(str, attr.astuple(wheel))) for wheel in wheels])
def test_map(wheel):
assert requests.head(wheel.url).ok