From fa1c2ab68c091f39185116788f3960fb5be5a6a0 Mon Sep 17 00:00:00 2001 From: Thomas Pelletier Date: Tue, 1 Dec 2015 14:02:02 +0100 Subject: [PATCH] Error when parsing an empty key --- keysparsing.go | 3 +++ keysparsing_test.go | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/keysparsing.go b/keysparsing.go index 7535379..4deed81 100644 --- a/keysparsing.go +++ b/keysparsing.go @@ -70,6 +70,9 @@ func parseKey(key string) ([]string, error) { if buffer.Len() > 0 { groups = append(groups, buffer.String()) } + if len(groups) == 0 { + return nil, fmt.Errorf("empty key") + } return groups, nil } diff --git a/keysparsing_test.go b/keysparsing_test.go index 2d5379f..ef7e2a5 100644 --- a/keysparsing_test.go +++ b/keysparsing_test.go @@ -42,3 +42,8 @@ func TestDottedKeyBasic(t *testing.T) { func TestBaseKeyPound(t *testing.T) { testError(t, "hello#world", "invalid bare character: #") } + +func TestEmptyKey(t *testing.T) { + testError(t, "", "empty key") + testError(t, " ", "empty key") +}