mirror of
https://github.com/syncthing/syncthing.git
synced 2024-11-17 19:08:46 -07:00
37 lines
1.0 KiB
Go
37 lines
1.0 KiB
Go
|
package matchers_test
|
||
|
|
||
|
import (
|
||
|
. "github.com/onsi/ginkgo"
|
||
|
. "github.com/onsi/gomega"
|
||
|
. "github.com/onsi/gomega/matchers"
|
||
|
)
|
||
|
|
||
|
var _ = Describe("Panic", func() {
|
||
|
Context("when passed something that's not a function that takes zero arguments and returns nothing", func() {
|
||
|
It("should error", func() {
|
||
|
success, err := (&PanicMatcher{}).Match("foo")
|
||
|
Ω(success).Should(BeFalse())
|
||
|
Ω(err).Should(HaveOccurred())
|
||
|
|
||
|
success, err = (&PanicMatcher{}).Match(nil)
|
||
|
Ω(success).Should(BeFalse())
|
||
|
Ω(err).Should(HaveOccurred())
|
||
|
|
||
|
success, err = (&PanicMatcher{}).Match(func(foo string) {})
|
||
|
Ω(success).Should(BeFalse())
|
||
|
Ω(err).Should(HaveOccurred())
|
||
|
|
||
|
success, err = (&PanicMatcher{}).Match(func() string { return "bar" })
|
||
|
Ω(success).Should(BeFalse())
|
||
|
Ω(err).Should(HaveOccurred())
|
||
|
})
|
||
|
})
|
||
|
|
||
|
Context("when passed a function of the correct type", func() {
|
||
|
It("should call the function and pass if the function panics", func() {
|
||
|
Ω(func() { panic("ack!") }).Should(Panic())
|
||
|
Ω(func() {}).ShouldNot(Panic())
|
||
|
})
|
||
|
})
|
||
|
})
|