4
4
5
5
6
6
def parser_tests ():
7
- test ("simple" , [
8
- { "type" : "lines_tokens" , "content" : [
9
- { "type" : "property" , "content" : "AddEffect" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "MOPixel" }
10
- ]}
11
- ])
12
- test ("comments" , [
13
- { "type" : "lines_tokens" , "content" : [
14
- { "type" : "extra" , "content" : "\n " },
15
- { "type" : "extra" , "content" : "// foo" }, { "type" : "extra" , "content" : "\n " },
16
- { "type" : "extra" , "content" : "/*a\n b\n c*/" }, { "type" : "extra" , "content" : "\n " },
17
- ]} ,
18
- ])
19
- test ("multiple " , [
20
- { "type" : "lines_tokens" , "content" : [
7
+ # test("simple", [
8
+ # [
9
+ # { "type": "property", "content": "AddEffect" }, { "type": "extra", "content": " " }, { "type": "extra", "content": "=" }, { "type": "extra", "content": " " }, { "type": "value", "content": "MOPixel" }
10
+ # ]
11
+ # ])
12
+ # test("comments", [
13
+ # [
14
+ # { "type": "extra", "content": "\n" },
15
+ # { "type": "extra", "content": "// foo"}, { "type": "extra", "content": "\n" },
16
+ # { "type": "extra", "content": "/*a\nb\nc*/" }, { "type": "extra", "content": "\n" },
17
+ # ] ,
18
+ # ])
19
+ test ("nested " , [
20
+ [
21
21
{ "type" : "property" , "content" : "Foo" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "Bar" }, { "type" : "extra" , "content" : "\n " },
22
22
{ "type" : "lines_tokens" , "content" : [
23
- { "type" : "extra" , "content" : "\t " }, { "type" : "property" , "content" : "Baz" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "Bee" }, { "type" : "extra" , "content" : "\n " }
24
- ]}
25
- ]},
26
- { "type" : "lines_tokens" , "content" : [
27
- { "type" : "property" , "content" : "A" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "B" }, { "type" : "extra" , "content" : "\n " },
28
- { "type" : "lines_tokens" , "content" : [
29
- { "type" : "extra" , "content" : "\t " }, { "type" : "property" , "content" : "C" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "D" }, { "type" : "extra" , "content" : "\n " }
30
- ]}
31
- ]}
32
- ])
33
- test ("complex" , [
34
- { "type" : "lines_tokens" , "content" : [
35
- { "type" : "extra" , "content" : "\n " },
36
- { "type" : "extra" , "content" : "// foo" }, { "type" : "extra" , "content" : "\n " },
37
- { "type" : "extra" , "content" : "/*a\n b\n c*/" }, { "type" : "extra" , "content" : "\n " },
38
- { "type" : "property" , "content" : "AddEffect" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "MOPixel" }, { "type" : "extra" , "content" : "//bar" }, { "type" : "extra" , "content" : "\n " },
39
- { "type" : "lines_tokens" , "content" : [
40
- { "type" : "extra" , "content" : "\t " }, { "type" : "property" , "content" : "PresetName" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "red_dot_tiny" }, { "type" : "extra" , "content" : "\n " },
41
- { "type" : "lines_tokens" , "content" : [
42
- { "type" : "extra" , "content" : "\t \t " }, { "type" : "property" , "content" : "Mass" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "0.0" }, { "type" : "extra" , "content" : "\n " },
43
- { "type" : "extra" , "content" : "\t \t " }, { "type" : "property" , "content" : "Xd" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "42" }
44
- ]}
23
+ [
24
+ { "type" : "extra" , "content" : "\t " }, { "type" : "property" , "content" : "Baz" }, { "type" : "extra" , "content" : " " }, { "type" : "extra" , "content" : "=" }, { "type" : "extra" , "content" : " " }, { "type" : "value" , "content" : "Bee" }, { "type" : "extra" , "content" : "\n " }
25
+ ]
45
26
]}
46
- ]},
27
+ ]
47
28
])
29
+ # test("multiple", [
30
+ # [
31
+ # { "type": "property", "content": "Foo" }, { "type": "extra", "content": " " }, { "type": "extra", "content": "=" }, { "type": "extra", "content": " " }, { "type": "value", "content": "Bar" }, { "type": "extra", "content": "\n" },
32
+ # { "type": "lines_tokens", "content": [
33
+ # [
34
+ # { "type": "extra", "content": "\t" }, { "type": "property", "content": "Baz" }, { "type": "extra", "content": " " }, { "type": "extra", "content": "=" }, { "type": "extra", "content": " " }, { "type": "value", "content": "Bee" }, { "type": "extra", "content": "\n" }
35
+ # ]
36
+ # ]}
37
+ # ],
38
+ # [
39
+ # { "type": "property", "content": "A" }, { "type": "extra", "content": " " }, { "type": "extra", "content": "=" }, { "type": "extra", "content": " " }, { "type": "value", "content": "B" }, { "type": "extra", "content": "\n" },
40
+ # { "type": "lines_tokens", "content": [
41
+ # [
42
+ # { "type": "extra", "content": "\t" }, { "type": "property", "content": "C" }, { "type": "extra", "content": " " }, { "type": "extra", "content": "=" }, { "type": "extra", "content": " " }, { "type": "value", "content": "D" }, { "type": "extra", "content": "\n" }
43
+ # ]
44
+ # ]}
45
+ # ]
46
+ # ])
47
+ # test("complex", [
48
+ # [
49
+ # { "type": "extra", "content": "\n" },
50
+ # { "type": "extra", "content": "// foo"}, { "type": "extra", "content": "\n" },
51
+ # { "type": "extra", "content": "/*a\nb\nc*/" }, { "type": "extra", "content": "\n" },
52
+ # { "type": "property", "content": "AddEffect" }, { "type": "extra", "content": " " }, { "type": "extra", "content": "=" }, { "type": "extra", "content": " " }, { "type": "value", "content": "MOPixel" }, { "type": "extra", "content": "//bar" }, { "type": "extra", "content": "\n" },
53
+ # { "type": "lines_tokens", "content": [
54
+ # [
55
+ # { "type": "extra", "content": "\t" }, { "type": "property", "content": "PresetName" }, { "type": "extra", "content": " " }, { "type": "extra", "content": "=" }, { "type": "extra", "content": " " }, { "type": "value", "content": "red_dot_tiny" }, { "type": "extra", "content": "\n" },
56
+ # { "type": "lines_tokens", "content": [
57
+ # [
58
+ # { "type": "extra", "content": "\t\t" }, { "type": "property", "content": "Mass" }, { "type": "extra", "content": " " }, { "type": "extra", "content": "=" }, { "type": "extra", "content": " " }, { "type": "value", "content": "0.0" }, { "type": "extra", "content": "\n" },
59
+ # ],
60
+ # [
61
+ # { "type": "extra", "content": "\t\t" }, { "type": "property", "content": "Xd" }, { "type": "extra", "content": " " }, { "type": "extra", "content": "=" }, { "type": "extra", "content": " " }, { "type": "value", "content": "42" }
62
+ # ]
63
+ # ]}
64
+ # ]
65
+ # ]}
66
+ # ]
67
+ # ])
48
68
49
69
50
70
def test (filename , expected ):
51
71
text = tests .read_test (filename )
52
72
tokens = ini_tokenizer .get_tokens (text )
53
- ini_cst , _ = ini_parser .get_parsed_tokens (tokens , [])
73
+ ini_cst = ini_parser .get_parsed_tokens (tokens , [], [ 0 ])
54
74
tests .test (text , ini_cst , expected )
0 commit comments