1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
|
package formatter_test
import (
. "github.com/yudai/gojsondiff/formatter"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
. "github.com/yudai/gojsondiff/tests"
diff "github.com/yudai/gojsondiff"
)
var _ = Describe("Ascii", func() {
Describe("AsciiPrinter", func() {
var (
a, b map[string]interface{}
)
It("Prints the given diff", func() {
a = LoadFixture("../FIXTURES/base.json")
b = LoadFixture("../FIXTURES/base_changed.json")
diff := diff.New().CompareObjects(a, b)
Expect(diff.Modified()).To(BeTrue())
f := NewAsciiFormatter(a, AsciiFormatterDefaultConfig)
deltaJson, err := f.Format(diff)
Expect(err).To(BeNil())
Expect(deltaJson).To(Equal(
` {
"arr": [
"arr0",
21,
{
"num": 1,
- "str": "pek3f"
+ "str": "changed"
},
[
0,
- "1"
+ "changed"
]
],
"bool": true,
- "null": null,
"num_float": 39.39,
"num_int": 13,
"obj": {
"arr": [
17,
"str",
{
- "str": "eafeb"
+ "str": "changed"
}
],
- "num": 19,
"obj": {
- "num": 14,
+ "num": 9999,
- "str": "efj3"
+ "str": "changed"
},
"str": "bcded"
+ "new": "added"
},
"str": "abcde"
}
`,
),
)
})
It("Prints the given diff", func() {
a = LoadFixture("../FIXTURES/add_delete_from.json")
b = LoadFixture("../FIXTURES/add_delete_to.json")
diff := diff.New().CompareObjects(a, b)
Expect(diff.Modified()).To(BeTrue())
f := NewAsciiFormatter(a, AsciiFormatterDefaultConfig)
deltaJson, err := f.Format(diff)
Expect(err).To(BeNil())
Expect(deltaJson).To(Equal(
` {
- "delete": {
- "l0a": [
- "abcd",
- [
- "efcg"
- ]
- ],
- "l0o": {
- "l1o": {
- "l2s": "efed"
- },
- "l1s": "abcd"
- }
- }
+ "add": {
+ "l0a": [
+ "abcd",
+ [
+ "efcg"
+ ]
+ ],
+ "l0o": {
+ "l1o": {
+ "l2s": "efed"
+ },
+ "l1s": "abcd"
+ }
+ }
}
`,
),
)
})
})
})
|