This repository has been archived by the owner on Feb 21, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6
/
test_utils.py
129 lines (117 loc) Β· 4.94 KB
/
test_utils.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
from zoo.analytics.tasks.utils import DockerImageId
def test_docker_image_id_parsing_short():
parsed = DockerImageId("python:3.8")
assert parsed.full_image_id == "python:3.8"
assert parsed.registry is None
assert parsed.registry_host_name is None
assert parsed.registry_port is None
assert parsed.full_image_name == "python:3.8"
assert parsed.full_image_name_no_tag == "python"
assert parsed.username is None
assert parsed.full_repository_name == "python"
assert parsed.repository_name == "python"
assert parsed.namespaces is None
assert parsed.tag == "3.8"
assert parsed.version == "3.8"
assert parsed.full_os is None
assert parsed.os is None
assert parsed.os_version is None
assert parsed.alias is None
def test_docker_image_id_parsing_short_with_os():
parsed = DockerImageId("python:3.8-alpine")
assert parsed.full_image_id == "python:3.8-alpine"
assert parsed.registry is None
assert parsed.registry_host_name is None
assert parsed.registry_port is None
assert parsed.full_image_name == "python:3.8-alpine"
assert parsed.full_image_name_no_tag == "python"
assert parsed.username is None
assert parsed.full_repository_name == "python"
assert parsed.repository_name == "python"
assert parsed.namespaces is None
assert parsed.tag == "3.8-alpine"
assert parsed.version == "3.8"
assert parsed.full_os == "alpine"
assert parsed.os == "alpine"
assert parsed.os_version is None
assert parsed.alias is None
def test_docker_image_id_parsing_short_with_os_version():
parsed = DockerImageId("python:3.8-alpine3.9")
assert parsed.full_image_id == "python:3.8-alpine3.9"
assert parsed.registry is None
assert parsed.registry_host_name is None
assert parsed.registry_port is None
assert parsed.full_image_name == "python:3.8-alpine3.9"
assert parsed.full_image_name_no_tag == "python"
assert parsed.username is None
assert parsed.full_repository_name == "python"
assert parsed.repository_name == "python"
assert parsed.namespaces is None
assert parsed.tag == "3.8-alpine3.9"
assert parsed.version == "3.8"
assert parsed.full_os == "alpine3.9"
assert parsed.os == "alpine"
assert parsed.os_version == "3.9"
assert parsed.alias is None
def test_docker_image_id_parsing_localhost():
parsed = DockerImageId("localhost:5005/bi/airflow/celery as base")
assert parsed.full_image_id == "localhost:5005/bi/airflow/celery as base"
assert parsed.registry == "localhost:5005"
assert parsed.registry_host_name == "localhost"
assert parsed.registry_port == "5005"
assert parsed.full_image_name == "bi/airflow/celery as base"
assert parsed.full_image_name_no_tag == "bi/airflow/celery"
assert parsed.username == "bi"
assert parsed.full_repository_name == "airflow/celery"
assert parsed.repository_name == "airflow"
assert parsed.namespaces == ["celery"]
assert parsed.tag is None
assert parsed.version is None
assert parsed.full_os is None
assert parsed.os is None
assert parsed.os_version is None
assert parsed.alias == "base"
def test_docker_image_id_parsing_localhost_no_port():
parsed = DockerImageId("localhost/airflow/celery:1.0")
assert parsed.full_image_id == "localhost/airflow/celery:1.0"
assert parsed.registry == "localhost"
assert parsed.registry_host_name == "localhost"
assert parsed.registry_port is None
assert parsed.full_image_name == "airflow/celery:1.0"
assert parsed.full_image_name_no_tag == "airflow/celery"
assert parsed.username == "airflow"
assert parsed.full_repository_name == "celery"
assert parsed.repository_name == "celery"
assert parsed.namespaces is None
assert parsed.tag == "1.0"
assert parsed.version == "1.0"
assert parsed.full_os is None
assert parsed.os is None
assert parsed.os_version is None
assert parsed.alias is None
def test_docker_image_id_parsing_long():
parsed = DockerImageId(
"registry.com:5005/group/my-image/name1/name2:0.1.1-alpine3.9 as base-image"
)
assert (
parsed.full_image_id
== "registry.com:5005/group/my-image/name1/name2:0.1.1-alpine3.9 as base-image"
)
assert parsed.registry == "registry.com:5005"
assert parsed.registry_host_name == "registry.com"
assert parsed.registry_port == "5005"
assert (
parsed.full_image_name
== "group/my-image/name1/name2:0.1.1-alpine3.9 as base-image"
)
assert parsed.full_image_name_no_tag == "group/my-image/name1/name2"
assert parsed.username == "group"
assert parsed.full_repository_name == "my-image/name1/name2"
assert parsed.repository_name == "my-image"
assert parsed.namespaces == ["name1", "name2"]
assert parsed.tag == "0.1.1-alpine3.9"
assert parsed.version == "0.1.1"
assert parsed.full_os == "alpine3.9"
assert parsed.os == "alpine"
assert parsed.os_version == "3.9"
assert parsed.alias == "base-image"