summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/e2e/events_test.go43
1 files changed, 39 insertions, 4 deletions
diff --git a/test/e2e/events_test.go b/test/e2e/events_test.go
index b37bd584e..0c7a1bd66 100644
--- a/test/e2e/events_test.go
+++ b/test/e2e/events_test.go
@@ -5,9 +5,11 @@ import (
"fmt"
"os"
"strings"
+ "sync"
"time"
. "github.com/containers/podman/v2/test/utils"
+ "github.com/containers/storage/pkg/stringid"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
. "github.com/onsi/gomega/gexec"
@@ -115,10 +117,7 @@ var _ = Describe("Podman events", func() {
SkipIfNotFedora()
_, ec, _ := podmanTest.RunLsContainer("")
Expect(ec).To(Equal(0))
- test := podmanTest.Podman([]string{"events", "--help"})
- test.WaitWithDefaultTimeout()
- fmt.Println(test.OutputToStringArray())
- result := podmanTest.Podman([]string{"events", "--stream=false", "--since", "1h"})
+ result := podmanTest.Podman([]string{"events", "--stream=false", "--until", "1h"})
result.WaitWithDefaultTimeout()
Expect(result.ExitCode()).To(BeZero())
})
@@ -154,4 +153,40 @@ var _ = Describe("Podman events", func() {
Expect(eventsMap).To(HaveKey("Status"))
})
+
+ It("podman events --until future", func() {
+ name1 := stringid.GenerateNonCryptoID()
+ name2 := stringid.GenerateNonCryptoID()
+ name3 := stringid.GenerateNonCryptoID()
+ session := podmanTest.Podman([]string{"create", "--name", name1, ALPINE})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+
+ var wg sync.WaitGroup
+ wg.Add(1)
+ go func() {
+ defer GinkgoRecover()
+ defer wg.Done()
+
+ // wait 2 seconds to be sure events is running
+ time.Sleep(time.Second * 2)
+ session = podmanTest.Podman([]string{"create", "--name", name2, ALPINE})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ session = podmanTest.Podman([]string{"create", "--name", name3, ALPINE})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ }()
+
+ // unix timestamp in 10 seconds
+ until := time.Now().Add(time.Second * 10).Unix()
+ result := podmanTest.Podman([]string{"events", "--since", "30s", "--until", fmt.Sprint(until)})
+ result.Wait(11)
+ Expect(result.ExitCode()).To(BeZero())
+ Expect(result.OutputToString()).To(ContainSubstring(name1))
+ Expect(result.OutputToString()).To(ContainSubstring(name2))
+ Expect(result.OutputToString()).To(ContainSubstring(name3))
+
+ wg.Wait()
+ })
})