refactor(config): copylocks and staticcheck findings (#1261)

refactor: copylocks and staticcheck findings

Refactor mutex handling, optimize byte slice creation, and clean up code in accordance with go.staticcheck and copylocks guidelines.

- Changed AppConfig's mutex to *sync.Mutex, preventing mutex copying and enhancing thread safety.
- Simplified byte slice initialization in writeConfig for efficiency.
- Removed redundant return in DynamicReload for better code clarity.
This commit is contained in:
soup 2023-11-19 16:03:53 +01:00 committed by GitHub
parent 76d749b301
commit d8c977b5ba
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 7 deletions

View file

@ -15,7 +15,7 @@ import (
func TestAppConfig_processLines(t *testing.T) {
type fields struct {
Config *domain.Config
m sync.Mutex
m *sync.Mutex
}
type args struct {
lines []string
@ -30,7 +30,7 @@ func TestAppConfig_processLines(t *testing.T) {
name: "append missing",
fields: fields{
Config: &domain.Config{CheckForUpdates: true, LogLevel: "TRACE"},
m: sync.Mutex{},
m: new(sync.Mutex),
},
args: args{[]string{}},
want: []string{"# Check for updates", "#", "checkForUpdates = true", "# Log level", "#", "# Default: \"DEBUG\"", "#", "# Options: \"ERROR\", \"DEBUG\", \"INFO\", \"WARN\", \"TRACE\"", "#", `logLevel = "TRACE"`, "# Log Path", "#", "# Optional", "#", "#logPath = \"\""},
@ -39,7 +39,7 @@ func TestAppConfig_processLines(t *testing.T) {
name: "update existing",
fields: fields{
Config: &domain.Config{CheckForUpdates: true, LogLevel: "TRACE"},
m: sync.Mutex{},
m: new(sync.Mutex),
},
args: args{[]string{"# Check for updates", "#", "checkForUpdates = false", "# Log level", "#", "# Default: \"DEBUG\"", "#", "# Options: \"ERROR\", \"DEBUG\", \"INFO\", \"WARN\", \"TRACE\"", "#", `logLevel = "TRACE"`, "# Log Path", "#", "# Optional", "#", "#logPath = \"\""}},
want: []string{"# Check for updates", "#", "checkForUpdates = true", "# Log level", "#", "# Default: \"DEBUG\"", "#", "# Options: \"ERROR\", \"DEBUG\", \"INFO\", \"WARN\", \"TRACE\"", "#", `logLevel = "TRACE"`, "# Log Path", "#", "# Optional", "#", "#logPath = \"\""},