Skip to content

Commit

Permalink
tests: add heredoc test
Browse files Browse the repository at this point in the history
Signed-off-by: Aditya R <arajan@redhat.com>
  • Loading branch information
flouthoc committed Nov 7, 2023
1 parent be71e72 commit 9828aad
Show file tree
Hide file tree
Showing 2 changed files with 78 additions and 0 deletions.
19 changes: 19 additions & 0 deletions tests/bud.bats
Expand Up @@ -267,6 +267,25 @@ _EOF
run_buildah 1 run myctr ls -l subdir/
}

@test "bud build with heredoc content" {
run_buildah build -t heredoc $WITH_POLICY_JSON -f $BUDFILES/heredoc/Containerfile .
expect_output --substring "print first line from heredoc"
expect_output --substring "print second line from heredoc"
expect_output --substring "Heredoc writing first file"
expect_output --substring "some text of first file"
expect_output --substring "file2 from python"
expect_output --substring "(your index page goes here)"
expect_output --substring "(robots content)"
expect_output --substring "(humans content)"
expect_output --substring "this is the output of test6 part1"
expect_output --substring "this is the output of test6 part2"
expect_output --substring "this is the output of test7 part1"
expect_output --substring "this is the output of test7 part2"
expect_output --substring "this is the output of test7 part3"
expect_output --substring "this is the output of test8 part1"
expect_output --substring "this is the output of test8 part2"
}

@test "bud with .containerignore" {
_prefetch alpine busybox
run_buildah 125 build -t testbud $WITH_POLICY_JSON -f $BUDFILES/containerignore/Dockerfile $BUDFILES/containerignore
Expand Down
59 changes: 59 additions & 0 deletions tests/bud/heredoc/Containerfile
@@ -0,0 +1,59 @@
FROM docker.io/library/python:latest

RUN <<EOF
echo "print first line from heredoc"
echo "print second line from heredoc"
EOF

RUN <<EOF
echo "Heredoc writing first file" >> /file1
echo "some text of first file" >> /file1
EOF

RUN cat file1

RUN python3 <<EOF
with open("/file2", "w") as f:
print("file2 from python", file=f)
EOF

RUN cat file2

ADD <<EOF /index.html
(your index page goes here)
EOF

RUN cat index.html

COPY <<robots.txt <<humans.txt /test/
(robots content)
robots.txt
(humans content)
humans.txt

RUN cat /proc/self/fd/5 /proc/self/fd/6 5<<FILE1 6<<FILE2 > test6.txt
this is the output of test6 part1
FILE1
this is the output of test6 part2
FILE2

RUN 5<<file cat /proc/self/fd/5 /proc/self/fd/6 6<<FILE | cat /dev/stdin /proc/self/fd/6 6<<File > test7.txt
this is the output of test7 part1
file
this is the output of test7 part2
FILE
this is the output of test7 part3
File

RUN <<FILE1 cat > test8.1 && <<FILE2 cat > test8.2
this is the output of test8 part1
FILE1
this is the output of test8 part2
FILE2

RUN cat /test/robots.txt
RUN cat /test/humans.txt
RUN cat test6.txt
RUN cat test7.txt
RUN cat test8.1
RUN cat test8.2

0 comments on commit 9828aad

Please sign in to comment.