generate: testEncode uses snakes now
This commit is contained in:
parent
f646207ab1
commit
4955f66ad6
@ -231,6 +231,6 @@ func TestGenerateRun(test *testing.T) {
|
|||||||
}
|
}
|
||||||
testEncode(
|
testEncode(
|
||||||
&messageConnect,
|
&messageConnect,
|
||||||
0x0) // TODO
|
tu.S(0x0)) // TODO
|
||||||
`)
|
`)
|
||||||
}
|
}
|
||||||
|
@ -34,26 +34,25 @@ func testGenerateRun(test *testing.T, protocol *Protocol, imports string, testCa
|
|||||||
imports = `
|
imports = `
|
||||||
import "log"
|
import "log"
|
||||||
import "bytes"
|
import "bytes"
|
||||||
import "slices"
|
|
||||||
import "git.tebibyte.media/sashakoshka/hopp/tape"
|
import "git.tebibyte.media/sashakoshka/hopp/tape"
|
||||||
import tu "git.tebibyte.media/sashakoshka/hopp/internal/testutil"
|
import tu "git.tebibyte.media/sashakoshka/hopp/internal/testutil"
|
||||||
` + imports
|
` + imports
|
||||||
setup := `log.Println("*** BEGIN TEST CASE OUTPUT ***")`
|
setup := `log.Println("*** BEGIN TEST CASE OUTPUT ***")`
|
||||||
teardown := `log.Println("--- END TEST CASE OUTPUT ---")`
|
teardown := `log.Println("--- END TEST CASE OUTPUT ---")`
|
||||||
static := `
|
static := `
|
||||||
func testEncode(message Message, correct ...byte) {
|
func testEncode(message Message, correct tu.Snake) {
|
||||||
buffer := bytes.Buffer { }
|
buffer := bytes.Buffer { }
|
||||||
encoder := tape.NewEncoder(&buffer)
|
encoder := tape.NewEncoder(&buffer)
|
||||||
n, err := message.Encode(encoder)
|
n, err := message.Encode(encoder)
|
||||||
if err != nil { log.Fatalf("at %d: %v\n", n, err) }
|
if err != nil { log.Fatalf("at %d: %v\n", n, err) }
|
||||||
got := buffer.Bytes()
|
got := buffer.Bytes()
|
||||||
log.Println("got: ", tu.HexBytes(got))
|
log.Println("got: ", tu.HexBytes(got))
|
||||||
log.Println("correct:", tu.HexBytes(correct))
|
log.Println("correct:", correct)
|
||||||
if n != len(got) {
|
if n != len(got) {
|
||||||
log.Fatalf("n incorrect: %d != %d\n", n, len(got))
|
log.Fatalf("n incorrect: %d != %d\n", n, len(got))
|
||||||
}
|
}
|
||||||
if !slices.Equal(got, correct) {
|
if ok, n := correct.Check(got); !ok {
|
||||||
log.Fatalln("not equal")
|
log.Fatalln("not equal at", n)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
`
|
`
|
||||||
|
Loading…
x
Reference in New Issue
Block a user