@@ -169,6 +169,32 @@ QUnit.test('A simple tag', function(assert) {
169169 assert . deepEqual ( tokens , [ startTag ( 'div' ) ] ) ;
170170} ) ;
171171
172+ QUnit . test ( 'A simple tag with leading non alpha chars' , function ( assert ) {
173+ let tokens = tokenize ( '<_div>' ) ;
174+ assert . deepEqual ( tokens , [ startTag ( '_div' ) ] ) ;
175+
176+ tokens = tokenize ( '<$div>' ) ;
177+ assert . deepEqual ( tokens , [ startTag ( '$div' ) ] ) ;
178+
179+ tokens = tokenize ( '<:div>' ) ;
180+ assert . deepEqual ( tokens , [ startTag ( ':div' ) ] ) ;
181+
182+ tokens = tokenize ( '<@div>' ) ;
183+ assert . deepEqual ( tokens , [ startTag ( '@div' ) ] ) ;
184+
185+ tokens = tokenize ( '<üdiv>' ) ;
186+ assert . deepEqual ( tokens , [ startTag ( 'üdiv' ) ] ) ;
187+
188+ tokens = tokenize ( '<€div>' ) ;
189+ assert . deepEqual ( tokens , [ startTag ( '€div' ) ] ) ;
190+
191+ tokens = tokenize ( '<div😀>' ) ;
192+ assert . deepEqual ( tokens , [ startTag ( 'div😀' ) ] ) ;
193+
194+ tokens = tokenize ( '<di😀v>' ) ;
195+ assert . deepEqual ( tokens , [ startTag ( 'di😀v' ) ] ) ;
196+ } ) ;
197+
172198QUnit . test ( 'A simple tag with trailing spaces' , function ( assert ) {
173199 let tokens = tokenize ( '<div \t\n>' ) ;
174200 assert . deepEqual ( tokens , [ startTag ( 'div' ) ] ) ;
@@ -179,6 +205,32 @@ QUnit.test('A simple closing tag', function(assert) {
179205 assert . deepEqual ( tokens , [ endTag ( 'div' ) ] ) ;
180206} ) ;
181207
208+ QUnit . test ( 'A simple closing tag with leading non alpha chars' , function ( assert ) {
209+ let tokens = tokenize ( '</_div>' ) ;
210+ assert . deepEqual ( tokens , [ endTag ( '_div' ) ] ) ;
211+
212+ tokens = tokenize ( '</$div>' ) ;
213+ assert . deepEqual ( tokens , [ endTag ( '$div' ) ] ) ;
214+
215+ tokens = tokenize ( '</:div>' ) ;
216+ assert . deepEqual ( tokens , [ endTag ( ':div' ) ] ) ;
217+
218+ tokens = tokenize ( '</@div>' ) ;
219+ assert . deepEqual ( tokens , [ endTag ( '@div' ) ] ) ;
220+
221+ tokens = tokenize ( '</üdiv>' ) ;
222+ assert . deepEqual ( tokens , [ endTag ( 'üdiv' ) ] ) ;
223+
224+ tokens = tokenize ( '</€div>' ) ;
225+ assert . deepEqual ( tokens , [ endTag ( '€div' ) ] ) ;
226+
227+ tokens = tokenize ( '</di😀v>' ) ;
228+ assert . deepEqual ( tokens , [ endTag ( 'di😀v' ) ] ) ;
229+
230+ tokens = tokenize ( '</div😀>' ) ;
231+ assert . deepEqual ( tokens , [ endTag ( 'div😀' ) ] ) ;
232+ } ) ;
233+
182234QUnit . test ( 'A simple closing tag with trailing spaces' , function ( assert ) {
183235 let tokens = tokenize ( '</div \t\n>' ) ;
184236 assert . deepEqual ( tokens , [ endTag ( 'div' ) ] ) ;
0 commit comments