Skip to content

Commit c201db8

Browse files
authored
Merge pull request #42 from denislituev/fix_error_messages
Fix error messages. Replace magic numbers
2 parents 94d1011 + a4f6595 commit c201db8

File tree

6 files changed

+92
-80
lines changed

6 files changed

+92
-80
lines changed

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
plex
2-
vendor/*
2+
vendor/*
3+
4+
.idea

cmd/commands.go

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,14 @@ import (
1515
)
1616

1717
const (
18-
errKeyNotFound = "Key not found"
19-
errNoPlexToken = "no plex auth token in datastore"
20-
errPleaseSignIn = "use command 'sign-in' or 'link-app' to authorize us"
21-
errNoPlexServerInfo = "no plex server in datastore"
22-
errPleaseChooseServer = "use command 'pick-server' to pick a plex server :)"
18+
errKeyNotFound = "key not found"
19+
errNoPlexToken = "no plex auth token in datastore"
20+
errPleaseSignIn = "use command 'sign-in' or 'link-app' to authorize us"
21+
errNoPlexServerInfo = "no plex server in datastore"
22+
errPleaseChooseServer = "use command 'pick-server' to pick a plex server :)"
23+
errFailedToGetPlexToken = "failed to get plex token: %v"
24+
errInvalidSelection = "invalid selection"
25+
errEpisodeIdIsRequired = "episode id is required"
2326
)
2427

2528
func initPlex(db store, checkForToken bool, checkForServerInfo bool) (*plex.Plex, error) {
@@ -33,7 +36,7 @@ func initPlex(db store, checkForToken bool, checkForServerInfo bool) (*plex.Plex
3336
if err != nil && err.Error() == errKeyNotFound {
3437
return plexConn, fmt.Errorf("%s\n%s", errNoPlexToken, errPleaseSignIn)
3538
} else if err != nil {
36-
return plexConn, fmt.Errorf("failed getting plex token: %v", err)
39+
return plexConn, fmt.Errorf(errFailedToGetPlexToken, err)
3740
}
3841

3942
return plex.New("", plexToken)
@@ -46,7 +49,7 @@ func initPlex(db store, checkForToken bool, checkForServerInfo bool) (*plex.Plex
4649
plexToken, err := db.getPlexToken()
4750

4851
if err != nil {
49-
return plexConn, fmt.Errorf("failed getting plex token: %v", err)
52+
return plexConn, fmt.Errorf(errFailedToGetPlexToken, err)
5053
}
5154

5255
plexServer, err := db.getPlexServer()
@@ -444,7 +447,7 @@ func pickServer(c *cli.Context) error {
444447

445448
// bound check input
446449
if serverIndex < 0 || serverIndex > (len(servers)-1) {
447-
return errors.New("invalid selection")
450+
return errors.New(errInvalidSelection)
448451
}
449452

450453
selectedServer := servers[serverIndex]
@@ -463,7 +466,7 @@ func pickServer(c *cli.Context) error {
463466

464467
// bound check again
465468
if urlIndex < 0 || urlIndex > (len(selectedServer.Connection)-1) {
466-
return errors.New("invalid selection")
469+
return errors.New(errInvalidSelection)
467470
}
468471

469472
// persist selection to disk
@@ -674,7 +677,7 @@ func getEpisode(c *cli.Context) error {
674677
}
675678

676679
if c.NArg() == 0 {
677-
return cli.NewExitError("episode id is required", 1)
680+
return cli.NewExitError(errEpisodeIdIsRequired, 1)
678681
}
679682

680683
result, err := plexConn.GetEpisode(c.Args().First())
@@ -793,7 +796,7 @@ func stopPlayback(c *cli.Context) error {
793796

794797
// bound check user input
795798
if sessionIndex < 0 || sessionIndex > sessionCount-1 {
796-
return cli.NewExitError("invalid selection", 1)
799+
return cli.NewExitError(errInvalidSelection, 1)
797800
}
798801

799802
selectedSession := sessions.MediaContainer.Metadata[sessionIndex]
@@ -856,7 +859,7 @@ func getMetadata(c *cli.Context) error {
856859
}
857860

858861
if c.NArg() == 0 {
859-
return cli.NewExitError("episode id is required", 1)
862+
return cli.NewExitError(errEpisodeIdIsRequired, 1)
860863
}
861864

862865
result, err := plexConn.GetMetadata(c.Args().First())
@@ -925,7 +928,7 @@ func downloadMedia(c *cli.Context) error {
925928

926929
// bound check user input
927930
if selection < 0 || selection > len(results.MediaContainer.Metadata)-1 {
928-
return cli.NewExitError("invalid selection", 1)
931+
return cli.NewExitError(errInvalidSelection, 1)
929932
}
930933

931934
selectedMedia := results.MediaContainer.Metadata[selection]

error_types.go

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,17 @@
11
package plex
22

33
// ErrorInvalidToken a constant to help check invalid token errors
4-
const ErrorInvalidToken = "invalid token"
4+
const (
5+
ErrorInvalidToken = "invalid token"
6+
ErrorNotAuthorized = "you are not authorized to access that server"
7+
ErrorCommon = "error: %s"
8+
ErrorKeyIsRequired = "key is required"
9+
ErrorTitleRequired = "a title is required"
10+
ErrorServerReplied = "server replied with %d status code"
11+
ErrorMissingSessionKey = "missing sessionKey"
12+
ErrorUrlTokenRequired = "url or a token is required"
13+
ErrorServer = "server error: %s"
14+
ErrorPINNotAuthorized = "pin is not authorized yet"
15+
ErrorLinkAccount = "failed to link account: %s"
16+
ErrorFailedToSetWebhook = "failed to set webhook"
17+
)

0 commit comments

Comments
 (0)