mirror of
https://github.com/quay/quay.git
synced 2026-01-27 18:42:52 +03:00
79 lines
1.7 KiB
Python
79 lines
1.7 KiB
Python
# -*- coding: utf-8 -*-
|
|
|
|
from util.dockerfileparse import parse_dockerfile
|
|
|
|
|
|
def test_basic_parse():
|
|
parsed = parse_dockerfile(
|
|
"""
|
|
FROM someimage:latest
|
|
RUN dosomething
|
|
"""
|
|
)
|
|
|
|
assert parsed.get_image_and_tag() == ("someimage", "latest")
|
|
assert parsed.get_base_image() == "someimage"
|
|
|
|
|
|
def test_basic_parse_notag():
|
|
parsed = parse_dockerfile(
|
|
"""
|
|
FROM someimage
|
|
RUN dosomething
|
|
"""
|
|
)
|
|
|
|
assert parsed.get_image_and_tag() == ("someimage", "latest")
|
|
assert parsed.get_base_image() == "someimage"
|
|
|
|
|
|
def test_two_from_lines():
|
|
parsed = parse_dockerfile(
|
|
"""
|
|
FROM someimage:latest
|
|
FROM secondimage:second
|
|
"""
|
|
)
|
|
|
|
assert parsed.get_image_and_tag() == ("secondimage", "second")
|
|
assert parsed.get_base_image() == "secondimage"
|
|
|
|
|
|
def test_parse_comments():
|
|
parsed = parse_dockerfile(
|
|
"""
|
|
# FROM someimage:latest
|
|
FROM anotherimage:foobar # This is a comment
|
|
RUN dosomething
|
|
"""
|
|
)
|
|
|
|
assert parsed.get_image_and_tag() == ("anotherimage", "foobar")
|
|
assert parsed.get_base_image() == "anotherimage"
|
|
|
|
|
|
def test_unicode_parse_as_ascii():
|
|
parsed = parse_dockerfile(
|
|
"""
|
|
FROM someimage:latest
|
|
MAINTAINER José Schorr <jschorr@whatever.com>
|
|
"""
|
|
)
|
|
|
|
assert parsed.get_image_and_tag() == ("someimage", "latest")
|
|
assert parsed.get_base_image() == "someimage"
|
|
|
|
|
|
def test_unicode_parse_as_unicode():
|
|
parsed = parse_dockerfile(
|
|
"""
|
|
FROM someimage:latest
|
|
MAINTAINER José Schorr <jschorr@whatever.com>
|
|
""".decode(
|
|
"utf-8"
|
|
)
|
|
)
|
|
|
|
assert parsed.get_image_and_tag() == ("someimage", "latest")
|
|
assert parsed.get_base_image() == "someimage"
|