github.com/xmidt-org/webpa-common@v1.11.9/service/endpoint_test.go (about) 1 package service 2 3 import ( 4 "context" 5 "errors" 6 "testing" 7 8 "github.com/stretchr/testify/assert" 9 "github.com/stretchr/testify/require" 10 ) 11 12 func testNewAccessorEndpointNilAccessor(t *testing.T) { 13 assert := assert.New(t) 14 assert.Panics(func() { 15 NewAccessorEndpoint(nil) 16 }) 17 } 18 19 func testNewAccessorEndpointSuccess(t *testing.T) { 20 var ( 21 assert = assert.New(t) 22 require = require.New(t) 23 24 expectedKey = StringKey("expected key") 25 26 a = new(MockAccessor) 27 e = NewAccessorEndpoint(a) 28 ) 29 30 require.NotNil(e) 31 a.On("Get", []byte("expected key")).Return("expected instance", error(nil)).Once() 32 33 response, err := e(context.Background(), expectedKey) 34 assert.NoError(err) 35 assert.Equal("expected instance", response) 36 37 a.AssertExpectations(t) 38 } 39 40 func testNewAccessorEndpointError(t *testing.T) { 41 var ( 42 assert = assert.New(t) 43 require = require.New(t) 44 45 expectedKey = StringKey("expected key") 46 expectedError = errors.New("expected error") 47 48 a = new(MockAccessor) 49 e = NewAccessorEndpoint(a) 50 ) 51 52 require.NotNil(e) 53 a.On("Get", []byte("expected key")).Return("", expectedError).Once() 54 55 response, actualError := e(context.Background(), expectedKey) 56 assert.Equal(expectedError, actualError) 57 assert.Empty(response) 58 59 a.AssertExpectations(t) 60 } 61 62 func TestNewAccessorEndpoint(t *testing.T) { 63 t.Run("NilAccessor", testNewAccessorEndpointNilAccessor) 64 t.Run("Success", testNewAccessorEndpointSuccess) 65 t.Run("Error", testNewAccessorEndpointError) 66 }