1 # Pretty printing tests
2
3 #### Int
4 = -123
5 ## stdout: (Int) -123
6
7 #### Float
8 = -0.00
9 ## stdout: (Float) -0.0
10
11 #### Null
12 = null
13 ## stdout: (Null) null
14
15 #### Bool
16 = true
17 = false
18 ## STDOUT:
19 (Bool) true
20 (Bool) false
21 ## END
22
23 #### String
24 = "double quoted"
25 = 'single quoted'
26 ## STDOUT:
27 (Str) "double quoted"
28 (Str) "single quoted"
29 ## END
30
31 #### Range
32 var x = 1..100
33 = x
34 ## stdout: (Range) 1 .. 100
35
36 #### Bash Array
37 declare -a array_0=()
38 declare -a array_1=(hello)
39 declare -a array_3
40 array_3[0]="world"
41 array_3[2]=*.py
42 declare array_long=(Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed
43 do eiusmod.)
44 = array_0
45 = array_1
46 = array_3
47 = array_long
48 ## STDOUT:
49 (BashArray) (BashArray)
50 (BashArray) (BashArray 'hello')
51 (BashArray) (BashArray 'world' null '*.py')
52 (BashArray)
53 (BashArray
54 'Lorem'
55 'ipsum'
56 'dolor'
57 'sit'
58 'amet,'
59 'consectetur'
60 'adipiscing'
61 'elit,'
62 'sed'
63 'do'
64 'eiusmod.'
65 )
66 ## END
67
68 #### Bash Assoc
69 declare -A assoc_0=()
70 declare -A assoc_1=([1]=one)
71 declare assoc_3=([1]=one [two]=2 [3]=three)
72 declare assoc_long=([Lorem]=ipsum [dolor]="sit amet," ['consectetur adipiscing']="elit, sed" [do]="eiusmod.")
73 = assoc_0
74 = assoc_1
75 = assoc_3
76 = assoc_long
77 ## STDOUT:
78 (BashAssoc) (BashAssoc)
79 (BashAssoc) (BashAssoc ['1']='one')
80 (BashAssoc) (BashAssoc ['1']='one' ['two']='2' ['3']='three')
81 (BashAssoc)
82 (BashAssoc
83 ['Lorem']='ipsum'
84 ['dolor']='sit amet,'
85 ['consectetur adipiscing']='elit, sed'
86 ['do']='eiusmod.'
87 )
88 ## END
89
90 #### Simple Cycles
91 var cyclic_array = ["one", "two", "three"]
92 setvar cyclic_array[2] = cyclic_array
93 var cyclic_dict = {"dead_end": null}
94 setvar cyclic_dict["live_end"] = cyclic_dict
95 = cyclic_array
96 = cyclic_dict
97 ## STDOUT:
98 (List) ["one", "two", [...]]
99 (Dict) {dead_end: null, live_end: {...}}
100 ## END
101
102 #### Complex Cycles
103 var dict = {}
104 setvar dict["nothing"] = null
105 var simple_cycle = [["dummy"]]
106 setvar simple_cycle[0][0] = simple_cycle
107 setvar dict["simple_cycle"] = simple_cycle
108 var tricky_cycle = ["dummy"]
109 setvar tricky_cycle[0] = dict
110 setvar dict["tricky_cycle"] = tricky_cycle
111 var dag = [1, 2, "dummy"]
112 setvar dag[2] = dag
113 setvar dict["dag"] = [dag, dag]
114 var alpha = {}
115 var omega = {}
116 setvar alpha["omega"] = omega
117 setvar omega["alpha"] = alpha
118 setvar dict["key_alpha"] = alpha
119 setvar dict["key_omega"] = omega
120 = dict
121 ## STDOUT:
122 (Dict)
123 {
124 nothing: null,
125 simple_cycle: [[[...]]],
126 tricky_cycle: [{...}],
127 dag: [[1, 2, [...]], [1, 2, [...]]],
128 key_alpha: {omega: {alpha: {...}}},
129 key_omega: {alpha: {omega: {...}}}
130 }
131 ## END