summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Burke <rich.g.burke@gmail.com>2019-01-05 14:18:50 +0000
committerRichard Burke <rich.g.burke@gmail.com>2019-01-05 14:18:50 +0000
commit6c2ebfcb0178249dd8ec63eafe19e36b5b3b78fa (patch)
tree7086d40b033fad117dae6218f3f819de7d990d3d
parent501de465d701536ffe04821e4253b33962ea4bb1 (diff)
Improve errors messages for invalid command syntax
-rw-r--r--cmd/grv/config_parse.go8
-rw-r--r--cmd/grv/config_parse_test.go8
2 files changed, 8 insertions, 8 deletions
diff --git a/cmd/grv/config_parse.go b/cmd/grv/config_parse.go
index 67b4a17..8c6f24d 100644
--- a/cmd/grv/config_parse.go
+++ b/cmd/grv/config_parse.go
@@ -460,15 +460,15 @@ func (parser *ConfigParser) parseCommand(commandToken *ConfigToken) (command Con
case err != nil:
return
case token.err != nil:
- err = parser.generateParseError(token, "Syntax Error")
+ err = parser.generateParseError(token, "Syntax Error when parsing %v command", commandToken.value)
return
case token.tokenType == CtkEOF:
- err = parser.generateParseError(token, "Unexpected EOF")
+ err = parser.generateParseError(token, "Unexpected EOF when parsing %v command", commandToken.value)
eof = true
return
case (token.tokenType & expectedConfigTokenType) == 0:
- err = parser.generateParseError(token, "Expected %v but got %v: \"%v\"",
- ConfigTokenName(expectedConfigTokenType), ConfigTokenName(token.tokenType), token.value)
+ err = parser.generateParseError(token, "Invalid argument for %v command: Expected %v but got %v: \"%v\"",
+ commandToken.value, ConfigTokenName(expectedConfigTokenType), ConfigTokenName(token.tokenType), token.value)
return
}
diff --git a/cmd/grv/config_parse_test.go b/cmd/grv/config_parse_test.go
index 63fe773..629a1cb 100644
--- a/cmd/grv/config_parse_test.go
+++ b/cmd/grv/config_parse_test.go
@@ -550,15 +550,15 @@ func TestErrorsAreReceivedForInvalidConfigTokenSequences(t *testing.T) {
},
{
input: "set theme",
- expectedErrorMessage: ConfigFile + ":1:9 Unexpected EOF",
+ expectedErrorMessage: ConfigFile + ":1:9 Unexpected EOF when parsing set command",
},
{
input: "set theme --name mytheme",
- expectedErrorMessage: ConfigFile + ":1:11 Expected Word but got Option: \"--name\"",
+ expectedErrorMessage: ConfigFile + ":1:11 Invalid argument for set command: Expected Word but got Option: \"--name\"",
},
{
input: "set theme\nmytheme",
- expectedErrorMessage: ConfigFile + ":1:10 Expected Word but got Terminator: \"\n\"",
+ expectedErrorMessage: ConfigFile + ":1:10 Invalid argument for set command: Expected Word but got Terminator: \"\n\"",
},
{
input: "theme --name mytheme --component CommitView.CommitDate --bgcolour NONE --fgcolour YELLOW\n",
@@ -566,7 +566,7 @@ func TestErrorsAreReceivedForInvalidConfigTokenSequences(t *testing.T) {
},
{
input: "addtab",
- expectedErrorMessage: ConfigFile + ":1:6 Unexpected EOF",
+ expectedErrorMessage: ConfigFile + ":1:6 Unexpected EOF when parsing addtab command",
},
{
input: "def --name",