11package cloc
22
33import (
4+ "encoding/json"
5+ "fmt"
46."github.com/onsi/gomega"
57"gopkg.in/yaml.v2"
68"log"
79"testing"
10+ "github.com/boyter/scc/processor"
811)
912
1013func Test_Yaml_Parse_Model (t * testing.T ) {
1114t .Parallel ()
1215g := NewGomegaWithT (t )
1316
14-
1517var data = `
1618header:
1719 url: https://github.com/boyter/scc/
@@ -37,7 +39,6 @@ func Test_Cloc_Yaml_File_Parse_Model(t *testing.T) {
3739t .Parallel ()
3840g := NewGomegaWithT (t )
3941
40-
4142var data = `
4243# https://github.com/boyter/scc/
4344header:
7172g .Expect (header .Header .Version ).To (Equal ("2.13.0" ))
7273g .Expect (header .Sum .Code ).To (Equal (int64 (3010 )))
7374}
75+
76+ func Test_parser_json_languages (t * testing.T ) {
77+ t .Parallel ()
78+ g := NewGomegaWithT (t )
79+
80+ var data = `[
81+ {"Name":"Java","Bytes":21169200,"CodeBytes":0,"Lines":540043,"Code":381028,"Comment":93196,"Blank":65819,"Complexity":43899,"Count":4435,"WeightedComplexity":0,"Files":[]},
82+ {"Name":"Kotlin","Bytes":6961705,"CodeBytes":0,"Lines":168900,"Code":118448,"Comment":30743,"Blank":19709,"Complexity":7636,"Count":1315,"WeightedComplexity":0,"Files":[]}
83+ ]
84+ `
85+
86+ var f []processor.LanguageSummary
87+ err := json .Unmarshal ([]byte (data ),& f )
88+ if err != nil {
89+ fmt .Println ("Error parsing JSON: " ,err )
90+ }
91+ fmt .Println (f )
92+
93+ g .Expect (len (f )).To (Equal (2 ))
94+ }