syntax 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,202 @@
1
+ $:.unshift "../../lib"
2
+
3
+ require 'test/unit'
4
+ require 'syntax/xml'
5
+
6
+ class TC_Syntax_XML < Test::Unit::TestCase
7
+
8
+ def setup
9
+ @xml = Syntax::XML.new
10
+ end
11
+
12
+ def test_empty
13
+ called = false
14
+ @xml.tokenize( "" ) { |tok| called = true }
15
+ assert !called
16
+ end
17
+
18
+ def test_no_tag
19
+ tok = []
20
+ @xml.tokenize( "foo bar baz" ) { |t| tok << t }
21
+ assert_equal [ :normal, "foo bar baz" ], [ tok.first.group, tok.shift ]
22
+ end
23
+
24
+ def test_entity_outside_tag
25
+ tok = []
26
+ @xml.tokenize( "&amp; &#10; &x157; &nosemi & foo;" ) { |t| tok << t }
27
+ assert_equal [ :entity, "&amp;" ], [ tok.first.group, tok.shift ]
28
+ tok.shift
29
+ assert_equal [ :entity, "&#10;" ], [ tok.first.group, tok.shift ]
30
+ tok.shift
31
+ assert_equal [ :entity, "&x157;" ], [ tok.first.group, tok.shift ]
32
+ assert_equal [ :normal, " &nosemi & foo;" ], [ tok.first.group, tok.shift ]
33
+ end
34
+
35
+ def test_start_tag
36
+ tok = []
37
+ @xml.tokenize( "<name" ) { |t| tok << t }
38
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
39
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
40
+ end
41
+
42
+ def test_start_xml_decl
43
+ tok = []
44
+ @xml.tokenize( "<?xml" ) { |t| tok << t }
45
+ assert_equal [ :punct, "<?" ], [ tok.first.group, tok.shift ]
46
+ assert_equal [ :tag, "xml" ], [ tok.first.group, tok.shift ]
47
+ end
48
+
49
+ def test_start_end_tag
50
+ tok = []
51
+ @xml.tokenize( "</name" ) { |t| tok << t }
52
+ assert_equal [ :punct, "</" ], [ tok.first.group, tok.shift ]
53
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
54
+ end
55
+
56
+ def test_start_decl_tag
57
+ tok = []
58
+ @xml.tokenize( "<!name" ) { |t| tok << t }
59
+ assert_equal [ :punct, "<!" ], [ tok.first.group, tok.shift ]
60
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
61
+ end
62
+
63
+ def test_start_confused
64
+ tok = []
65
+ @xml.tokenize( "<%name" ) { |t| tok << t }
66
+ assert_equal [ :punct, "<%" ], [ tok.first.group, tok.shift ]
67
+ assert_equal [ :attribute, "name" ], [ tok.first.group, tok.shift ]
68
+ end
69
+
70
+ def test_end_tag_out_of_context
71
+ tok = []
72
+ @xml.tokenize( "/>" ) { |t| tok << t }
73
+ assert_equal [ :normal, "/>" ], [ tok.first.group, tok.shift ]
74
+ end
75
+
76
+ def test_start_namespaced_tag
77
+ tok = []
78
+ @xml.tokenize( "<foo:name" ) { |t| tok << t }
79
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
80
+ assert_equal [ :namespace, "foo" ], [ tok.first.group, tok.shift ]
81
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
82
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
83
+ end
84
+
85
+ def test_attribute
86
+ tok = []
87
+ @xml.tokenize( "<name attr1 attr2" ) { |t| tok << t }
88
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
89
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
90
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
91
+ assert_equal [ :attribute, "attr1" ], [ tok.first.group, tok.shift ]
92
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
93
+ assert_equal [ :attribute, "attr2" ], [ tok.first.group, tok.shift ]
94
+ end
95
+
96
+ def test_namespaced_attribute
97
+ tok = []
98
+ @xml.tokenize( "<name foo:attr1 bar:attr2" ) { |t| tok << t }
99
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
100
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
101
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
102
+ assert_equal [ :namespace, "foo" ], [ tok.first.group, tok.shift ]
103
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
104
+ assert_equal [ :attribute, "attr1" ], [ tok.first.group, tok.shift ]
105
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
106
+ assert_equal [ :namespace, "bar" ], [ tok.first.group, tok.shift ]
107
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
108
+ assert_equal [ :attribute, "attr2" ], [ tok.first.group, tok.shift ]
109
+ end
110
+
111
+ def test_attribute_with_squote_value
112
+ tok = []
113
+ @xml.tokenize( "<name attr1='a value < > \\' here'" ) { |t| tok << t }
114
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
115
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
116
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
117
+ assert_equal [ :attribute, "attr1" ], [ tok.first.group, tok.shift ]
118
+ assert_equal [ :punct, "='" ], [ tok.first.group, tok.shift ]
119
+ assert_equal [ :string, "a value < > \\' here" ], [ tok.first.group, tok.shift ]
120
+ assert_equal [ :punct, "'" ], [ tok.first.group, tok.shift ]
121
+ end
122
+
123
+ def test_attribute_with_dquote_value
124
+ tok = []
125
+ @xml.tokenize( '<name attr1="a value < > \" here"' ) { |t| tok << t }
126
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
127
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
128
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
129
+ assert_equal [ :attribute, "attr1" ], [ tok.first.group, tok.shift ]
130
+ assert_equal [ :punct, '="' ], [ tok.first.group, tok.shift ]
131
+ assert_equal [ :string, 'a value < > \" here' ], [ tok.first.group, tok.shift ]
132
+ assert_equal [ :punct, '"' ], [ tok.first.group, tok.shift ]
133
+ end
134
+
135
+ def test_entity_in_string
136
+ tok = []
137
+ @xml.tokenize( '<name "a &lt; value &gt;"' ) { |t| tok << t }
138
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
139
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
140
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
141
+ assert_equal [ :punct, '"' ], [ tok.first.group, tok.shift ]
142
+ assert_equal [ :string, "a " ], [ tok.first.group, tok.shift ]
143
+ assert_equal [ :entity, "&lt;" ], [ tok.first.group, tok.shift ]
144
+ assert_equal [ :string, " value " ], [ tok.first.group, tok.shift ]
145
+ assert_equal [ :entity, "&gt;" ], [ tok.first.group, tok.shift ]
146
+ assert_equal [ :punct, '"' ], [ tok.first.group, tok.shift ]
147
+ end
148
+
149
+ def test_number
150
+ tok = []
151
+ @xml.tokenize( '<name 5' ) { |t| tok << t }
152
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
153
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
154
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
155
+ assert_equal [ :number, "5" ], [ tok.first.group, tok.shift ]
156
+ end
157
+
158
+ def test_close_tag
159
+ tok = []
160
+ @xml.tokenize( '<name> foo' ) { |t| tok << t }
161
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
162
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
163
+ assert_equal [ :punct, ">" ], [ tok.first.group, tok.shift ]
164
+ assert_equal [ :normal, " foo" ], [ tok.first.group, tok.shift ]
165
+ end
166
+
167
+ def test_close_self_tag
168
+ tok = []
169
+ @xml.tokenize( '<name /> foo' ) { |t| tok << t }
170
+ assert_equal [ :punct, "<" ], [ tok.first.group, tok.shift ]
171
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
172
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
173
+ assert_equal [ :punct, "/>" ], [ tok.first.group, tok.shift ]
174
+ assert_equal [ :normal, " foo" ], [ tok.first.group, tok.shift ]
175
+ end
176
+
177
+ def test_close_decl_tag
178
+ tok = []
179
+ @xml.tokenize( '<?name ?> foo' ) { |t| tok << t }
180
+ assert_equal [ :punct, "<?" ], [ tok.first.group, tok.shift ]
181
+ assert_equal [ :tag, "name" ], [ tok.first.group, tok.shift ]
182
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
183
+ assert_equal [ :punct, "?>" ], [ tok.first.group, tok.shift ]
184
+ assert_equal [ :normal, " foo" ], [ tok.first.group, tok.shift ]
185
+ end
186
+
187
+ def test_comment
188
+ tok = []
189
+ @xml.tokenize( "foo <!-- a comment\nspanning multiple\nlines --> bar" ) { |t| tok << t }
190
+ assert_equal [ :normal, "foo " ], [ tok.first.group, tok.shift ]
191
+ assert_equal [ :comment, "<!-- a comment\nspanning multiple\nlines -->" ], [ tok.first.group, tok.shift ]
192
+ assert_equal [ :normal, " bar" ], [ tok.first.group, tok.shift ]
193
+ end
194
+
195
+ def test_comment_unterminated
196
+ tok = []
197
+ @xml.tokenize( "foo <!-- a comment\nspanning multiple\nlines -- bar" ) { |t| tok << t }
198
+ assert_equal [ :normal, "foo " ], [ tok.first.group, tok.shift ]
199
+ assert_equal [ :comment, "<!-- a comment\nspanning multiple\nlines -- bar" ], [ tok.first.group, tok.shift ]
200
+ end
201
+
202
+ end
@@ -0,0 +1,228 @@
1
+ $:.unshift "../../lib"
2
+
3
+ require 'test/unit'
4
+ require 'syntax/yaml'
5
+
6
+ class TC_Syntax_YAML < Test::Unit::TestCase
7
+
8
+ def setup
9
+ @yaml = Syntax::YAML.new
10
+ end
11
+
12
+ def test_empty
13
+ called = false
14
+ @yaml.tokenize( "" ) { |tok| called = true }
15
+ assert !called
16
+ end
17
+
18
+ def test_doc_notype
19
+ tok = []
20
+ @yaml.tokenize( "---\n" ) { |t| tok << t }
21
+ assert_equal [ :document, "---" ], [ tok.first.group, tok.shift ]
22
+ end
23
+
24
+ def test_doc_type
25
+ tok = []
26
+ @yaml.tokenize( "--- !foo/bar/^type \n" ) { |t| tok << t }
27
+ assert_equal [ :document, "--- !foo/bar/^type " ], [ tok.first.group, tok.shift ]
28
+ end
29
+
30
+ def test_key_no_indent
31
+ tok = []
32
+ @yaml.tokenize( "foo : bar" ) { |t| tok << t }
33
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
34
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
35
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
36
+ assert_equal [ :normal, " bar" ], [ tok.first.group, tok.shift ]
37
+ end
38
+
39
+ def test_key_indent
40
+ tok = []
41
+ @yaml.tokenize( " foo : bar" ) { |t| tok << t }
42
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
43
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
44
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
45
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
46
+ assert_equal [ :normal, " bar" ], [ tok.first.group, tok.shift ]
47
+ end
48
+
49
+ def test_key_quoted
50
+ tok = []
51
+ @yaml.tokenize( " 'foo' : bar" ) { |t| tok << t }
52
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
53
+ assert_equal [ :punct, "'" ], [ tok.first.group, tok.shift ]
54
+ assert_equal [ :string, "foo" ], [ tok.first.group, tok.shift ]
55
+ assert_equal [ :punct, "'" ], [ tok.first.group, tok.shift ]
56
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
57
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
58
+ assert_equal [ :normal, " bar" ], [ tok.first.group, tok.shift ]
59
+ end
60
+
61
+ def test_key_no_value
62
+ tok = []
63
+ @yaml.tokenize( " foo: \n bar:\n" ) { |t| tok << t }
64
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
65
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
66
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
67
+ assert_equal [ :normal, " \n " ], [ tok.first.group, tok.shift ]
68
+ assert_equal [ :key, "bar" ], [ tok.first.group, tok.shift ]
69
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
70
+ assert_equal [ :normal, "\n" ], [ tok.first.group, tok.shift ]
71
+ end
72
+
73
+ def test_list_no_indent
74
+ tok = []
75
+ @yaml.tokenize( "- bar" ) { |t| tok << t }
76
+ assert_equal [ :punct, "-" ], [ tok.first.group, tok.shift ]
77
+ assert_equal [ :normal, " bar" ], [ tok.first.group, tok.shift ]
78
+ end
79
+
80
+ def test_list_indent
81
+ tok = []
82
+ @yaml.tokenize( " - bar" ) { |t| tok << t }
83
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
84
+ assert_equal [ :punct, "-" ], [ tok.first.group, tok.shift ]
85
+ assert_equal [ :normal, " bar" ], [ tok.first.group, tok.shift ]
86
+ end
87
+
88
+ def test_blank_lines
89
+ tok = []
90
+ @yaml.tokenize( "foo: bar\n\n\nbaz: bang" ) { |t| tok << t }
91
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
92
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
93
+ assert_equal [ :normal, " bar\n\n\n" ], [ tok.first.group, tok.shift ]
94
+ assert_equal [ :key, "baz" ], [ tok.first.group, tok.shift ]
95
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
96
+ assert_equal [ :normal, " bang" ], [ tok.first.group, tok.shift ]
97
+ end
98
+
99
+ def test_type
100
+ tok = []
101
+ @yaml.tokenize( " - !name/space^type\n - foo" ) { |t| tok << t }
102
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
103
+ assert_equal [ :punct, "-" ], [ tok.first.group, tok.shift ]
104
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
105
+ assert_equal [ :type, "!name/space^type" ], [ tok.first.group, tok.shift ]
106
+ assert_equal [ :normal, "\n " ], [ tok.first.group, tok.shift ]
107
+ assert_equal [ :punct, "-" ], [ tok.first.group, tok.shift ]
108
+ assert_equal [ :normal, " foo" ], [ tok.first.group, tok.shift ]
109
+ end
110
+
111
+ def test_anchor_ref
112
+ tok = []
113
+ @yaml.tokenize( "foo: &blah\nbar: *blah" ) { |t| tok << t }
114
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
115
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
116
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
117
+ assert_equal [ :anchor, "&blah" ], [ tok.first.group, tok.shift ]
118
+ assert_equal [ :normal, "\n" ], [ tok.first.group, tok.shift ]
119
+ assert_equal [ :key, "bar" ], [ tok.first.group, tok.shift ]
120
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
121
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
122
+ assert_equal [ :ref, "*blah" ], [ tok.first.group, tok.shift ]
123
+ end
124
+
125
+ def test_time
126
+ tok = []
127
+ @yaml.tokenize( "foo: 01:23:45\n" ) { |t| tok << t }
128
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
129
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
130
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
131
+ assert_equal [ :time, "01:23:45" ], [ tok.first.group, tok.shift ]
132
+ assert_equal [ :normal, "\n" ], [ tok.first.group, tok.shift ]
133
+ end
134
+
135
+ def test_date
136
+ tok = []
137
+ @yaml.tokenize( "foo: 1234-56-78 01:23:45.123456 +01:23\n" ) { |t| tok << t }
138
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
139
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
140
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
141
+ assert_equal [ :date, "1234-56-78 01:23:45.123456 +01:23" ], [ tok.first.group, tok.shift ]
142
+ assert_equal [ :normal, "\n" ], [ tok.first.group, tok.shift ]
143
+ end
144
+
145
+ def test_string_dquote
146
+ tok = []
147
+ @yaml.tokenize( 'foo: "this is a \"string\""' ) { |t| tok << t }
148
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
149
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
150
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
151
+ assert_equal [ :punct, '"' ], [ tok.first.group, tok.shift ]
152
+ assert_equal [ :string, 'this is a ' ], [ tok.first.group, tok.shift ]
153
+ assert_equal [ :expr, '\"' ], [ tok.first.group, tok.shift ]
154
+ assert_equal [ :string, 'string' ], [ tok.first.group, tok.shift ]
155
+ assert_equal [ :expr, '\"' ], [ tok.first.group, tok.shift ]
156
+ assert_equal [ :punct, '"' ], [ tok.first.group, tok.shift ]
157
+ end
158
+
159
+ def test_string_squote
160
+ tok = []
161
+ @yaml.tokenize( "foo: 'this is a \\\"string\\\"'" ) { |t| tok << t }
162
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
163
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
164
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
165
+ assert_equal [ :punct, "'" ], [ tok.first.group, tok.shift ]
166
+ assert_equal [ :string, 'this is a \"string\"' ], [ tok.first.group, tok.shift ]
167
+ assert_equal [ :punct, "'" ], [ tok.first.group, tok.shift ]
168
+ end
169
+
170
+ def test_symbol
171
+ tok = []
172
+ @yaml.tokenize( " :foo: 'this is a \\\"string\\\"'" ) { |t| tok << t }
173
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
174
+ assert_equal [ :symbol, ":foo" ], [ tok.first.group, tok.shift ]
175
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
176
+ end
177
+
178
+ def test_comment
179
+ tok = []
180
+ @yaml.tokenize( "foo: a value # comment\n# another comment: foo\n" ) { |t| tok << t }
181
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
182
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
183
+ assert_equal [ :normal, " a value " ], [ tok.first.group, tok.shift ]
184
+ assert_equal [ :comment, "# comment" ], [ tok.first.group, tok.shift ]
185
+ assert_equal [ :normal, "\n" ], [ tok.first.group, tok.shift ]
186
+ assert_equal [ :comment, "# another comment: foo" ], [ tok.first.group, tok.shift ]
187
+ assert_equal [ :normal, "\n" ], [ tok.first.group, tok.shift ]
188
+ end
189
+
190
+ def test_long_text
191
+ tok = []
192
+ text = <<EOF
193
+ foo: >-
194
+ a b c d
195
+ e f g
196
+
197
+ h i
198
+
199
+
200
+ j k l
201
+ m n
202
+
203
+ bar: baz
204
+ EOF
205
+ @yaml.tokenize( text ) { |t| tok << t }
206
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
207
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
208
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
209
+ assert_equal [ :punct, ">-" ], [ tok.first.group, tok.shift ]
210
+ assert_equal [ :normal, "\n" ], [ tok.first.group, tok.shift ]
211
+ assert_equal [ :string, " a b c d\n e f g\n\n h i\n\n\n j k l\n m n\n\n" ], [ tok.first.group, tok.shift ]
212
+ assert_equal [ :key, "bar" ], [ tok.first.group, tok.shift ]
213
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
214
+ assert_equal [ :normal, " baz\n" ], [ tok.first.group, tok.shift ]
215
+ end
216
+
217
+ def test_long_test_at_eof
218
+ tok = []
219
+ @yaml.tokenize( "foo: >\n one two\n three four" ) { |t| tok << t }
220
+ assert_equal [ :key, "foo" ], [ tok.first.group, tok.shift ]
221
+ assert_equal [ :punct, ":" ], [ tok.first.group, tok.shift ]
222
+ assert_equal [ :normal, " " ], [ tok.first.group, tok.shift ]
223
+ assert_equal [ :punct, ">" ], [ tok.first.group, tok.shift ]
224
+ assert_equal [ :normal, "\n" ], [ tok.first.group, tok.shift ]
225
+ assert_equal [ :string, " one two\n three four" ], [ tok.first.group, tok.shift ]
226
+ end
227
+
228
+ end
metadata ADDED
@@ -0,0 +1,51 @@
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.8.4
3
+ specification_version: 1
4
+ name: syntax
5
+ version: !ruby/object:Gem::Version
6
+ version: 0.5.0
7
+ date: 2005-01-11
8
+ summary: Syntax is Ruby library for performing simple syntax highlighting.
9
+ require_paths:
10
+ - lib
11
+ email: jgb3@email.byu.edu
12
+ homepage:
13
+ rubyforge_project:
14
+ description:
15
+ autorequire: syntax
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: true
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ -
22
+ - ">"
23
+ - !ruby/object:Gem::Version
24
+ version: 0.0.0
25
+ version:
26
+ platform: ruby
27
+ authors:
28
+ - Jamis Buck
29
+ files:
30
+ - lib/syntax.rb
31
+ - lib/syntax
32
+ - lib/syntax/yaml.rb
33
+ - lib/syntax/common.rb
34
+ - lib/syntax/ruby.rb
35
+ - lib/syntax/convertors
36
+ - lib/syntax/xml.rb
37
+ - lib/syntax/version.rb
38
+ - lib/syntax/convertors/html.rb
39
+ - test/ALL-TESTS.rb
40
+ - test/syntax
41
+ - test/syntax/tc_yaml.rb
42
+ - test/syntax/tc_ruby.rb
43
+ - test/syntax/tc_xml.rb
44
+ test_files:
45
+ - test/ALL-TESTS.rb
46
+ rdoc_options: []
47
+ extra_rdoc_files: []
48
+ executables: []
49
+ extensions: []
50
+ requirements: []
51
+ dependencies: []