@@ -171,6 +171,8 @@ func Test_UpdateSettings(t *testing.T) {
171
171
172
172
tempDir1 := filepath .Join (t .TempDir (), "tempDir1" )
173
173
tempDir2 := filepath .Join (t .TempDir (), "tempDir2" )
174
+ nonDefaultSeverityFilter := types .NewSeverityFilter (false , true , false , true )
175
+ nonDefaultIssueViewOptions := types .NewIssueViewOptions (false , true )
174
176
hoverVerbosity := 1
175
177
outputFormat := "html"
176
178
settings := types.Settings {
@@ -187,8 +189,8 @@ func Test_UpdateSettings(t *testing.T) {
187
189
ManageBinariesAutomatically : "false" ,
188
190
CliPath : filepath .Join (t .TempDir (), "cli" ),
189
191
Token : "a fancy token" ,
190
- FilterSeverity : types . DefaultSeverityFilter () ,
191
- IssueViewOptions : types . DefaultIssueViewOptions () ,
192
+ FilterSeverity : & nonDefaultSeverityFilter ,
193
+ IssueViewOptions : & nonDefaultIssueViewOptions ,
192
194
TrustedFolders : []string {"trustedPath1" , "trustedPath2" },
193
195
OsPlatform : "windows" ,
194
196
OsArch : "amd64" ,
@@ -234,8 +236,8 @@ func Test_UpdateSettings(t *testing.T) {
234
236
assert .Equal (t , expectedOrgId , c .Organization ())
235
237
assert .False (t , c .ManageBinariesAutomatically ())
236
238
assert .Equal (t , settings .CliPath , c .CliSettings ().Path ())
237
- assert .Equal (t , types . DefaultSeverityFilter () , c .FilterSeverity ())
238
- assert .Equal (t , types . DefaultIssueViewOptions () , c .IssueViewOptions ())
239
+ assert .Equal (t , nonDefaultSeverityFilter , c .FilterSeverity ())
240
+ assert .Equal (t , nonDefaultIssueViewOptions , c .IssueViewOptions ())
239
241
assert .Subset (t , []types.FilePath {"trustedPath1" , "trustedPath2" }, c .TrustedFolders ())
240
242
assert .Equal (t , settings .OsPlatform , c .OsPlatform ())
241
243
assert .Equal (t , settings .OsArch , c .OsArch ())
@@ -405,18 +407,46 @@ func Test_UpdateSettings(t *testing.T) {
405
407
c := testutil .UnitTest (t )
406
408
t .Run ("filtering gets passed" , func (t * testing.T ) {
407
409
mixedSeverityFilter := types .NewSeverityFilter (true , false , true , false )
408
- UpdateSettings (c , types.Settings {FilterSeverity : mixedSeverityFilter })
410
+ UpdateSettings (c , types.Settings {FilterSeverity : & mixedSeverityFilter })
409
411
410
412
assert .Equal (t , mixedSeverityFilter , c .FilterSeverity ())
411
413
})
414
+ t .Run ("equivalent of the \" empty\" struct as a filter gets passed" , func (t * testing.T ) {
415
+ emptyLikeSeverityFilter := types .NewSeverityFilter (false , false , false , false )
416
+ UpdateSettings (c , types.Settings {FilterSeverity : & emptyLikeSeverityFilter })
417
+
418
+ assert .Equal (t , emptyLikeSeverityFilter , c .FilterSeverity ())
419
+ })
420
+ t .Run ("omitting filter does not cause an update" , func (t * testing.T ) {
421
+ mixedSeverityFilter := types .NewSeverityFilter (false , false , true , false )
422
+ UpdateSettings (c , types.Settings {FilterSeverity : & mixedSeverityFilter })
423
+ assert .Equal (t , mixedSeverityFilter , c .FilterSeverity ())
424
+
425
+ UpdateSettings (c , types.Settings {})
426
+ assert .Equal (t , mixedSeverityFilter , c .FilterSeverity ())
427
+ })
412
428
})
413
429
414
430
t .Run ("issue view options" , func (t * testing.T ) {
415
431
c := testutil .UnitTest (t )
416
432
t .Run ("filtering gets passed" , func (t * testing.T ) {
417
433
mixedIssueViewOptions := types .NewIssueViewOptions (false , true )
418
- UpdateSettings (c , types.Settings {IssueViewOptions : mixedIssueViewOptions })
434
+ UpdateSettings (c , types.Settings {IssueViewOptions : & mixedIssueViewOptions })
435
+
436
+ assert .Equal (t , mixedIssueViewOptions , c .IssueViewOptions ())
437
+ })
438
+ t .Run ("equivalent of the \" empty\" struct as a filter gets passed" , func (t * testing.T ) {
439
+ emptyLikeIssueViewOptions := types .NewIssueViewOptions (false , false )
440
+ UpdateSettings (c , types.Settings {IssueViewOptions : & emptyLikeIssueViewOptions })
441
+
442
+ assert .Equal (t , emptyLikeIssueViewOptions , c .IssueViewOptions ())
443
+ })
444
+ t .Run ("omitting filter does not cause an update" , func (t * testing.T ) {
445
+ mixedIssueViewOptions := types .NewIssueViewOptions (false , true )
446
+ UpdateSettings (c , types.Settings {IssueViewOptions : & mixedIssueViewOptions })
447
+ assert .Equal (t , mixedIssueViewOptions , c .IssueViewOptions ())
419
448
449
+ UpdateSettings (c , types.Settings {})
420
450
assert .Equal (t , mixedIssueViewOptions , c .IssueViewOptions ())
421
451
})
422
452
})
0 commit comments