1
0
mirror of https://github.com/sjwhitworth/golearn.git synced 2025-04-25 13:48:49 +08:00
golearn/base/serialize_test.go
2015-01-27 12:32:19 +00:00

108 lines
3.1 KiB
Go

package base
// import (
// // "archive/tar"
// // "compress/gzip"
// // "fmt"
// . "github.com/smartystreets/goconvey/convey"
// // "io"
// "io/ioutil"
// "testing"
// )
// func TestSerializeToCSV(t *testing.T) {
// Convey("Reading some instances...", t, func() {
// inst, err := ParseCSVToInstances("../examples/datasets/iris_headers.csv", true)
// So(err, ShouldBeNil)
// Convey("Saving the instances to CSV...", func() {
// f, err := ioutil.TempFile("", "instTmp")
// So(err, ShouldBeNil)
// err = SerializeInstancesToCSV(inst, f.Name())
// So(err, ShouldBeNil)
// Convey("What's written out should match what's read in", func() {
// dinst, err := ParseCSVToInstances(f.Name(), true)
// So(err, ShouldBeNil)
// So(inst.String(), ShouldEqual, dinst.String())
// })
// })
// })
// }
// func TestSerializeToFile(t *testing.T) {
// Convey("Reading some instances...", t, func() {
// inst, err := ParseCSVToInstances("../examples/datasets/iris_headers.csv", true)
// So(err, ShouldBeNil)
// Convey("Dumping to file...", func() {
// f, err := ioutil.TempFile("", "instTmp")
// So(err, ShouldBeNil)
// err = SerializeInstances(inst, f)
// So(err, ShouldBeNil)
// f.Seek(0, 0)
// Convey("Contents of the archive should be right...", func() {
// gzr, err := gzip.NewReader(f)
// So(err, ShouldBeNil)
// tr := tar.NewReader(gzr)
// classAttrsPresent := false
// manifestPresent := false
// regularAttrsPresent := false
// dataPresent := false
// dimsPresent := false
// readBytes := make([]byte, len([]byte(SerializationFormatVersion)))
// for {
// hdr, err := tr.Next()
// if err == io.EOF {
// break
// }
// So(err, ShouldBeNil)
// switch hdr.Name {
// case "MANIFEST":
// tr.Read(readBytes)
// manifestPresent = true
// break
// case "CATTRS":
// classAttrsPresent = true
// break
// case "ATTRS":
// regularAttrsPresent = true
// break
// case "DATA":
// dataPresent = true
// break
// case "DIMS":
// dimsPresent = true
// break
// default:
// fmt.Printf("Unknown file: %s\n", hdr.Name)
// }
// }
// Convey("MANIFEST should be present", func() {
// So(manifestPresent, ShouldBeTrue)
// Convey("MANIFEST should be right...", func() {
// So(readBytes, ShouldResemble, []byte(SerializationFormatVersion))
// })
// })
// Convey("DATA should be present", func() {
// So(dataPresent, ShouldBeTrue)
// })
// Convey("ATTRS should be present", func() {
// So(regularAttrsPresent, ShouldBeTrue)
// })
// Convey("CATTRS should be present", func() {
// So(classAttrsPresent, ShouldBeTrue)
// })
// Convey("DIMS should be present", func() {
// So(dimsPresent, ShouldBeTrue)
// })
// })
// Convey("Should be able to reconstruct...", func() {
// f.Seek(0, 0)
// dinst, err := DeserializeInstances(f)
// So(err, ShouldBeNil)
// So(InstancesAreEqual(inst, dinst), ShouldBeTrue)
// })
// })
// })
// }