@@ -9,6 +9,7 @@ load "$BATS_PATH/load.bash"
9
9
10
10
@test " runs the annotator and creates the annotation" {
11
11
export BUILDKITE_PLUGIN_JUNIT_ANNOTATE_ARTIFACTS=" junits/*.xml"
12
+ export BUILDKITE_PLUGIN_JUNIT_ANNOTATE_FAIL_BUILD_ON_ERROR=false
12
13
13
14
artifacts_tmp=" tests/tmp/$PWD /junit-artifacts"
14
15
annotation_tmp=" tests/tmp/$PWD /junit-annotation"
@@ -33,10 +34,36 @@ load "$BATS_PATH/load.bash"
33
34
unstub docker
34
35
}
35
36
37
+ @test " returns an error if fail-build-on-error is true" {
38
+ export BUILDKITE_PLUGIN_JUNIT_ANNOTATE_ARTIFACTS=" junits/*.xml"
39
+ export BUILDKITE_PLUGIN_JUNIT_ANNOTATE_FAIL_BUILD_ON_ERROR=true
40
+
41
+ artifacts_tmp=" tests/tmp/$PWD /junit-artifacts"
42
+ annotation_tmp=" tests/tmp/$PWD /junit-annotation"
43
+
44
+ stub mktemp \
45
+ " -d junit-annotate-plugin-artifacts-tmp.XXXXXXXXXX : mkdir -p $artifacts_tmp ; echo $artifacts_tmp " \
46
+ " -d junit-annotate-plugin-annotation-tmp.XXXXXXXXXX : mkdir -p $annotation_tmp ; echo $annotation_tmp "
47
+
48
+ stub buildkite-agent " artifact download junits/*.xml /plugin/tests/tmp//plugin/junit-artifacts : echo Downloaded artifacts" \
49
+ " annotate --context junit --style error : echo Annotation added"
50
+
51
+ stub docker " --log-level error run --rm --volume /plugin/tests/tmp//plugin/junit-artifacts:/junits --volume /plugin/hooks/../ruby:/src --env BUILDKITE_PLUGIN_JUNIT_ANNOTATE_JOB_UUID_FILE_PATTERN= --env BUILDKITE_PLUGIN_JUNIT_ANNOTATE_FAILURE_FORMAT= ruby:2.5-alpine /src/bin/annotate /junits : echo '<details>Failure</details>'"
52
+
53
+ run " $PWD /hooks/command"
54
+
55
+ assert_failure
56
+
57
+ unstub mktemp
58
+ unstub buildkite-agent
59
+ unstub docker
60
+ }
61
+
36
62
@test " can pass through optional params" {
37
63
export BUILDKITE_PLUGIN_JUNIT_ANNOTATE_ARTIFACTS=" junits/*.xml"
38
64
export BUILDKITE_PLUGIN_JUNIT_ANNOTATE_JOB_UUID_FILE_PATTERN=" custom_(*)_pattern.xml"
39
65
export BUILDKITE_PLUGIN_JUNIT_ANNOTATE_FAILURE_FORMAT=" file"
66
+ export BUILDKITE_PLUGIN_JUNIT_ANNOTATE_FAIL_BUILD_ON_ERROR=false
40
67
41
68
artifacts_tmp=" tests/tmp/$PWD /junit-artifacts"
42
69
annotation_tmp=" tests/tmp/$PWD /junit-annotation"
0 commit comments