@@ -2,6 +2,7 @@ package cpe
22
33import (
44 "bufio"
5+ "bytes"
56 "compress/gzip"
67 "errors"
78 "fmt"
@@ -451,22 +452,31 @@ func TestDictionary(t *testing.T) {
451452 defer gz .Close ()
452453
453454 s := bufio .NewScanner (gz )
455+ defer func () {
456+ if err := s .Err (); err != nil {
457+ t .Error (err )
458+ }
459+ }()
460+ back := make ([]byte , 0 , 128 )
454461 for i := 1 ; s .Scan (); i ++ {
455462 in := s .Text ()
456463 if len (in ) == 0 || strings .HasPrefix (in , "#" ) {
457464 continue
458465 }
459- wfn , err := Unbind (in )
466+
467+ var wfn WFN
468+ if err := wfn .UnmarshalFS (in ); err != nil {
469+ t .Fatalf ("%v: %#q" , err , in )
470+ }
471+ b , err := wfn .AppendText (back [:0 ])
460472 if err != nil {
461473 t .Fatalf ("%v: %#q" , err , in )
462474 }
463- if got , want := wfn .BindFS (), s .Text (); got != want {
464- t .Logf (fmt , i , in , got , want )
475+
476+ if got , want := b , s .Bytes (); ! bytes .Equal (got , want ) {
477+ t .Logf (fmt , i , in , string (got ), string (want ))
465478 t .Logf ("wfn: %#v" , wfn )
466479 t .Fail ()
467480 }
468481 }
469- if err := s .Err (); err != nil {
470- t .Error (err )
471- }
472482}
0 commit comments