Files
genqlient/generate/example_test.go
T
2021-04-01 13:11:23 -07:00

42 lines
820 B
Go

package generate
import (
"bytes"
"io/ioutil"
"path/filepath"
"runtime"
"testing"
)
func TestGenerateExample(t *testing.T) {
_, thisFile, _, ok := runtime.Caller(0)
if !ok {
t.Fatal("runtime.Caller non-ok")
}
repoRoot := filepath.Dir(filepath.Dir(thisFile))
configFilename := filepath.Join(repoRoot, "example/genqlient.yaml")
config, err := ReadAndValidateConfig(configFilename)
if err != nil {
t.Fatal(err)
}
generated, err := Generate(config)
if err != nil {
t.Fatal(err)
}
for filename, content := range generated {
expectedContent, err := ioutil.ReadFile(filename)
if err != nil {
t.Fatal(err)
}
if !bytes.Equal(content, expectedContent) {
t.Errorf(
"diffs to %v:\n---actual---\n%v\n---expected---\n%v",
filename, string(content), string(expectedContent))
}
}
}