Skip to content

Commit

Permalink
Make test timeouts configurable
Browse files Browse the repository at this point in the history
  • Loading branch information
bouskaJ authored and nicolaferraro committed Feb 27, 2020
1 parent 2abfd5f commit 6eb9f94
Show file tree
Hide file tree
Showing 14 changed files with 111 additions and 91 deletions.
12 changes: 6 additions & 6 deletions e2e/addons_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ func TestAddons(t *testing.T) {
t.Run("master works", func(t *testing.T) {
RegisterTestingT(t)
Expect(kamel("run", "-n", ns, "files/Master.java").Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns, "master"), 5*time.Minute).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "master"), 1*time.Minute).Should(ContainSubstring("Magicstring!"))
Eventually(integrationPodPhase(ns, "master"), testTimeoutMedium).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "master"), testTimeoutShort).Should(ContainSubstring("Magicstring!"))
Eventually(configMap(ns, "master-lock"), 30*time.Second).ShouldNot(BeNil())
Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})
Expand All @@ -50,8 +50,8 @@ func TestAddons(t *testing.T) {
"-t", "master.label-key=leader-group",
"-t", "master.label-value=same",
"-t", "owner.target-labels=leader-group").Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns, "first"), 5*time.Minute).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "first"), 1*time.Minute).Should(ContainSubstring("Magicstring!"))
Eventually(integrationPodPhase(ns, "first"), testTimeoutMedium).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "first"), testTimeoutShort).Should(ContainSubstring("Magicstring!"))
Eventually(configMap(ns, "first-lock"), 30*time.Second).ShouldNot(BeNil())
// Start a second integration with the same lock (it should not start the route)
Expect(kamel("run", "-n", ns, "files/Master.java",
Expand All @@ -61,8 +61,8 @@ func TestAddons(t *testing.T) {
"-t", "master.label-value=same",
"-t", "master.configmap=first-lock",
"-t", "owner.target-labels=leader-group").Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns, "second"), 5*time.Minute).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "second"), 1*time.Minute).Should(ContainSubstring("started in"))
Eventually(integrationPodPhase(ns, "second"), testTimeoutMedium).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "second"), testTimeoutShort).Should(ContainSubstring("started in"))
Eventually(integrationLogs(ns, "second"), 30*time.Second).ShouldNot(ContainSubstring("Magicstring!"))
Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})
Expand Down
3 changes: 1 addition & 2 deletions e2e/build_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ package e2e

import (
"testing"
"time"

"github.com/apache/camel-k/pkg/apis/camel/v1"
. "github.com/onsi/gomega"
Expand Down Expand Up @@ -67,6 +66,6 @@ func doNamedKitFullBuild(t *testing.T, name string) {
Eventually(build(ns, name)).ShouldNot(BeNil())
Eventually(func() v1.BuildPhase {
return build(ns, name)().Status.Phase
}, 5*time.Minute).Should(Equal(v1.BuildPhaseSucceeded))
}, testTimeoutMedium).Should(Equal(v1.BuildPhaseSucceeded))
})
}
13 changes: 6 additions & 7 deletions e2e/cron_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ package e2e

import (
"testing"
"time"

. "github.com/onsi/gomega"
v1 "k8s.io/api/core/v1"
Expand All @@ -37,26 +36,26 @@ func TestRunCronExample(t *testing.T) {
RegisterTestingT(t)

Expect(kamel("run", "-n", ns, "files/cron.groovy").Execute()).Should(BeNil())
Eventually(integrationCronJob(ns, "cron"), 5*time.Minute).ShouldNot(BeNil())
Eventually(integrationLogs(ns, "cron"), 5*time.Minute).Should(ContainSubstring("Magicstring!"))
Eventually(integrationCronJob(ns, "cron"), testTimeoutMedium).ShouldNot(BeNil())
Eventually(integrationLogs(ns, "cron"), testTimeoutMedium).Should(ContainSubstring("Magicstring!"))
Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})

t.Run("cron-timer", func(t *testing.T) {
RegisterTestingT(t)

Expect(kamel("run", "-n", ns, "files/cron-timer.groovy").Execute()).Should(BeNil())
Eventually(integrationCronJob(ns, "cron-timer"), 5*time.Minute).ShouldNot(BeNil())
Eventually(integrationLogs(ns, "cron-timer"), 5*time.Minute).Should(ContainSubstring("Magicstring!"))
Eventually(integrationCronJob(ns, "cron-timer"), testTimeoutMedium).ShouldNot(BeNil())
Eventually(integrationLogs(ns, "cron-timer"), testTimeoutMedium).Should(ContainSubstring("Magicstring!"))
Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})

t.Run("cron-fallback", func(t *testing.T) {
RegisterTestingT(t)

Expect(kamel("run", "-n", ns, "files/cron-fallback.groovy").Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns, "cron-fallback"), 5*time.Minute).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "cron-fallback"), 1*time.Minute).Should(ContainSubstring("Magicstring!"))
Eventually(integrationPodPhase(ns, "cron-fallback"), testTimeoutMedium).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "cron-fallback"), testTimeoutShort).Should(ContainSubstring("Magicstring!"))
Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})
})
Expand Down
9 changes: 4 additions & 5 deletions e2e/dev_mode_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ import (
"context"
"io"
"testing"
"time"

"github.com/apache/camel-k/e2e/util"
. "github.com/onsi/gomega"
Expand All @@ -52,12 +51,12 @@ func TestRunDevMode(t *testing.T) {

go kamelRun.Execute()

Eventually(logScanner.IsFound(`integration "yaml" in phase Running`), 5*time.Minute).Should(BeTrue())
Eventually(logScanner.IsFound("Magicstring!"), 3*time.Minute).Should(BeTrue())
Eventually(logScanner.IsFound(`integration "yaml" in phase Running`), testTimeoutMedium).Should(BeTrue())
Eventually(logScanner.IsFound("Magicstring!"), testTimeoutMedium).Should(BeTrue())
Expect(logScanner.IsFound("Magicjordan!")()).To(BeFalse())

util.ReplaceInFile(t, file, "string!", "jordan!")
Eventually(logScanner.IsFound("Magicjordan!"), 5*time.Minute).Should(BeTrue())
Eventually(logScanner.IsFound("Magicjordan!"), testTimeoutMedium).Should(BeTrue())
})

t.Run("run yaml remote dev mode", func(t *testing.T) {
Expand All @@ -76,7 +75,7 @@ func TestRunDevMode(t *testing.T) {

go kamelRun.Execute()

Eventually(logScanner.IsFound("Magicstring!"), 5*time.Minute).Should(BeTrue())
Eventually(logScanner.IsFound("Magicstring!"), testTimeoutMedium).Should(BeTrue())
})
})
}
7 changes: 3 additions & 4 deletions e2e/docker_hub_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ package e2e
import (
"os"
"testing"
"time"

. "github.com/onsi/gomega"
v1 "k8s.io/api/core/v1"
Expand All @@ -47,9 +46,9 @@ func TestRunWithDockerHubRegistry(t *testing.T) {
Execute()).Should(BeNil())

Expect(kamel("run", "-n", ns, "files/groovy.groovy").Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns, "groovy"), 5*time.Minute).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "groovy"), 1*time.Minute).Should(ContainSubstring("Magicstring!"))
Eventually(integrationPodImage(ns, "groovy"), 1*time.Minute).Should(HavePrefix("docker.io"))
Eventually(integrationPodPhase(ns, "groovy"), testTimeoutMedium).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "groovy"), testTimeoutShort).Should(ContainSubstring("Magicstring!"))
Eventually(integrationPodImage(ns, "groovy"), testTimeoutShort).Should(HavePrefix("docker.io"))

Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})
Expand Down
7 changes: 3 additions & 4 deletions e2e/github_packages_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ package e2e
import (
"os"
"testing"
"time"

. "github.com/onsi/gomega"
v1 "k8s.io/api/core/v1"
Expand All @@ -48,9 +47,9 @@ func TestRunWithGithubPackagesRegistry(t *testing.T) {
Execute()).Should(BeNil())

Expect(kamel("run", "-n", ns, "files/groovy.groovy").Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns, "groovy"), 5*time.Minute).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "groovy"), 1*time.Minute).Should(ContainSubstring("Magicstring!"))
Eventually(integrationPodImage(ns, "groovy"), 1*time.Minute).Should(HavePrefix("docker.pkg.github.com"))
Eventually(integrationPodPhase(ns, "groovy"), testTimeoutMedium).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, "groovy"), testTimeoutShort).Should(ContainSubstring("Magicstring!"))
Eventually(integrationPodImage(ns, "groovy"), testTimeoutShort).Should(HavePrefix("docker.pkg.github.com"))

Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})
Expand Down
5 changes: 2 additions & 3 deletions e2e/global_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ package e2e
import (
"os"
"testing"
"time"

"github.com/apache/camel-k/pkg/util/openshift"
. "github.com/onsi/gomega"
Expand All @@ -51,8 +50,8 @@ func TestRunGlobalInstall(t *testing.T) {
Expect(kamel("install", "-n", ns2, "--skip-operator-setup", "--olm", "false").Execute()).Should(BeNil())

Expect(kamel("run", "-n", ns2, "files/Java.java").Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns2, "java"), 5*time.Minute).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns2, "java"), 1*time.Minute).Should(ContainSubstring("Magicstring!"))
Eventually(integrationPodPhase(ns2, "java"), testTimeoutMedium).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns2, "java"), testTimeoutShort).Should(ContainSubstring("Magicstring!"))
Expect(kamel("delete", "--all", "-n", ns2).Execute()).Should(BeNil())
})

Expand Down
5 changes: 2 additions & 3 deletions e2e/init_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ import (
"fmt"
"path"
"testing"
"time"

"github.com/apache/camel-k/e2e/util"
camelv1 "github.com/apache/camel-k/pkg/apis/camel/v1"
Expand All @@ -46,8 +45,8 @@ func TestRunInitGeneratedExamples(t *testing.T) {
file := path.Join(dir, fileName)
Expect(kamel("init", file).Execute()).Should(BeNil())
Expect(kamel("run", "-n", ns, file).Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns, itName), 5*time.Minute).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, itName), 1*time.Minute).Should(ContainSubstring(languageInitExpectedString(lang)))
Eventually(integrationPodPhase(ns, itName), testTimeoutMedium).Should(Equal(v1.PodRunning))
Eventually(integrationLogs(ns, itName), testTimeoutShort).Should(ContainSubstring(languageInitExpectedString(lang)))
Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})
}
Expand Down
19 changes: 9 additions & 10 deletions e2e/knative_platform_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ package e2e
import (
"strings"
"testing"
"time"

"github.com/apache/camel-k/pkg/apis/camel/v1"
"github.com/apache/camel-k/pkg/util/knative"
Expand All @@ -40,16 +39,16 @@ func TestKnativePlatformTest(t *testing.T) {
}

Expect(kamel("install", "-n", ns).Execute()).Should(BeNil())
Eventually(platformPhase(ns), 5*time.Minute).Should(Equal(v1.IntegrationPlatformPhaseReady))
Eventually(platformProfile(ns), 1*time.Minute).Should(Equal(v1.TraitProfile("")))
Eventually(platformPhase(ns), testTimeoutMedium).Should(Equal(v1.IntegrationPlatformPhaseReady))
Eventually(platformProfile(ns), testTimeoutShort).Should(Equal(v1.TraitProfile("")))
cluster := platform(ns)().Status.Cluster

t.Run("run yaml on cluster profile", func(t *testing.T) {
RegisterTestingT(t)
Expect(kamel("run", "-n", ns, "files/yaml.yaml", "--profile", string(cluster)).Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns, "yaml"), 5*time.Minute).Should(Equal(corev1.PodRunning))
Eventually(integrationLogs(ns, "yaml"), 1*time.Minute).Should(ContainSubstring("Magicstring!"))
Eventually(integrationProfile(ns, "yaml"), 1*time.Minute).Should(Equal(v1.TraitProfile(string(cluster))))
Eventually(integrationPodPhase(ns, "yaml"), testTimeoutMedium).Should(Equal(corev1.PodRunning))
Eventually(integrationLogs(ns, "yaml"), testTimeoutShort).Should(ContainSubstring("Magicstring!"))
Eventually(integrationProfile(ns, "yaml"), testTimeoutShort).Should(Equal(v1.TraitProfile(string(cluster))))
// Change something in the integration to produce a redeploy
Expect(updateIntegration(ns, "yaml", func(it *v1.Integration) {
it.Spec.Profile = v1.TraitProfile("")
Expand All @@ -59,18 +58,18 @@ func TestKnativePlatformTest(t *testing.T) {
Eventually(integrationSpecProfile(ns, "yaml")).Should(Equal(v1.TraitProfile("")))
// When integration is running again ...
Eventually(integrationPhase(ns, "yaml")).Should(Equal(v1.IntegrationPhaseRunning))
Eventually(integrationLogs(ns, "yaml"), 1*time.Minute).Should(ContainSubstring("Magicstring!!!"))
Eventually(integrationLogs(ns, "yaml"), testTimeoutShort).Should(ContainSubstring("Magicstring!!!"))
// It should keep the old profile saved in status
Eventually(integrationProfile(ns, "yaml"), 5*time.Minute).Should(Equal(v1.TraitProfile(string(cluster))))
Eventually(integrationProfile(ns, "yaml"), testTimeoutMedium).Should(Equal(v1.TraitProfile(string(cluster))))

Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})

t.Run("run yaml on automatic profile", func(t *testing.T) {
RegisterTestingT(t)
Expect(kamel("run", "-n", ns, "files/yaml.yaml").Execute()).Should(BeNil())
Eventually(integrationPodPhase(ns, "yaml"), 5*time.Minute).Should(Equal(corev1.PodRunning))
Eventually(integrationProfile(ns, "yaml"), 1*time.Minute).Should(Equal(v1.TraitProfileKnative))
Eventually(integrationPodPhase(ns, "yaml"), testTimeoutMedium).Should(Equal(corev1.PodRunning))
Eventually(integrationProfile(ns, "yaml"), testTimeoutShort).Should(Equal(v1.TraitProfileKnative))
Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil())
})

Expand Down
Loading

0 comments on commit 6eb9f94

Please sign in to comment.