Skip to content

Commit 658f8a2

Browse files
committed
f
1 parent 2e22f8d commit 658f8a2

File tree

4 files changed

+73
-25
lines changed

4 files changed

+73
-25
lines changed

api/controllers/kubernetes/install/app_test.go

Lines changed: 31 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
5656
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
5757
mock.InOrder(
5858
am.On("ValidateConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
59-
am.On("SetConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
59+
am.On("PatchConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
6060
)
6161
},
6262
expectedErr: false,
@@ -71,7 +71,7 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
7171
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
7272
mock.InOrder(
7373
am.On("ValidateConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
74-
am.On("SetConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
74+
am.On("PatchConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
7575
)
7676
},
7777
expectedErr: false,
@@ -86,7 +86,7 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
8686
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
8787
mock.InOrder(
8888
am.On("ValidateConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
89-
am.On("SetConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
89+
am.On("PatchConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
9090
)
9191
},
9292
expectedErr: false,
@@ -115,7 +115,7 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
115115
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
116116
mock.InOrder(
117117
am.On("ValidateConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
118-
am.On("SetConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(errors.New("set config error")),
118+
am.On("PatchConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(errors.New("set config error")),
119119
)
120120
},
121121
expectedErr: true,
@@ -192,6 +192,26 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
192192
}
193193

194194
func TestInstallController_GetAppConfigValues(t *testing.T) {
195+
appConfig := kotsv1beta1.Config{
196+
Spec: kotsv1beta1.ConfigSpec{
197+
Groups: []kotsv1beta1.ConfigGroup{
198+
{
199+
Name: "test-group",
200+
Title: "Test Group",
201+
Items: []kotsv1beta1.ConfigItem{
202+
{
203+
Name: "test-item",
204+
Type: "text",
205+
Title: "Test Item",
206+
Default: multitype.BoolOrString{StrVal: "default"},
207+
Value: multitype.BoolOrString{StrVal: "value"},
208+
},
209+
},
210+
},
211+
},
212+
},
213+
}
214+
195215
tests := []struct {
196216
name string
197217
setupMocks func(*appconfig.MockAppConfigManager, *store.MockStore)
@@ -205,7 +225,8 @@ func TestInstallController_GetAppConfigValues(t *testing.T) {
205225
"test-item": "test-value",
206226
"another-item": "another-value",
207227
}
208-
am.On("GetConfigValues").Return(expectedValues, nil)
228+
am.On("GetConfig", appConfig).Return(appConfig, nil)
229+
am.On("GetConfigValues", appConfig, false).Return(expectedValues, nil)
209230
},
210231
expectedValues: map[string]string{
211232
"test-item": "test-value",
@@ -216,15 +237,17 @@ func TestInstallController_GetAppConfigValues(t *testing.T) {
216237
{
217238
name: "get config values error",
218239
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
219-
am.On("GetConfigValues").Return(nil, errors.New("get config values error"))
240+
am.On("GetConfig", appConfig).Return(appConfig, nil)
241+
am.On("GetConfigValues", appConfig, false).Return(nil, errors.New("get config values error"))
220242
},
221243
expectedValues: nil,
222244
expectedErr: true,
223245
},
224246
{
225247
name: "empty config values",
226248
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
227-
am.On("GetConfigValues").Return(map[string]string{}, nil)
249+
am.On("GetConfig", appConfig).Return(appConfig, nil)
250+
am.On("GetConfigValues", appConfig, false).Return(map[string]string{}, nil)
228251
},
229252
expectedValues: map[string]string{},
230253
expectedErr: false,
@@ -241,6 +264,7 @@ func TestInstallController_GetAppConfigValues(t *testing.T) {
241264
controller, err := NewInstallController(
242265
WithAppConfigManager(mockAppConfigManager),
243266
WithStore(mockStore),
267+
WithReleaseData(getTestReleaseData(&appConfig)),
244268
)
245269
require.NoError(t, err)
246270

api/controllers/kubernetes/install/controller_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ func TestSetupInfra(t *testing.T) {
299299
expectedState: StateSucceeded,
300300
setupMocks: func(ki kubernetesinstallation.Installation, im *installation.MockInstallationManager, fm *infra.MockInfraManager, mr *metrics.MockReporter, st *store.MockStore, am *appconfig.MockAppConfigManager) {
301301
mock.InOrder(
302-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(configValues, nil),
302+
am.On("GetKotsadmConfigValues", appConfig).Return(configValues, nil),
303303
fm.On("Install", mock.Anything, ki, configValues).Return(nil),
304304
// TODO: we are not yet reporting
305305
// mr.On("ReportInstallationSucceeded", mock.Anything),
@@ -313,7 +313,7 @@ func TestSetupInfra(t *testing.T) {
313313
expectedState: StateInfrastructureInstallFailed,
314314
setupMocks: func(ki kubernetesinstallation.Installation, im *installation.MockInstallationManager, fm *infra.MockInfraManager, mr *metrics.MockReporter, st *store.MockStore, am *appconfig.MockAppConfigManager) {
315315
mock.InOrder(
316-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(configValues, nil),
316+
am.On("GetKotsadmConfigValues", appConfig).Return(configValues, nil),
317317
fm.On("Install", mock.Anything, ki, configValues).Return(errors.New("install error")),
318318
st.LinuxInfraMockStore.On("GetStatus").Return(types.Status{Description: "install error"}, nil),
319319
// TODO: we are not yet reporting
@@ -328,7 +328,7 @@ func TestSetupInfra(t *testing.T) {
328328
expectedState: StateInfrastructureInstallFailed,
329329
setupMocks: func(ki kubernetesinstallation.Installation, im *installation.MockInstallationManager, fm *infra.MockInfraManager, mr *metrics.MockReporter, st *store.MockStore, am *appconfig.MockAppConfigManager) {
330330
mock.InOrder(
331-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(configValues, nil),
331+
am.On("GetKotsadmConfigValues", appConfig).Return(configValues, nil),
332332
fm.On("Install", mock.Anything, ki, configValues).Return(errors.New("install error")),
333333
st.LinuxInfraMockStore.On("GetStatus").Return(nil, assert.AnError),
334334
)
@@ -341,7 +341,7 @@ func TestSetupInfra(t *testing.T) {
341341
expectedState: StateInfrastructureInstallFailed,
342342
setupMocks: func(ki kubernetesinstallation.Installation, im *installation.MockInstallationManager, fm *infra.MockInfraManager, mr *metrics.MockReporter, st *store.MockStore, am *appconfig.MockAppConfigManager) {
343343
mock.InOrder(
344-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(configValues, nil),
344+
am.On("GetKotsadmConfigValues", appConfig).Return(configValues, nil),
345345
fm.On("Install", mock.Anything, ki, configValues).Panic("this is a panic"),
346346
st.LinuxInfraMockStore.On("GetStatus").Return(types.Status{Description: "this is a panic"}, nil),
347347
// TODO: we are not yet reporting
@@ -364,7 +364,7 @@ func TestSetupInfra(t *testing.T) {
364364
expectedState: StateInstallationConfigured,
365365
setupMocks: func(ki kubernetesinstallation.Installation, im *installation.MockInstallationManager, fm *infra.MockInfraManager, mr *metrics.MockReporter, st *store.MockStore, am *appconfig.MockAppConfigManager) {
366366
mock.InOrder(
367-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(kotsv1beta1.ConfigValues{}, assert.AnError),
367+
am.On("GetKotsadmConfigValues", appConfig).Return(kotsv1beta1.ConfigValues{}, assert.AnError),
368368
)
369369
},
370370
expectedErr: assert.AnError,

api/controllers/linux/install/app_test.go

Lines changed: 31 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
5656
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
5757
mock.InOrder(
5858
am.On("ValidateConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
59-
am.On("SetConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
59+
am.On("PatchConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
6060
)
6161
},
6262
expectedErr: false,
@@ -71,7 +71,7 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
7171
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
7272
mock.InOrder(
7373
am.On("ValidateConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
74-
am.On("SetConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
74+
am.On("PatchConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
7575
)
7676
},
7777
expectedErr: false,
@@ -86,7 +86,7 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
8686
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
8787
mock.InOrder(
8888
am.On("ValidateConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
89-
am.On("SetConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
89+
am.On("PatchConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
9090
)
9191
},
9292
expectedErr: false,
@@ -115,7 +115,7 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
115115
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
116116
mock.InOrder(
117117
am.On("ValidateConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(nil),
118-
am.On("SetConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(errors.New("set config error")),
118+
am.On("PatchConfigValues", appConfig, map[string]string{"test-item": "new-value"}).Return(errors.New("set config error")),
119119
)
120120
},
121121
expectedErr: true,
@@ -192,6 +192,26 @@ func TestInstallController_PatchAppConfigValues(t *testing.T) {
192192
}
193193

194194
func TestInstallController_GetAppConfigValues(t *testing.T) {
195+
appConfig := kotsv1beta1.Config{
196+
Spec: kotsv1beta1.ConfigSpec{
197+
Groups: []kotsv1beta1.ConfigGroup{
198+
{
199+
Name: "test-group",
200+
Title: "Test Group",
201+
Items: []kotsv1beta1.ConfigItem{
202+
{
203+
Name: "test-item",
204+
Type: "text",
205+
Title: "Test Item",
206+
Default: multitype.BoolOrString{StrVal: "default"},
207+
Value: multitype.BoolOrString{StrVal: "value"},
208+
},
209+
},
210+
},
211+
},
212+
},
213+
}
214+
195215
tests := []struct {
196216
name string
197217
setupMocks func(*appconfig.MockAppConfigManager, *store.MockStore)
@@ -205,7 +225,8 @@ func TestInstallController_GetAppConfigValues(t *testing.T) {
205225
"test-item": "test-value",
206226
"another-item": "another-value",
207227
}
208-
am.On("GetConfigValues").Return(expectedValues, nil)
228+
am.On("GetConfig", appConfig).Return(appConfig, nil)
229+
am.On("GetConfigValues", appConfig, false).Return(expectedValues, nil)
209230
},
210231
expectedValues: map[string]string{
211232
"test-item": "test-value",
@@ -216,15 +237,17 @@ func TestInstallController_GetAppConfigValues(t *testing.T) {
216237
{
217238
name: "get config values error",
218239
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
219-
am.On("GetConfigValues").Return(nil, errors.New("get config values error"))
240+
am.On("GetConfig", appConfig).Return(appConfig, nil)
241+
am.On("GetConfigValues", appConfig, false).Return(nil, errors.New("get config values error"))
220242
},
221243
expectedValues: nil,
222244
expectedErr: true,
223245
},
224246
{
225247
name: "empty config values",
226248
setupMocks: func(am *appconfig.MockAppConfigManager, st *store.MockStore) {
227-
am.On("GetConfigValues").Return(map[string]string{}, nil)
249+
am.On("GetConfig", appConfig).Return(appConfig, nil)
250+
am.On("GetConfigValues", appConfig, false).Return(map[string]string{}, nil)
228251
},
229252
expectedValues: map[string]string{},
230253
expectedErr: false,
@@ -241,6 +264,7 @@ func TestInstallController_GetAppConfigValues(t *testing.T) {
241264
controller, err := NewInstallController(
242265
WithAppConfigManager(mockAppConfigManager),
243266
WithStore(mockStore),
267+
WithReleaseData(getTestReleaseData(&appConfig)),
244268
)
245269
require.NoError(t, err)
246270

api/controllers/linux/install/controller_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1058,7 +1058,7 @@ func TestSetupInfra(t *testing.T) {
10581058
expectedState: StateSucceeded,
10591059
setupMocks: func(rc runtimeconfig.RuntimeConfig, pm *preflight.MockHostPreflightManager, im *installation.MockInstallationManager, fm *infra.MockInfraManager, am *appconfig.MockAppConfigManager, mr *metrics.MockReporter, st *store.MockStore) {
10601060
mock.InOrder(
1061-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(configValues, nil),
1061+
am.On("GetKotsadmConfigValues", appConfig).Return(configValues, nil),
10621062
fm.On("Install", mock.Anything, rc, configValues).Return(nil),
10631063
mr.On("ReportInstallationSucceeded", mock.Anything),
10641064
)
@@ -1075,7 +1075,7 @@ func TestSetupInfra(t *testing.T) {
10751075
mock.InOrder(
10761076
st.LinuxPreflightMockStore.On("GetOutput").Return(failedPreflightOutput, nil),
10771077
mr.On("ReportPreflightsBypassed", mock.Anything, failedPreflightOutput),
1078-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(configValues, nil),
1078+
am.On("GetKotsadmConfigValues", appConfig).Return(configValues, nil),
10791079
fm.On("Install", mock.Anything, rc, configValues).Return(nil),
10801080
mr.On("ReportInstallationSucceeded", mock.Anything),
10811081
)
@@ -1100,7 +1100,7 @@ func TestSetupInfra(t *testing.T) {
11001100
expectedState: StateInfrastructureInstallFailed,
11011101
setupMocks: func(rc runtimeconfig.RuntimeConfig, pm *preflight.MockHostPreflightManager, im *installation.MockInstallationManager, fm *infra.MockInfraManager, am *appconfig.MockAppConfigManager, mr *metrics.MockReporter, st *store.MockStore) {
11021102
mock.InOrder(
1103-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(configValues, nil),
1103+
am.On("GetKotsadmConfigValues", appConfig).Return(configValues, nil),
11041104
fm.On("Install", mock.Anything, rc, configValues).Return(errors.New("install error")),
11051105
st.LinuxInfraMockStore.On("GetStatus").Return(types.Status{Description: "install error"}, nil),
11061106
mr.On("ReportInstallationFailed", mock.Anything, errors.New("install error")),
@@ -1116,7 +1116,7 @@ func TestSetupInfra(t *testing.T) {
11161116
expectedState: StateInfrastructureInstallFailed,
11171117
setupMocks: func(rc runtimeconfig.RuntimeConfig, pm *preflight.MockHostPreflightManager, im *installation.MockInstallationManager, fm *infra.MockInfraManager, am *appconfig.MockAppConfigManager, mr *metrics.MockReporter, st *store.MockStore) {
11181118
mock.InOrder(
1119-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(configValues, nil),
1119+
am.On("GetKotsadmConfigValues", appConfig).Return(configValues, nil),
11201120
fm.On("Install", mock.Anything, rc, configValues).Return(errors.New("install error")),
11211121
st.LinuxInfraMockStore.On("GetStatus").Return(nil, assert.AnError),
11221122
)
@@ -1131,7 +1131,7 @@ func TestSetupInfra(t *testing.T) {
11311131
expectedState: StateInfrastructureInstallFailed,
11321132
setupMocks: func(rc runtimeconfig.RuntimeConfig, pm *preflight.MockHostPreflightManager, im *installation.MockInstallationManager, fm *infra.MockInfraManager, am *appconfig.MockAppConfigManager, mr *metrics.MockReporter, st *store.MockStore) {
11331133
mock.InOrder(
1134-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(configValues, nil),
1134+
am.On("GetKotsadmConfigValues", appConfig).Return(configValues, nil),
11351135
fm.On("Install", mock.Anything, rc, configValues).Panic("this is a panic"),
11361136
st.LinuxInfraMockStore.On("GetStatus").Return(types.Status{Description: "this is a panic"}, nil),
11371137
mr.On("ReportInstallationFailed", mock.Anything, errors.New("this is a panic")),
@@ -1177,7 +1177,7 @@ func TestSetupInfra(t *testing.T) {
11771177
expectedState: StatePreflightsSucceeded,
11781178
setupMocks: func(rc runtimeconfig.RuntimeConfig, pm *preflight.MockHostPreflightManager, im *installation.MockInstallationManager, fm *infra.MockInfraManager, am *appconfig.MockAppConfigManager, mr *metrics.MockReporter, st *store.MockStore) {
11791179
mock.InOrder(
1180-
am.On("GetKotsadmConfigValues", mock.Anything, appConfig).Return(kotsv1beta1.ConfigValues{}, assert.AnError),
1180+
am.On("GetKotsadmConfigValues", appConfig).Return(kotsv1beta1.ConfigValues{}, assert.AnError),
11811181
)
11821182
},
11831183
expectedErr: assert.AnError,

0 commit comments

Comments
 (0)