package utils import ( "bytes" "fmt" "os" "testing" "git.tuxpa.in/a/nori" ) func TestParseFile1(t *testing.T) { nori, err := nori.FromFile("./zip_test/test1.nri") if err != nil { t.Errorf("decode: %s", err) } t.Logf("\n nori: %+v\n gawi: %+v", nori, nori.Gawi) err = writeZip(nori, "test1") if err != nil { t.Errorf("export: %s", err) } } func TestParseFile2(t *testing.T) { nori, err := nori.FromFile("./zip_test/test2.nri") if err != nil { t.Errorf("decode: %s", err) } t.Logf("\n nori: %+v\n gawi: %+v", nori, nori.Gawi) err = writeZip(nori, "test2") if err != nil { t.Errorf("export: %s", err) } } func TestParsePalette(t *testing.T) { nori, err := nori.FromFile("./zip_test/palette.nri") if err != nil { t.Errorf("decode: %s", err) } t.Logf("\n nori: %+v\n gawi: %+v\n palette: %+v\n", nori, nori.Gawi, nori.Gawi.Palette) err = writeZip(nori, "palette") if err != nil { t.Errorf("export: %s", err) } } func writeZip(n *nori.Nori, name string) error { out := new(bytes.Buffer) frames, err := nori.RenderAnimations(n) if err != nil { return err } if err := ZipApngs(out, frames); err != nil { return err } os.WriteFile(fmt.Sprintf("./zip_test/%s.zip", name), out.Bytes(), 0740) return nil }