@@ -2,7 +2,7 @@ package tabify_test
22
33import (
44 "encoding/json"
5- "io/ioutil "
5+ "os "
66 "strings"
77 "testing"
88
@@ -23,6 +23,10 @@ func TestNested(t *testing.T) {
2323 testfile (t , "nested_agg" )
2424}
2525
26+ func TestDoubleTerms (t * testing.T ) {
27+ testfile (t , "terms_terms_sum_agg" )
28+ }
29+
2630func TestTripleAgg (t * testing.T ) {
2731 testfile (t , "triple_agg" )
2832}
@@ -50,41 +54,46 @@ func testfile(t *testing.T, filename string) {
5054 }
5155
5256 // SliceTableWriter
53- st , err := tabify .Slice (src , tabify .KeyExcluder (excluder ), tabify .KeyFormatter (formatter ))
54- assert .NoError (t , err , "slice table writer" )
55- stw := readJSON (t , "./tests/" + filename + "_slice.json" )
56- var arr []interface {}
57- assert .NoError (t , json .Unmarshal ([]byte (stw ), & arr ))
58- assert .Equal (t , len (arr ), len (st ))
59- for i , row := range arr {
60- assert .Equalf (t , row , st [i ], "at index %d" , i )
61- }
57+ t .Run ("can write to slice " + filename , func (t * testing.T ) {
58+ st , err := tabify .Slice (src , tabify .KeyExcluder (excluder ), tabify .KeyFormatter (formatter ))
59+ assert .NoError (t , err , "slice table writer" )
60+ stw := readJSON (t , "./tests/" + filename + "_slice.json" )
61+ var arr []interface {}
62+ assert .NoError (t , json .Unmarshal ([]byte (stw ), & arr ))
63+ assert .Equal (t , len (arr ), len (st ))
64+ for i , row := range arr {
65+ assert .Equalf (t , row , st [i ], "at index %d" , i )
66+ }
6267
63- //assert.JSONEq(t, stw, mst.String(), "slice table writer")
68+ //assert.JSONEq(t, stw, mst.String(), "slice table writer")
69+ })
6470
6571 // MapTableWriter
66- // mt, err := tabify.Map(src, tabify.KeyExcluder(excluder), tabify.KeyFormatter(formatter))
67- // assert.NoError(t, err, "map table writer")
68- // mmt, err := json.Marshal(mt)
69- // if err != nil {
70- // t.Fatal("slice json marshal")
71- // }
72- // mtw := readJSON(t, "./tests/"+filename+"_expected.json")
73- // assert.JSONEq(t, mtw, string(mmt[:]), "map table writer")
74-
75- // // JSONTableWriter
76- // jt, err := tabify.JSON(src, tabify.KeyExcluder(excluder), tabify.KeyFormatter(formatter))
77- // assert.NoError(t, err, "json table writer")
78- // jtw := readJSON(t, "./tests/"+filename+"_expected.json")
79- // jo := jsonmap.New()
80- // jo.Set("", jt)
81- // assert.JSONEq(t, jtw, jo.Stringify(), "json table writer")
82-
72+ t .Run ("can write to map " + filename , func (t * testing.T ) {
73+ mt , err := tabify .Map (src , tabify .KeyExcluder (excluder ), tabify .KeyFormatter (formatter ))
74+ assert .NoError (t , err , "map table writer" )
75+ mmt , err := json .Marshal (mt )
76+ if err != nil {
77+ t .Fatal ("slice json marshal" )
78+ }
79+ mtw := readJSON (t , "./tests/" + filename + "_expected.json" )
80+ assert .JSONEq (t , mtw , string (mmt [:]), "map table writer" )
81+ })
82+
83+ // JSONTableWriter
84+ t .Run ("can write to json " + filename , func (t * testing.T ) {
85+ jt , err := tabify .JSON (src , tabify .KeyExcluder (excluder ), tabify .KeyFormatter (formatter ))
86+ assert .NoError (t , err , "json table writer" )
87+ jtw := readJSON (t , "./tests/" + filename + "_expected.json" )
88+ jo := jsonmap .New ()
89+ jo .Set ("" , jt )
90+ assert .JSONEq (t , jtw , jo .Stringify (), "json table writer" )
91+ })
8392}
8493
8594// readJSON to read a json file and store to a jsonmap
8695func readJSON (t * testing.T , filename string ) string {
87- data , err := ioutil .ReadFile (filename )
96+ data , err := os .ReadFile (filename )
8897 if err != nil {
8998 t .Fatalf ("unable to read %s" , filename )
9099 }
0 commit comments