neutralts/
test_helpers.rs

1
2// tests requires "preserve_order": serde_json = { version = "1.0", features = ["preserve_order"] }
3
4// Here you can add things but you cannot modify or remove them.
5pub const SCHEMA: &str = r#"{
6    "config": {
7        "infinite_loop_max_bifs": 555000,
8        "comments": "remove",
9        "cache_disable": true,
10        "disable_js": false,
11        "errors": "hide"
12    },
13    "inherit": {
14        "snippets": {
15            "__hello-nts": "<div>{:trans; ref:greeting-nts :}</div>"
16        },
17        "declare": {
18            "any": "*",
19            "traversal": "/* \\\\* *\\.\\.*",
20            "_test-nts": "en es fr de nts",
21            "_test-nts-empty": "~ nts en es fr de",
22            "_test-nts-asterisk": "*en* nts es fr de",
23            "_test-nts-question": "en?nts nts es fr de",
24            "_test-nts-dot": "en.nts es fr de"
25        },
26        "params": {},
27        "locale": {
28            "current": "en",
29            "trans": {
30                "en": {
31                    "Hello nts": "Hello",
32                    "ref:greeting-nts": "Hello"
33                },
34                "en-US": {
35                    "Hello nts": "Hello",
36                    "ref:greeting-nts": "Hello"
37                },
38                "en-UK": {
39                    "Hello nts": "Hello",
40                    "ref:greeting-nts": "Hello"
41                },
42                "es": {
43                    "Hello nts": "Hola",
44                    "ref:greeting-nts": "Hola"
45                },
46                "es-ES": {
47                    "Hello nts": "Hola",
48                    "ref:greeting-nts": "Hola"
49                },
50                "de": {
51                    "Hello nts": "Hallo",
52                    "ref:greeting-nts": "Hallo"
53                },
54                "fr": {
55                    "Hello nts": "Bonjour",
56                    "ref:greeting-nts": "Bonjour"
57                },
58                "el": {
59                    "Hello nts": "Γεια σας",
60                    "ref:greeting-nts": "Γεια σας"
61                }
62            }
63        }
64    },
65    "data": {
66        "CONTEXT": {
67            "GET": {
68                "escape": "<>&\"'/{}"
69            }
70        },
71        "__hello-nts": "Hello nts",
72        "__ref-hello-nts": "__hello-nts",
73        "__test-local": "local",
74        "__test-nts": "nts",
75        "__test-empty-nts": "",
76        "__test-null-nts": null,
77        "__test-zero-nts": 0,
78        "__test-bool-true-string-nts": true,
79        "__test-bool-true-num-nts": 1,
80        "__test-bool-false-string-nts": false,
81        "__test-bool-false-num-nts": 0,
82        "__test-bool-false-empty-nts": "",
83        "__test-arr-nts": [
84            "one",
85            "two",
86            "three"
87        ],
88        "__test-arr-empty-nts": [],
89        "__test-obj-empty-nts": {},
90        "__test-obj-nts": {
91            "level1": "Ok",
92            "level1-obj": {
93                "level1": "Ok",
94                "level2-obj": {
95                    "level2": "Ok",
96                    "level3-arr": [
97                        "one",
98                        "two",
99                        "three"
100                    ]
101                }
102            }
103        },
104        "escape": "<>&\"'/{}",
105        "double_escape": "&lt;&gt;&amp;&quot;&#x27;&#x2F;&#123;&#125;",
106        "true": true,
107        "false": false,
108        "text": "text",
109        "zero": "0",
110        "one": "1",
111        "spaces": "  ",
112        "empty": "",
113        "null": null,
114        "emptyarr": [],
115        "array": {
116            "true": true,
117            "false": false,
118            "text": "text",
119            "zero": "0",
120            "one": "1",
121            "spaces": "  ",
122            "empty": "",
123            "null": null
124        }
125    }
126}"#;
127
128pub const SCHEMA_CACHE: &str = r#"{
129    "config": {
130        "infinite_loop_max_bifs": 555000,
131        "comments": "remove",
132        "errors": "hide",
133        "comments": "remove",
134        "cache_prefix": "neutral-cache",
135        "cache_dir": "",
136        "cache_on_post": false,
137        "cache_on_get": true,
138        "cache_on_cookies": true,
139        "cache_disable": false,
140        "disable_js": false,
141        "filter_all": false
142    },
143    "inherit": {
144        "snippets": {
145            "__hello-nts": "<div>{:trans; ref:greeting-nts :}</div>",
146            "inject": "{:;inject:}"
147        },
148        "declare": {
149            "any": "*",
150            "traversal": "/* \\\\* *\\.\\.*",
151            "_test-nts": "en es fr de nts",
152            "_test-nts-empty": "~ nts en es fr de",
153            "_test-nts-asterisk": "*en* nts es fr de",
154            "_test-nts-question": "en?nts nts es fr de",
155            "_test-nts-dot": "en.nts es fr de"
156        },
157        "params": {},
158        "locale": {
159            "current": "en",
160            "trans": {
161                "en": {
162                    "Hello nts": "Hello",
163                    "ref:greeting-nts": "Hello"
164                },
165                "en-US": {
166                    "Hello nts": "Hello",
167                    "ref:greeting-nts": "Hello"
168                },
169                "en-UK": {
170                    "Hello nts": "Hello",
171                    "ref:greeting-nts": "Hello"
172                },
173                "es": {
174                    "Hello nts": "Hola",
175                    "ref:greeting-nts": "Hola"
176                },
177                "es-ES": {
178                    "Hello nts": "Hola",
179                    "ref:greeting-nts": "Hola"
180                },
181                "de": {
182                    "Hello nts": "Hallo",
183                    "ref:greeting-nts": "Hallo"
184                },
185                "fr": {
186                    "Hello nts": "Bonjour",
187                    "ref:greeting-nts": "Bonjour"
188                },
189                "el": {
190                    "Hello nts": "Γεια σας",
191                    "ref:greeting-nts": "Γεια σας"
192                }
193            }
194        }
195    },
196    "data": {
197        "CONTEXT": {
198            "GET": {
199                "escape": "<>&\"'/{}"
200            }
201        },
202        "__hello-nts": "Hello nts",
203        "__ref-hello-nts": "__hello-nts",
204        "__test-local": "local",
205        "__test-nts": "nts",
206        "__test-empty-nts": "",
207        "__test-null-nts": null,
208        "__test-zero-nts": 0,
209        "__test-bool-true-string-nts": true,
210        "__test-bool-true-num-nts": 1,
211        "__test-bool-false-string-nts": false,
212        "__test-bool-false-num-nts": 0,
213        "__test-bool-false-empty-nts": "",
214        "__test-arr-nts": [
215            "one",
216            "two",
217            "three"
218        ],
219        "__test-arr-empty-nts": [],
220        "__test-obj-empty-nts": {},
221        "__test-obj-nts": {
222            "level1": "Ok",
223            "level1-obj": {
224                "level1": "Ok",
225                "level2-obj": {
226                    "level2": "Ok",
227                    "level3-arr": [
228                        "one",
229                        "two",
230                        "three"
231                    ]
232                }
233            }
234        },
235        "mailfotmated": "{::}",
236        "inject": "{:exit; 403 :}",
237        "escape": "<>&\"'/{}",
238        "double_escape": "&lt;&gt;&amp;&quot;&#x27;&#x2F;&#123;&#125;",
239        "true": true,
240        "false": false,
241        "text": "text",
242        "zero": "0",
243        "one": "1",
244        "spaces": "  ",
245        "empty": "",
246        "null": null,
247        "emptyarr": [],
248        "array": {
249            "true": true,
250            "false": false,
251            "text": "text",
252            "zero": "0",
253            "one": "1",
254            "spaces": "  ",
255            "empty": "",
256            "null": null
257        }
258    }
259}"#;