good morning!!!!

Skip to content
Snippets Groups Projects
Commit 3409833a authored by Garet Halliday's avatar Garet Halliday
Browse files

gaming

parent ed08ed7b
No related branches found
No related tags found
No related merge requests found
package test
import (
"bytes"
"fmt"
"pggat/lib/fed"
"pggat/lib/gsql"
)
type Capturer struct {
Packets []fed.Packet
}
func (T *Capturer) WritePacket(packet fed.Packet) error {
T.Packets = append(T.Packets, packet)
return nil
}
func (T *Capturer) Check(other *Capturer) error {
if len(T.Packets) != len(other.Packets) {
return fmt.Errorf("not enough packets! got %d but expected %d", len(other.Packets), len(T.Packets))
}
for i := range T.Packets {
expected := T.Packets[i]
actual := other.Packets[i]
if !bytes.Equal(expected.Bytes(), actual.Bytes()) {
return fmt.Errorf("mismatched packet! expected %v but got %v", expected.Bytes(), actual.Bytes())
}
}
return nil
}
var _ gsql.ResultWriter = (*Capturer)(nil)
......@@ -4,8 +4,6 @@ import (
"errors"
"io"
"tuxpa.in/a/zlog/log"
"pggat/lib/bouncer/bouncers/v2"
"pggat/lib/fed"
packets "pggat/lib/fed/packets/v3.0"
......@@ -53,20 +51,13 @@ func (T *Runner) setup() error {
return nil
}
type logWriter struct{}
func (logWriter) WritePacket(pkt fed.Packet) error {
log.Print("got packet ", pkt)
return nil
}
func (T *Runner) run(pkts ...fed.Packet) error {
// expected
{
log.Print("expected packets")
var expected Capturer
{
var client gsql.Client
client.Do(logWriter{}, pkts...)
client.Do(&expected, pkts...)
if err := client.Close(); err != nil {
return err
}
......@@ -97,11 +88,10 @@ func (T *Runner) run(pkts ...fed.Packet) error {
// actual
for name, p := range T.pools {
log.Print()
log.Print("pool ", name)
var result Capturer
var client gsql.Client
client.Do(logWriter{}, pkts...)
client.Do(&result, pkts...)
if err := client.Close(); err != nil {
return err
}
......@@ -110,6 +100,9 @@ func (T *Runner) run(pkts ...fed.Packet) error {
return err
}
if err := expected.Check(&result); err != nil {
return err
}
_ = name
}
......
......@@ -33,7 +33,9 @@ func TestTester(t *testing.T) {
},
},
})
if err := tester.Run(tests.SimpleQuery); err != nil {
if err := tester.Run(
tests.SimpleQuery,
); err != nil {
t.Error(err)
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment