57 lines
1.6 KiB
Go
57 lines
1.6 KiB
Go
package service
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/stackanetes/kubernetes-entrypoint/entrypoint"
|
|
"github.com/stackanetes/kubernetes-entrypoint/mocks"
|
|
|
|
. "github.com/onsi/ginkgo"
|
|
. "github.com/onsi/gomega"
|
|
)
|
|
|
|
const testServiceName = "TEST_SERVICE_NAME"
|
|
const testServiceNamespace = "TEST_SERVICE_NAMESPACE"
|
|
|
|
var testEntrypoint entrypoint.EntrypointInterface
|
|
|
|
var _ = Describe("Service", func() {
|
|
|
|
BeforeEach(func() {
|
|
testEntrypoint = mocks.NewEntrypoint()
|
|
})
|
|
|
|
It("checks the name of a newly created service", func() {
|
|
service := NewService(testServiceName, testServiceNamespace)
|
|
|
|
Expect(service.name).To(Equal(testServiceName))
|
|
Expect(service.namespace).To(Equal(testServiceNamespace))
|
|
})
|
|
|
|
It("checks resolution of a succeeding service", func() {
|
|
service := NewService(mocks.SucceedingServiceName, mocks.SucceedingServiceName)
|
|
|
|
isResolved, err := service.IsResolved(testEntrypoint)
|
|
|
|
Expect(isResolved).To(Equal(true))
|
|
Expect(err).NotTo(HaveOccurred())
|
|
})
|
|
|
|
It("checks resolution failure of a failing service", func() {
|
|
service := NewService(mocks.FailingServiceName, mocks.FailingServiceName)
|
|
|
|
isResolved, err := service.IsResolved(testEntrypoint)
|
|
|
|
Expect(isResolved).To(Equal(false))
|
|
Expect(err.Error()).To(Equal(mocks.MockEndpointError))
|
|
})
|
|
|
|
It("checks resolution failure of a succeeding service with removed subsets", func() {
|
|
service := NewService(mocks.EmptySubsetsServiceName, mocks.EmptySubsetsServiceName)
|
|
|
|
isResolved, err := service.IsResolved(testEntrypoint)
|
|
Expect(isResolved).To(Equal(false))
|
|
Expect(err.Error()).To(Equal(fmt.Sprintf(FailingStatusFormat, service.name)))
|
|
})
|
|
})
|