Code cleanup and missing error checks

This commit is contained in:
Philipp Wolfer 2023-12-10 13:51:38 +01:00
parent 6eaef18188
commit c4193f42a1
No known key found for this signature in database
GPG key ID: 8FDF744D4919943B
7 changed files with 23 additions and 19 deletions

View file

@ -17,6 +17,7 @@ package auth
import ( import (
"fmt" "fmt"
"log"
"net/http" "net/http"
"net/url" "net/url"
@ -34,5 +35,12 @@ func RunOauth2CallbackServer(redirectURL url.URL, param string, responseChan cha
} }
}) })
go http.ListenAndServe(redirectURL.Host, nil) go runServer(redirectURL.Host)
}
func runServer(addr string) {
err := http.ListenAndServe(addr, nil)
if err != nil {
log.Fatal(err)
}
} }

View file

@ -79,7 +79,10 @@ func listRequest[T Result](c Client, path string, offset int, limit int) (result
"limit": strconv.Itoa(limit), "limit": strconv.Itoa(limit),
}). }).
SetResult(&result) SetResult(&result)
c.setToken(request) err = c.setToken(request)
if err != nil {
return
}
response, err := request.Get(path) response, err := request.Get(path)
if response.StatusCode() != 200 { if response.StatusCode() != 200 {

View file

@ -105,7 +105,7 @@ func Write(data io.Writer, listens models.ListensList) (lastTimestamp time.Time,
if !ok || rating == "" { if !ok || rating == "" {
rating = "L" rating = "L"
} }
tsvWriter.Write([]string{ err = tsvWriter.Write([]string{
listen.ArtistName(), listen.ArtistName(),
listen.ReleaseName, listen.ReleaseName,
listen.TrackName, listen.TrackName,

View file

@ -103,7 +103,7 @@ func TestWrite(t *testing.T) {
require.NoError(t, err) require.NoError(t, err)
lastTimestamp, err := scrobblerlog.Write(buffer, log.Listens) lastTimestamp, err := scrobblerlog.Write(buffer, log.Listens)
require.NoError(t, err) require.NoError(t, err)
result := string(buffer.Bytes()) result := buffer.String()
lines := strings.Split(result, "\n") lines := strings.Split(result, "\n")
assert.Equal(5, len(lines)) assert.Equal(5, len(lines))
assert.Equal("#AUDIOSCROBBLER/1.1", lines[0]) assert.Equal("#AUDIOSCROBBLER/1.1", lines[0])

View file

@ -91,18 +91,18 @@ func (b *ScrobblerLogBackend) StartImport() error {
} else { } else {
// Verify existing file is a scrobbler log // Verify existing file is a scrobbler log
reader := bufio.NewReader(file) reader := bufio.NewReader(file)
err = ReadHeader(reader, &b.log) if err = ReadHeader(reader, &b.log); err != nil {
if err != nil {
file.Close() file.Close()
return err return err
} }
file.Seek(0, 2) if _, err = file.Seek(0, 2); err != nil {
return err
}
} }
} }
if !b.append { if !b.append {
err = WriteHeader(file, &b.log) if err = WriteHeader(file, &b.log); err != nil {
if err != nil {
file.Close() file.Close()
return err return err
} }

View file

@ -24,11 +24,3 @@ func GetServiceConfigFromFlag(cmd *cobra.Command, flagName string) (config.Servi
name := cmd.Flag(flagName).Value.String() name := cmd.Flag(flagName).Value.String()
return config.GetService(name) return config.GetService(name)
} }
func getInt64FromFlag(cmd *cobra.Command, flagName string) (result int64) {
result, err := cmd.Flags().GetInt64(flagName)
if err != nil {
result = 0
}
return
}

View file

@ -61,7 +61,8 @@ func InitConfig(cfgFile string) error {
// Create global config if it does not exist // Create global config if it does not exist
if viper.ConfigFileUsed() == "" && cfgFile == "" { if viper.ConfigFileUsed() == "" && cfgFile == "" {
if err := os.MkdirAll(configDir, 0750); err == nil { if err := os.MkdirAll(configDir, 0750); err == nil {
viper.SafeWriteConfig() // This call is expected to return an error if the file already exists
viper.SafeWriteConfig() //nolint:errcheck
} }
} }
@ -82,7 +83,7 @@ func WriteConfig(removedKeys ...string) error {
configMap := viper.AllSettings() configMap := viper.AllSettings()
for _, key := range removedKeys { for _, key := range removedKeys {
c := configMap c := configMap
ok := true var ok bool
subKeys := strings.Split(key, ".") subKeys := strings.Split(key, ".")
keyLen := len(subKeys) keyLen := len(subKeys)
// Deep search the key in the config and delete the deepest key, if it exists // Deep search the key in the config and delete the deepest key, if it exists