25 lines
406 B
Go
25 lines
406 B
Go
|
package bufr
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"strings"
|
||
|
"testing"
|
||
|
)
|
||
|
|
||
|
func TestPos(t *testing.T) {
|
||
|
r := NewReader(strings.NewReader("hello world\nsecond line"))
|
||
|
|
||
|
unread := false
|
||
|
for rn, err := r.Rune(); err == nil; rn, err = r.Rune() {
|
||
|
index, line, col := r.Pos()
|
||
|
fmt.Println(string(rn), index, line, col)
|
||
|
|
||
|
if !unread && rn == '\n' {
|
||
|
for i := 0; i < 5; i++ {
|
||
|
r.UnreadRune()
|
||
|
}
|
||
|
unread = true
|
||
|
}
|
||
|
}
|
||
|
}
|