This commit is contained in:
@@ -25,7 +25,7 @@ func TestRegexp(t *testing.T) {
|
||||
Draw(t, "input")
|
||||
|
||||
p := pbytes.Regexp(string(needle))
|
||||
result, err := p(gigaparsec.MakeState(bytes.NewReader(input)))
|
||||
result, err := p.RunToResult(bytes.NewReader(input))
|
||||
succeeded, val, next := result.Status()
|
||||
|
||||
must.NoError(t, err)
|
||||
@@ -40,7 +40,7 @@ func TestRegexp(t *testing.T) {
|
||||
Draw(t, "input")
|
||||
|
||||
p := pbytes.Regexp(string(needle))
|
||||
result, err := p(gigaparsec.MakeState(bytes.NewReader(input)))
|
||||
result, err := p.RunToResult(bytes.NewReader(input))
|
||||
succeeded, _, _ := result.Status()
|
||||
|
||||
must.NoError(t, err)
|
||||
@@ -49,21 +49,21 @@ func TestRegexp(t *testing.T) {
|
||||
t.Run("fails on unexpected error", func(t *testing.T) {
|
||||
expectedErr := errors.New("it broke")
|
||||
p := pbytes.Regexp("nope")
|
||||
result, err := p(gigaparsec.MakeState(ptest.ErrReaderAt(expectedErr)))
|
||||
result, err := p.RunToResult(ptest.ErrReaderAt(expectedErr))
|
||||
succeeded, _, _ := result.Status()
|
||||
test.ErrorIs(t, err, expectedErr)
|
||||
test.False(t, succeeded)
|
||||
})
|
||||
t.Run("returns a useful Got value", func(t *testing.T) {
|
||||
p := pbytes.Regexp("hello")
|
||||
result, err := p(gigaparsec.MakeState(strings.NewReader("hellaparsec")))
|
||||
result, err := p.RunToResult(strings.NewReader("hellaparsec"))
|
||||
|
||||
must.NoError(t, err)
|
||||
test.StrContains(t, result.Message().Got(), "hella")
|
||||
})
|
||||
t.Run("succeeds on empty matches", func(t *testing.T) {
|
||||
p := pbytes.Regexp(".*")
|
||||
result, err := p(gigaparsec.MakeState(strings.NewReader("")))
|
||||
result, err := p.RunToResult(strings.NewReader(""))
|
||||
succeeded, value, _ := result.Status()
|
||||
must.NoError(t, err)
|
||||
must.True(t, succeeded)
|
||||
@@ -71,7 +71,7 @@ func TestRegexp(t *testing.T) {
|
||||
})
|
||||
t.Run("fails without an error at EOF", func(t *testing.T) {
|
||||
p := pbytes.Regexp("a")
|
||||
result, err := p(gigaparsec.MakeState(strings.NewReader("")))
|
||||
result, err := p.RunToResult(strings.NewReader(""))
|
||||
succeeded, _, _ := result.Status()
|
||||
must.NoError(t, err)
|
||||
must.False(t, succeeded)
|
||||
|
||||
Reference in New Issue
Block a user