json: encode_pretty (p. 2) + tests
parent
f67e4ab57c
commit
035a163454
|
@ -160,7 +160,7 @@ fn test_struct_in_struct() {
|
||||||
|
|
||||||
fn test_encode_map() {
|
fn test_encode_map() {
|
||||||
expected := '{"one":1,"two":2,"three":3,"four":4}'
|
expected := '{"one":1,"two":2,"three":3,"four":4}'
|
||||||
numbers := {
|
numbers := map{
|
||||||
'one': 1
|
'one': 1
|
||||||
'two': 2
|
'two': 2
|
||||||
'three': 3
|
'three': 3
|
||||||
|
@ -172,7 +172,7 @@ fn test_encode_map() {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn test_parse_map() {
|
fn test_parse_map() {
|
||||||
expected := {
|
expected := map{
|
||||||
'one': 1
|
'one': 1
|
||||||
'two': 2
|
'two': 2
|
||||||
'three': 3
|
'three': 3
|
||||||
|
@ -180,7 +180,7 @@ fn test_parse_map() {
|
||||||
}
|
}
|
||||||
out := json.decode(map[string]int, '{"one":1,"two":2,"three":3,"four":4}') or {
|
out := json.decode(map[string]int, '{"one":1,"two":2,"three":3,"four":4}') or {
|
||||||
assert false
|
assert false
|
||||||
r := {
|
r := map{
|
||||||
'': 0
|
'': 0
|
||||||
}
|
}
|
||||||
r
|
r
|
||||||
|
@ -201,18 +201,14 @@ fn test_nested_type() {
|
||||||
countries: [
|
countries: [
|
||||||
Country{
|
Country{
|
||||||
name: 'UK'
|
name: 'UK'
|
||||||
cities: [City{'London'},
|
cities: [City{'London'}, City{'Manchester'}]
|
||||||
City{'Manchester'},
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
Country{
|
Country{
|
||||||
name: 'KU'
|
name: 'KU'
|
||||||
cities: [City{'Donlon'},
|
cities: [City{'Donlon'}, City{'Termanches'}]
|
||||||
City{'Termanches'},
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
users: {
|
users: map{
|
||||||
'Foo': User{
|
'Foo': User{
|
||||||
age: 10
|
age: 10
|
||||||
nums: [1, 2, 3]
|
nums: [1, 2, 3]
|
||||||
|
@ -230,14 +226,14 @@ fn test_nested_type() {
|
||||||
pets: 'little boo'
|
pets: 'little boo'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
extra: {
|
extra: map{
|
||||||
'2': {
|
'2': map{
|
||||||
'n1': 2
|
'n1': 2
|
||||||
'n2': 4
|
'n2': 4
|
||||||
'n3': 8
|
'n3': 8
|
||||||
'n4': 16
|
'n4': 16
|
||||||
}
|
}
|
||||||
'3': {
|
'3': map{
|
||||||
'n1': 3
|
'n1': 3
|
||||||
'n2': 9
|
'n2': 9
|
||||||
'n3': 27
|
'n3': 27
|
||||||
|
@ -379,3 +375,14 @@ fn test_decode_null_object() {
|
||||||
assert '$info.items' == '[]'
|
assert '$info.items' == '[]'
|
||||||
assert '$info.maps' == '{}'
|
assert '$info.maps' == '{}'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct Foo2 {
|
||||||
|
name string
|
||||||
|
}
|
||||||
|
|
||||||
|
fn test_pretty() {
|
||||||
|
foo := Foo2{'Bob'}
|
||||||
|
assert json.encode_pretty(foo) == '{
|
||||||
|
"name": "Bob"
|
||||||
|
}'
|
||||||
|
}
|
||||||
|
|
|
@ -629,7 +629,7 @@ fn (mut g Gen) fn_call(node ast.CallExpr) {
|
||||||
is_json_encode := name == 'json.encode'
|
is_json_encode := name == 'json.encode'
|
||||||
is_json_encode_pretty := name == 'json.encode_pretty'
|
is_json_encode_pretty := name == 'json.encode_pretty'
|
||||||
is_json_decode := name == 'json.decode'
|
is_json_decode := name == 'json.decode'
|
||||||
g.is_json_fn = is_json_encode || is_json_decode
|
g.is_json_fn = is_json_encode || is_json_encode_pretty || is_json_decode
|
||||||
mut json_type_str := ''
|
mut json_type_str := ''
|
||||||
mut json_obj := ''
|
mut json_obj := ''
|
||||||
if g.is_json_fn {
|
if g.is_json_fn {
|
||||||
|
|
Loading…
Reference in New Issue