fail_test.go 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package integration_test
  2. import (
  3. . "github.com/onsi/ginkgo"
  4. . "github.com/onsi/gomega"
  5. "github.com/onsi/gomega/gexec"
  6. )
  7. var _ = Describe("Failing Specs", func() {
  8. var pathToTest string
  9. BeforeEach(func() {
  10. pathToTest = tmpPath("failing")
  11. copyIn("fail_fixture", pathToTest)
  12. })
  13. It("should fail in all the possible ways", func() {
  14. session := startGinkgo(pathToTest, "--noColor")
  15. Eventually(session).Should(gexec.Exit(1))
  16. output := string(session.Out.Contents())
  17. Ω(output).ShouldNot(ContainSubstring("NEVER SEE THIS"))
  18. Ω(output).Should(ContainSubstring("a top level failure on line 9"))
  19. Ω(output).Should(ContainSubstring("fail_fixture_test.go:9"))
  20. Ω(output).Should(ContainSubstring("an async top level failure on line 14"))
  21. Ω(output).Should(ContainSubstring("fail_fixture_test.go:14"))
  22. Ω(output).Should(ContainSubstring("a top level goroutine failure on line 21"))
  23. Ω(output).Should(ContainSubstring("fail_fixture_test.go:21"))
  24. Ω(output).Should(ContainSubstring("a sync failure"))
  25. Ω(output).Should(MatchRegexp(`Test Panicked\n\s+a sync panic`))
  26. Ω(output).Should(ContainSubstring("a sync FAIL failure"))
  27. Ω(output).Should(ContainSubstring("async timeout [It]"))
  28. Ω(output).Should(ContainSubstring("Timed out"))
  29. Ω(output).Should(ContainSubstring("an async failure"))
  30. Ω(output).Should(MatchRegexp(`Test Panicked\n\s+an async panic`))
  31. Ω(output).Should(ContainSubstring("an async FAIL failure"))
  32. Ω(output).Should(ContainSubstring("a goroutine FAIL failure"))
  33. Ω(output).Should(ContainSubstring("a goroutine failure"))
  34. Ω(output).Should(MatchRegexp(`Test Panicked\n\s+a goroutine panic`))
  35. Ω(output).Should(ContainSubstring("a measure failure"))
  36. Ω(output).Should(ContainSubstring("a measure FAIL failure"))
  37. Ω(output).Should(MatchRegexp(`Test Panicked\n\s+a measure panic`))
  38. Ω(output).Should(ContainSubstring("0 Passed | 16 Failed"))
  39. })
  40. })