summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/onsi/gomega/matchers/match_regexp_matcher_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/onsi/gomega/matchers/match_regexp_matcher_test.go')
-rw-r--r--vendor/github.com/onsi/gomega/matchers/match_regexp_matcher_test.go44
1 files changed, 44 insertions, 0 deletions
diff --git a/vendor/github.com/onsi/gomega/matchers/match_regexp_matcher_test.go b/vendor/github.com/onsi/gomega/matchers/match_regexp_matcher_test.go
new file mode 100644
index 0000000..bb521cc
--- /dev/null
+++ b/vendor/github.com/onsi/gomega/matchers/match_regexp_matcher_test.go
@@ -0,0 +1,44 @@
+package matchers_test
+
+import (
+ . "github.com/onsi/ginkgo"
+ . "github.com/onsi/gomega"
+ . "github.com/onsi/gomega/matchers"
+)
+
+var _ = Describe("MatchRegexp", func() {
+ Context("when actual is a string", func() {
+ It("should match against the string", func() {
+ Ω(" a2!bla").Should(MatchRegexp(`\d!`))
+ Ω(" a2!bla").ShouldNot(MatchRegexp(`[A-Z]`))
+ })
+ })
+
+ Context("when actual is a stringer", func() {
+ It("should call the stringer and match agains the returned string", func() {
+ Ω(&myStringer{a: "Abc3"}).Should(MatchRegexp(`[A-Z][a-z]+\d`))
+ })
+ })
+
+ Context("when the matcher is called with multiple arguments", func() {
+ It("should pass the string and arguments to sprintf", func() {
+ Ω(" a23!bla").Should(MatchRegexp(`\d%d!`, 3))
+ })
+ })
+
+ Context("when actual is neither a string nor a stringer", func() {
+ It("should error", func() {
+ success, err := (&MatchRegexpMatcher{Regexp: `\d`}).Match(2)
+ Ω(success).Should(BeFalse())
+ Ω(err).Should(HaveOccurred())
+ })
+ })
+
+ Context("when the passed in regexp fails to compile", func() {
+ It("should error", func() {
+ success, err := (&MatchRegexpMatcher{Regexp: "("}).Match("Foo")
+ Ω(success).Should(BeFalse())
+ Ω(err).Should(HaveOccurred())
+ })
+ })
+})