diff --git a/scanner.go b/scanner.go index 08e7476..5d2c268 100644 --- a/scanner.go +++ b/scanner.go @@ -91,6 +91,8 @@ func (s *Scanner) Pop() Token { } // PopValue token, or panic with Error. +// +// "context" is used to assist the user if the value can not be popped, eg. "expected value but got " func (s *Scanner) PopValue(context string) string { t := s.Pop() if !t.IsValue() { diff --git a/scanner_test.go b/scanner_test.go index 3e37d38..9324a18 100644 --- a/scanner_test.go +++ b/scanner_test.go @@ -3,24 +3,24 @@ package kong import ( "testing" - "github.com/gotestyourself/gotestyourself/assert" + "github.com/stretchr/testify/require" ) func TestScannerTake(t *testing.T) { s := Scan("a", "b", "c") - assert.Assert(t, s.Pop().Value == "a") - assert.Assert(t, s.Pop().Value == "b") - assert.Assert(t, s.Pop().Value == "c") - assert.Assert(t, s.Pop().Type == EOLToken) + require.Equal(t, s.Pop().Value, "a") + require.Equal(t, s.Pop().Value, "b") + require.Equal(t, s.Pop().Value, "c") + require.Equal(t, s.Pop().Type, EOLToken) } func TestScannerPeek(t *testing.T) { s := Scan("a", "b", "c") - assert.Assert(t, s.Peek().Value == "a") - assert.Assert(t, s.Pop().Value == "a") - assert.Assert(t, s.Peek().Value == "b") - assert.Assert(t, s.Pop().Value == "b") - assert.Assert(t, s.Peek().Value == "c") - assert.Assert(t, s.Pop().Value == "c") - assert.Assert(t, s.Peek().Type == EOLToken) + require.Equal(t, s.Peek().Value, "a") + require.Equal(t, s.Pop().Value, "a") + require.Equal(t, s.Peek().Value, "b") + require.Equal(t, s.Pop().Value, "b") + require.Equal(t, s.Peek().Value, "c") + require.Equal(t, s.Pop().Value, "c") + require.Equal(t, s.Peek().Type, EOLToken) }