tracker/ojson_roundtrip_test.go
package main
import (
"bytes"
"os"
"testing"
)
func TestOrderedJSONRoundTripsDataFilesExactly(t *testing.T) {
for _, name := range []string{"data/milestones.json", "data/tests.json", "data/problems.json", "data/checkpoints.json"} {
orig, err := os.ReadFile(name)
if err != nil {
t.Fatal(err)
}
v, err := parseOrdered(orig)
if err != nil {
t.Fatalf("%s: %v", name, err)
}
out, err := writeOrdered(v)
if err != nil {
t.Fatal(err)
}
if !bytes.Equal(orig, out) {
t.Fatalf("%s: round trip changed the file", name)
}
}
}