...
1 package resolver
2
3 import (
4 "context"
5 "testing"
6
7 "github.com/golang/mock/gomock"
8 "github.com/stretchr/testify/assert"
9
10 "edge-infra.dev/pkg/edge/api/graph/model"
11 "edge-infra.dev/pkg/edge/api/mocks"
12 )
13
14 const (
15 expireTime = "4320h"
16 owner = "f1509671-ba57-42c6-a68e-c72bf7256cd7"
17 )
18
19 func TestCreateProviderSettings(t *testing.T) {
20 mock := gomock.NewController(t)
21 iamSettingsService := mocks.NewMockIAMSettingsService(mock)
22
23 iamSettingsService.EXPECT().CreateSettings(context.Background(), owner, gomock.Any()).
24 Return(&model.Provider{}, nil).Times(1)
25
26 providerInput := createProv()
27
28 response, err := iamSettingsService.CreateSettings(context.Background(), owner, providerInput)
29 assert.NotNil(t, response)
30 assert.NoError(t, err)
31 }
32
33 func TestUpdateProviderSettings(t *testing.T) {
34 mock := gomock.NewController(t)
35 iamSettingsService := mocks.NewMockIAMSettingsService(mock)
36
37 iamSettingsService.EXPECT().UpdateSettings(context.Background(), owner, gomock.Any()).
38 Return(&model.Provider{}, nil).Times(1)
39
40 providerInput := createProv()
41 pinHist := 9
42 providerInput.PinHistory = &pinHist
43
44 response, err := iamSettingsService.UpdateSettings(context.Background(), owner, providerInput)
45 assert.NotNil(t, response)
46 assert.NoError(t, err)
47 }
48
49 func TestDeleteProviderSettings(t *testing.T) {
50 mock := gomock.NewController(t)
51 iamSettingsService := mocks.NewMockIAMSettingsService(mock)
52
53 iamSettingsService.EXPECT().DeleteSettings(context.Background(), owner).
54 Return(&model.Provider{}, nil).Times(1)
55
56 response, err := iamSettingsService.DeleteSettings(context.Background(), owner)
57 assert.NotNil(t, response)
58 assert.NoError(t, err)
59 }
60
61 func TestGetProviderSettings(t *testing.T) {
62 mock := gomock.NewController(t)
63 iamSettingsService := mocks.NewMockIAMSettingsService(mock)
64
65 iamSettingsService.EXPECT().GetSettings(context.Background(), owner).
66 Return(&model.Provider{}, nil).Times(1)
67
68 response, err := iamSettingsService.GetSettings(context.Background(), owner)
69 assert.NotNil(t, response)
70 assert.NoError(t, err)
71 }
72
73 func createProv() model.ProviderInput {
74 pinAttempts := 6
75 pinExpire := expireTime
76 pinHistory := 6
77 pinLength := 6
78 barcodeExpire := expireTime
79 barcodePrefix := "temp"
80 barcodeLength := 12
81 bcryptCost := 5
82 profileExpire := expireTime
83
84 providerInput := model.ProviderInput{
85 PinAttempts: &pinAttempts,
86 PinExpire: &pinExpire,
87 PinHistory: &pinHistory,
88 PinLength: &pinLength,
89 BarcodeExpire: &barcodeExpire,
90 BarcodePrefix: &barcodePrefix,
91 BarcodeLength: &barcodeLength,
92 BcryptCost: &bcryptCost,
93 ProfileExpire: &profileExpire,
94 }
95 return providerInput
96 }
97
View as plain text