Skip to content

Commit

Permalink
Fix failing test whose result was dependent on some container image r…
Browse files Browse the repository at this point in the history
…epo contents
  • Loading branch information
mumoshu committed Sep 23, 2020
1 parent 1dda858 commit 88d8194
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 10 deletions.
2 changes: 1 addition & 1 deletion examples/module/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM alpine:3.10

ARG HELM_VERSION=3.0.0
ARG HELM_VERSION=3.2.0
ARG HELM_FILENAME="helm-${HELM_VERSION}-linux-amd64.tar.gz"

ADD http://storage.googleapis.com/kubernetes-helm/${HELM_FILE_NAME} /tmp
Expand Down
2 changes: 1 addition & 1 deletion examples/module/default.variantmod
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
module "default" {
dependency "github_release" "helm" {
source = "helm/helm"
version = "> 1.0.0, < 3.0.1"
version = ">= 3.0.0, < 3.2.1"
}

file "Dockerfile" {
Expand Down
4 changes: 2 additions & 2 deletions examples/module/module_test.variant
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
test "test" {
case "ok" {
out = trimspace(<<EOS
version.BuildInfo{Version:"v3.0.0", GitCommit:"e29ce2a54e96cd02ccfce88bee4f58bb6e2a28b6", GitTreeState:"clean", GoVersion:"go1.13.4"}
version.BuildInfo{Version:"v3.2.0", GitCommit:"e11b7ce3b12db2941e90399e874513fbd24bcb71", GitTreeState:"clean", GoVersion:"go1.13.10"}
EOS
)
exitstatus = 0
Expand All @@ -25,7 +25,7 @@ test "build" {
out = trimspace(<<EOS
FROM alpine:3.10

ARG HELM_VERSION=3.0.0
ARG HELM_VERSION=3.2.0
ARG HELM_FILENAME="helm-$${HELM_VERSION}-linux-amd64.tar.gz"

ADD http://storage.googleapis.com/kubernetes-helm/$${HELM_FILE_NAME} /tmp
Expand Down
20 changes: 14 additions & 6 deletions main_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,7 @@ func TestExamples(t *testing.T) {
t.Logf("Running subtest: %d %s", i, tc.subject)

outRead, outWrite := io.Pipe()
errRead, errWrite := io.Pipe()
env := Env{
Args: tc.args,
Getenv: func(name string) string {
Expand All @@ -248,27 +249,34 @@ func TestExamples(t *testing.T) {
go func() {
err = RunMain(env, func(m *Main) {
m.Stdout = outWrite
m.Stderr = os.Stderr
m.Stderr = errWrite
m.Getenv = env.Getenv
m.Getwd = env.Getwd
})
outWrite.Close()
errWrite.Close()
}()

buf := new(bytes.Buffer)
if _, err := buf.ReadFrom(outRead); err != nil {
outBuf := new(bytes.Buffer)
if _, err := outBuf.ReadFrom(outRead); err != nil {
t.Fatalf("unexpected error: %v", err)
}
out := buf.String()
out := outBuf.String()

errBuf := new(bytes.Buffer)
if _, err := errBuf.ReadFrom(errRead); err != nil {
t.Fatalf("unexpected error: %v", err)
}
errOut := errBuf.String()

if tc.expectErr != "" {
if err == nil {
t.Fatalf("Expected error didn't occur")
} else if err.Error() != tc.expectErr {
t.Fatalf("Unexpected error: want %q, got %q", tc.expectErr, err.Error())
t.Fatalf("Unexpected error: want %q, got %q\n%s", tc.expectErr, err.Error(), errOut)
}
} else if err != nil {
t.Fatalf("%+v", err)
t.Fatalf("%+v\n%s", err, errOut)
}

if tc.expectOut != "" {
Expand Down

0 comments on commit 88d8194

Please sign in to comment.