Code review and fixes.
This commit is contained in:
1 parent
f2a35a9305
commit
60f7f7a2e9
12 files changed
+185
-34
No files matched your search
@@ -5,6 +5,7 @@
|
||||
package preferences
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"reflect"
|
||||
"strings"
|
||||
"testing"
|
||||
@@ -95,3 +96,22 @@ func TestWineValuesMergeRejectsInvalidEntriesByName(t *testing.T) {
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestWineValuesRejectEmbeddedControlCharacters(t *testing.T) {
|
||||
for character := rune(0); character < ' '; character++ {
|
||||
t.Run(fmt.Sprintf("U+%04X", character), func(t *testing.T) {
|
||||
settings := config.DefaultSettings()
|
||||
settings.Wine.ExcludedPrograms = []string{"Kept.exe"}
|
||||
values := FromSettings(settings)
|
||||
entry := "Game" + string(character) + ".exe"
|
||||
values.Wine.ExcludedPrograms = []string{entry}
|
||||
merged, err := values.Merge(settings)
|
||||
if err == nil || !strings.Contains(err.Error(), entry) {
|
||||
t.Fatalf("invalid entry was not named and rejected: %v", err)
|
||||
}
|
||||
if !reflect.DeepEqual(merged.Wine, settings.Wine) {
|
||||
t.Fatalf("rejected entry changed Wine settings: %+v", merged.Wine)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user