mirror of https://github.com/0xERR0R/blocky.git
52 lines
1.2 KiB
Go
52 lines
1.2 KiB
Go
|
package cmd
|
||
|
|
||
|
import (
|
||
|
"net/http"
|
||
|
"net/http/httptest"
|
||
|
|
||
|
"github.com/sirupsen/logrus/hooks/test"
|
||
|
|
||
|
"github.com/0xERR0R/blocky/log"
|
||
|
|
||
|
. "github.com/onsi/ginkgo/v2"
|
||
|
. "github.com/onsi/gomega"
|
||
|
)
|
||
|
|
||
|
var _ = Describe("Cache command", func() {
|
||
|
var (
|
||
|
ts *httptest.Server
|
||
|
mockFn func(w http.ResponseWriter, _ *http.Request)
|
||
|
loggerHook *test.Hook
|
||
|
)
|
||
|
JustBeforeEach(func() {
|
||
|
ts = testHTTPAPIServer(mockFn)
|
||
|
})
|
||
|
JustAfterEach(func() {
|
||
|
ts.Close()
|
||
|
})
|
||
|
BeforeEach(func() {
|
||
|
mockFn = func(w http.ResponseWriter, _ *http.Request) {}
|
||
|
loggerHook = test.NewGlobal()
|
||
|
log.Log().AddHook(loggerHook)
|
||
|
})
|
||
|
AfterEach(func() {
|
||
|
loggerHook.Reset()
|
||
|
})
|
||
|
Describe("flush cache", func() {
|
||
|
When("flush cache is called via REST", func() {
|
||
|
It("should flush caches", func() {
|
||
|
Expect(flushCache(newCacheCommand(), []string{})).Should(Succeed())
|
||
|
Expect(loggerHook.LastEntry().Message).Should(Equal("OK"))
|
||
|
})
|
||
|
})
|
||
|
When("Wrong url is used", func() {
|
||
|
It("Should end with error", func() {
|
||
|
apiPort = 0
|
||
|
err := flushCache(newCacheCommand(), []string{})
|
||
|
Expect(err).Should(HaveOccurred())
|
||
|
Expect(err.Error()).Should(ContainSubstring("connection refused"))
|
||
|
})
|
||
|
})
|
||
|
})
|
||
|
})
|