neutralts/
test_helpers.rs

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