', [ { tag: 'title', start: 0, end: 20, endTagStart: 12, closed: true, children: [ { tag: 'div', start: 7, end: 12, endTagStart: void 0, closed: false, children: [] } ] }] );
- assertDocument('
', [ { tag: 'h1', start: 0, end: 20, endTagStart: 15, closed: true, children: [ { tag: 'div', start: 4, end: 15, endTagStart: void 0, closed: false, children: [ { tag: 'span', start: 9, end: 15, endTagStart: void 0, closed: false, children: [] }] } ] }] );
-});
+ assertDocument('', []);
+ assertDocument(' ', [{ tag: 'div', start: 0, end: 11, endTagStart: 5, closed: true, children: [] }]);
+ assertDocument('', [{ tag: 'div', start: 0, end: 16, endTagStart: void 0, closed: false, children: [{ tag: 'div', start: 5, end: 16, endTagStart: 10, closed: true, children: [] }] }]);
+ assertDocument('
', [{ tag: 'title', start: 0, end: 20, endTagStart: 12, closed: true, children: [{ tag: 'div', start: 7, end: 12, endTagStart: void 0, closed: false, children: [] }] }]);
+ assertDocument('
', [{ tag: 'h1', start: 0, end: 20, endTagStart: 15, closed: true, children: [{ tag: 'div', start: 4, end: 15, endTagStart: void 0, closed: false, children: [{ tag: 'span', start: 9, end: 15, endTagStart: void 0, closed: false, children: [] }] }] }]);
+ });
test('FindNodeBefore', () => {
diff --git a/extensions/html/server/src/service/test/scanner.test.ts b/extensions/html/server/src/service/test/scanner.test.ts
index 1943c4137bd..ae73eb845d1 100644
--- a/extensions/html/server/src/service/test/scanner.test.ts
+++ b/extensions/html/server/src/service/test/scanner.test.ts
@@ -10,20 +10,20 @@ import {Scanner, TokenType, ScannerState, createScanner} from '../parser/htmlSca
suite('HTML Scanner', () => {
interface Token {
- offset:number;
- type:TokenType;
+ offset: number;
+ type: TokenType;
content?: string;
}
- function assertTokens(tests: {input: string; tokens: Token[]; }[]) {
+ function assertTokens(tests: { input: string; tokens: Token[]; }[]) {
let scannerState = ScannerState.WithinContent;
for (let t of tests) {
let scanner = createScanner(t.input, 0, scannerState);
let tokenType = scanner.scan();
- let actual : Token[] = [];
+ let actual: Token[] = [];
while (tokenType !== TokenType.EOS) {
- let actualToken : Token= { offset: scanner.getTokenOffset(), type: tokenType };
+ let actualToken: Token = { offset: scanner.getTokenOffset(), type: tokenType };
if (tokenType == TokenType.StartTag || tokenType == TokenType.EndTag) {
actualToken.content = t.input.substr(scanner.getTokenOffset(), scanner.getTokenLength());
}
@@ -39,9 +39,10 @@ suite('HTML Scanner', () => {
assertTokens([{
input: ' {
assertTokens([{
input: ' {
assertTokens([{
input: '< abc',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.Whitespace },
- { offset:2, type: TokenType.StartTag, content: 'abc' }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.Whitespace },
+ { offset: 2, type: TokenType.StartTag, content: 'abc' }
+ ]
+ }
]);
});
@@ -70,11 +73,12 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '< abc>',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.Whitespace },
- { offset:2, type: TokenType.StartTag, content: 'abc' },
- { offset:5, type: TokenType.StartTagClose },
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.Whitespace },
+ { offset: 2, type: TokenType.StartTag, content: 'abc' },
+ { offset: 5, type: TokenType.StartTagClose },
+ ]
+ }
]);
});
@@ -82,11 +86,12 @@ suite('HTML Scanner', () => {
assertTokens([{
input: 'i {
assertTokens([{
input: '<',
tokens: [
- { offset:0, type: TokenType.StartTagOpen }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen }
+ ]
+ }
]);
});
@@ -103,9 +109,10 @@ suite('HTML Scanner', () => {
assertTokens([{
input: ' {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -124,11 +132,12 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -136,10 +145,11 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'foo:bar' },
- { offset:8, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'foo:bar' },
+ { offset: 8, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -147,10 +157,11 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.EndTagOpen },
- { offset:2, type: TokenType.EndTag, content: 'abc' },
- { offset:5, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.EndTagOpen },
+ { offset: 2, type: TokenType.EndTag, content: 'abc' },
+ { offset: 5, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -158,11 +169,12 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.EndTagOpen },
- { offset:2, type: TokenType.EndTag, content: 'abc' },
- { offset:5, type: TokenType.Whitespace },
- { offset:7, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.EndTagOpen },
+ { offset: 2, type: TokenType.EndTag, content: 'abc' },
+ { offset: 5, type: TokenType.Whitespace },
+ { offset: 7, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -170,11 +182,12 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.StartTagSelfClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.StartTagSelfClose }
+ ]
+ }
]);
});
@@ -182,18 +195,19 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.Whitespace },
- { offset:8, type: TokenType.AttributeName },
- { offset:12, type: TokenType.DelimiterAssign },
- { offset:13, type: TokenType.AttributeValue },
- { offset:30, type: TokenType.StartTagClose },
- { offset:31, type: TokenType.Script },
- { offset:41, type: TokenType.EndTagOpen },
- { offset:43, type: TokenType.EndTag, content: 'script' },
- { offset:49, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.Whitespace },
+ { offset: 8, type: TokenType.AttributeName },
+ { offset: 12, type: TokenType.DelimiterAssign },
+ { offset: 13, type: TokenType.AttributeValue },
+ { offset: 30, type: TokenType.StartTagClose },
+ { offset: 31, type: TokenType.Script },
+ { offset: 41, type: TokenType.EndTagOpen },
+ { offset: 43, type: TokenType.EndTag, content: 'script' },
+ { offset: 49, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -201,24 +215,27 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
- tokens: [
- { offset:0, type: TokenType.EndTagOpen },
- { offset:2, type: TokenType.EndTag, content: 'script' },
- { offset:8, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.Whitespace },
+ { offset: 8, type: TokenType.AttributeName },
+ { offset: 12, type: TokenType.DelimiterAssign },
+ { offset: 13, type: TokenType.AttributeValue },
+ { offset: 30, type: TokenType.StartTagClose }
+ ]
+ }, {
+ input: 'var i= 10;',
+ tokens: [
+ { offset: 0, type: TokenType.Script }
+ ]
+ }, {
+ input: '',
+ tokens: [
+ { offset: 0, type: TokenType.EndTagOpen },
+ { offset: 2, type: TokenType.EndTag, content: 'script' },
+ { offset: 8, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -226,21 +243,23 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
- tokens: [
- { offset:0, type: TokenType.EndTagOpen },
- { offset:2, type: TokenType.EndTag, content: 'script' },
- { offset:8, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.Whitespace },
+ { offset: 8, type: TokenType.AttributeName },
+ { offset: 12, type: TokenType.DelimiterAssign },
+ { offset: 13, type: TokenType.AttributeValue },
+ { offset: 30, type: TokenType.StartTagClose },
+ { offset: 31, type: TokenType.Script }
+ ]
+ }, {
+ input: '',
+ tokens: [
+ { offset: 0, type: TokenType.EndTagOpen },
+ { offset: 2, type: TokenType.EndTag, content: 'script' },
+ { offset: 8, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -248,21 +267,23 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
- tokens: [
- { offset:0, type: TokenType.Script },
- { offset:10, type: TokenType.EndTagOpen },
- { offset:12, type: TokenType.EndTag, content: 'script' },
- { offset:18, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.Whitespace },
+ { offset: 8, type: TokenType.AttributeName },
+ { offset: 12, type: TokenType.DelimiterAssign },
+ { offset: 13, type: TokenType.AttributeValue },
+ { offset: 30, type: TokenType.StartTagClose }
+ ]
+ }, {
+ input: 'var i= 10;',
+ tokens: [
+ { offset: 0, type: TokenType.Script },
+ { offset: 10, type: TokenType.EndTagOpen },
+ { offset: 12, type: TokenType.EndTag, content: 'script' },
+ { offset: 18, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -270,18 +291,19 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.Whitespace },
- { offset:8, type: TokenType.AttributeName },
- { offset:12, type: TokenType.DelimiterAssign },
- { offset:13, type: TokenType.AttributeValue },
- { offset:25, type: TokenType.StartTagClose },
- { offset:26, type: TokenType.Script },
- { offset:30, type: TokenType.EndTagOpen },
- { offset:32, type: TokenType.EndTag, content: 'script' },
- { offset:38, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.Whitespace },
+ { offset: 8, type: TokenType.AttributeName },
+ { offset: 12, type: TokenType.DelimiterAssign },
+ { offset: 13, type: TokenType.AttributeValue },
+ { offset: 25, type: TokenType.StartTagClose },
+ { offset: 26, type: TokenType.Script },
+ { offset: 30, type: TokenType.EndTagOpen },
+ { offset: 32, type: TokenType.EndTag, content: 'script' },
+ { offset: 38, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -289,21 +311,22 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.StartTagClose },
- { offset:8, type: TokenType.Script },
- { offset:9, type: TokenType.EndTagOpen },
- { offset:11, type: TokenType.EndTag, content: 'script' },
- { offset:17, type: TokenType.EndTagClose },
- { offset:18, type: TokenType.StartTagOpen },
- { offset:19, type: TokenType.StartTag, content: 'script' },
- { offset:25, type: TokenType.StartTagClose },
- { offset:26, type: TokenType.Script },
- { offset:27, type: TokenType.EndTagOpen },
- { offset:29, type: TokenType.EndTag, content: 'script' },
- { offset:35, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.StartTagClose },
+ { offset: 8, type: TokenType.Script },
+ { offset: 9, type: TokenType.EndTagOpen },
+ { offset: 11, type: TokenType.EndTag, content: 'script' },
+ { offset: 17, type: TokenType.EndTagClose },
+ { offset: 18, type: TokenType.StartTagOpen },
+ { offset: 19, type: TokenType.StartTag, content: 'script' },
+ { offset: 25, type: TokenType.StartTagClose },
+ { offset: 26, type: TokenType.Script },
+ { offset: 27, type: TokenType.EndTagOpen },
+ { offset: 29, type: TokenType.EndTag, content: 'script' },
+ { offset: 35, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -311,17 +334,18 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.Whitespace },
- { offset:8, type: TokenType.AttributeName },
- { offset:12, type: TokenType.DelimiterAssign },
- { offset:13, type: TokenType.AttributeValue },
- { offset:30, type: TokenType.StartTagClose },
- { offset:31, type: TokenType.EndTagOpen },
- { offset:33, type: TokenType.EndTag, content: 'script' },
- { offset:39, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.Whitespace },
+ { offset: 8, type: TokenType.AttributeName },
+ { offset: 12, type: TokenType.DelimiterAssign },
+ { offset: 13, type: TokenType.AttributeValue },
+ { offset: 30, type: TokenType.StartTagClose },
+ { offset: 31, type: TokenType.EndTagOpen },
+ { offset: 33, type: TokenType.EndTag, content: 'script' },
+ { offset: 39, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -329,14 +353,15 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.StartTagClose },
- { offset:8, type: TokenType.Script },
- { offset:18, type: TokenType.EndTagOpen },
- { offset:20, type: TokenType.EndTag, content: 'script' },
- { offset:26, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.StartTagClose },
+ { offset: 8, type: TokenType.Script },
+ { offset: 18, type: TokenType.EndTagOpen },
+ { offset: 20, type: TokenType.EndTag, content: 'script' },
+ { offset: 26, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -344,21 +369,22 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.Whitespace },
- { offset:8, type: TokenType.AttributeName },
- { offset:12, type: TokenType.DelimiterAssign },
- { offset:13, type: TokenType.AttributeValue },
- { offset:30, type: TokenType.Whitespace },
- { offset:31, type: TokenType.AttributeName },
- { offset:34, type: TokenType.DelimiterAssign },
- { offset:35, type: TokenType.AttributeValue },
- { offset:44, type: TokenType.StartTagClose },
- { offset:45, type: TokenType.EndTagOpen },
- { offset:47, type: TokenType.EndTag, content: 'script' },
- { offset:53, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.Whitespace },
+ { offset: 8, type: TokenType.AttributeName },
+ { offset: 12, type: TokenType.DelimiterAssign },
+ { offset: 13, type: TokenType.AttributeValue },
+ { offset: 30, type: TokenType.Whitespace },
+ { offset: 31, type: TokenType.AttributeName },
+ { offset: 34, type: TokenType.DelimiterAssign },
+ { offset: 35, type: TokenType.AttributeValue },
+ { offset: 44, type: TokenType.StartTagClose },
+ { offset: 45, type: TokenType.EndTagOpen },
+ { offset: 47, type: TokenType.EndTag, content: 'script' },
+ { offset: 53, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -366,14 +392,15 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '"); -->',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.StartTagClose },
- { offset:8, type: TokenType.Script },
- { offset:44, type: TokenType.EndTagOpen },
- { offset:46, type: TokenType.EndTag, content: 'script' },
- { offset:52, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.StartTagClose },
+ { offset: 8, type: TokenType.Script },
+ { offset: 44, type: TokenType.EndTagOpen },
+ { offset: 46, type: TokenType.EndTag, content: 'script' },
+ { offset: 52, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -381,14 +408,15 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '"); ',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.StartTagClose },
- { offset:8, type: TokenType.Script },
- { offset:41, type: TokenType.EndTagOpen },
- { offset:43, type: TokenType.EndTag, content: 'script' },
- { offset:49, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.StartTagClose },
+ { offset: 8, type: TokenType.Script },
+ { offset: 41, type: TokenType.EndTagOpen },
+ { offset: 43, type: TokenType.EndTag, content: 'script' },
+ { offset: 49, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -397,18 +425,19 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '"); ',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.StartTagClose },
- { offset:8, type: TokenType.Script },
- { offset:20, type: TokenType.EndTagOpen },
- { offset:22, type: TokenType.EndTag, content: 'script' },
- { offset:28, type: TokenType.EndTagClose },
- { offset:29, type: TokenType.Content },
- { offset:33, type: TokenType.EndTagOpen },
- { offset:35, type: TokenType.EndTag, content: 'script' },
- { offset:41, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.StartTagClose },
+ { offset: 8, type: TokenType.Script },
+ { offset: 20, type: TokenType.EndTagOpen },
+ { offset: 22, type: TokenType.EndTag, content: 'script' },
+ { offset: 28, type: TokenType.EndTagClose },
+ { offset: 29, type: TokenType.Content },
+ { offset: 33, type: TokenType.EndTagOpen },
+ { offset: 35, type: TokenType.EndTag, content: 'script' },
+ { offset: 41, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -416,18 +445,19 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '"); ',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'script' },
- { offset:7, type: TokenType.StartTagClose },
- { offset:8, type: TokenType.Script },
- { offset:24, type: TokenType.EndTagOpen },
- { offset:26, type: TokenType.EndTag, content: 'script' },
- { offset:32, type: TokenType.EndTagClose },
- { offset:33, type: TokenType.Content },
- { offset:37, type: TokenType.EndTagOpen },
- { offset:39, type: TokenType.EndTag, content: 'script' },
- { offset:45, type: TokenType.EndTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'script' },
+ { offset: 7, type: TokenType.StartTagClose },
+ { offset: 8, type: TokenType.Script },
+ { offset: 24, type: TokenType.EndTagOpen },
+ { offset: 26, type: TokenType.EndTag, content: 'script' },
+ { offset: 32, type: TokenType.EndTagClose },
+ { offset: 33, type: TokenType.Content },
+ { offset: 37, type: TokenType.EndTagOpen },
+ { offset: 39, type: TokenType.EndTag, content: 'script' },
+ { offset: 45, type: TokenType.EndTagClose }
+ ]
+ }
]);
});
@@ -435,14 +465,15 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:8, type: TokenType.DelimiterAssign },
- { offset:9, type: TokenType.AttributeValue },
- { offset:14, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 8, type: TokenType.DelimiterAssign },
+ { offset: 9, type: TokenType.AttributeValue },
+ { offset: 14, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -450,14 +481,15 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:8, type: TokenType.DelimiterAssign },
- { offset:9, type: TokenType.AttributeValue },
- { offset:14, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 8, type: TokenType.DelimiterAssign },
+ { offset: 9, type: TokenType.AttributeValue },
+ { offset: 14, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -465,14 +497,15 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:8, type: TokenType.DelimiterAssign },
- { offset:9, type: TokenType.AttributeValue },
- { offset:11, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 8, type: TokenType.DelimiterAssign },
+ { offset: 9, type: TokenType.AttributeValue },
+ { offset: 11, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -480,18 +513,19 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:8, type: TokenType.DelimiterAssign },
- { offset:9, type: TokenType.AttributeValue },
- { offset:14, type: TokenType.Whitespace },
- { offset:15, type: TokenType.AttributeName },
- { offset:18, type: TokenType.DelimiterAssign },
- { offset:19, type: TokenType.AttributeValue },
- { offset:24, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 8, type: TokenType.DelimiterAssign },
+ { offset: 9, type: TokenType.AttributeValue },
+ { offset: 14, type: TokenType.Whitespace },
+ { offset: 15, type: TokenType.AttributeName },
+ { offset: 18, type: TokenType.DelimiterAssign },
+ { offset: 19, type: TokenType.AttributeValue },
+ { offset: 24, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -499,18 +533,19 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:8, type: TokenType.DelimiterAssign },
- { offset:9, type: TokenType.AttributeValue },
- { offset:12, type: TokenType.Whitespace },
- { offset:13, type: TokenType.AttributeName },
- { offset:16, type: TokenType.DelimiterAssign },
- { offset:17, type: TokenType.AttributeValue },
- { offset:24, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 8, type: TokenType.DelimiterAssign },
+ { offset: 9, type: TokenType.AttributeValue },
+ { offset: 12, type: TokenType.Whitespace },
+ { offset: 13, type: TokenType.AttributeName },
+ { offset: 16, type: TokenType.DelimiterAssign },
+ { offset: 17, type: TokenType.AttributeValue },
+ { offset: 24, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -518,15 +553,16 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:8, type: TokenType.DelimiterAssign },
- { offset:9, type: TokenType.Whitespace },
- { offset:11, type: TokenType.AttributeValue },
- { offset:16, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 8, type: TokenType.DelimiterAssign },
+ { offset: 9, type: TokenType.Whitespace },
+ { offset: 11, type: TokenType.AttributeValue },
+ { offset: 16, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -534,16 +570,17 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:8, type: TokenType.Whitespace },
- { offset:9, type: TokenType.DelimiterAssign },
- { offset:10, type: TokenType.Whitespace },
- { offset:11, type: TokenType.AttributeValue },
- { offset:16, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 8, type: TokenType.Whitespace },
+ { offset: 9, type: TokenType.DelimiterAssign },
+ { offset: 10, type: TokenType.Whitespace },
+ { offset: 11, type: TokenType.AttributeValue },
+ { offset: 16, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -551,12 +588,13 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:8, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 8, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -564,14 +602,15 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:8, type: TokenType.Whitespace },
- { offset:9, type: TokenType.AttributeName },
- { offset:12, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 8, type: TokenType.Whitespace },
+ { offset: 9, type: TokenType.AttributeName },
+ { offset: 12, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -579,14 +618,15 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:11, type: TokenType.DelimiterAssign },
- { offset:12, type: TokenType.AttributeValue },
- { offset:17, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 11, type: TokenType.DelimiterAssign },
+ { offset: 12, type: TokenType.AttributeValue },
+ { offset: 17, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -594,24 +634,25 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartTagOpen },
- { offset:1, type: TokenType.StartTag, content: 'abc' },
- { offset:4, type: TokenType.Whitespace },
- { offset:5, type: TokenType.AttributeName },
- { offset:13, type: TokenType.Whitespace },
- { offset:14, type: TokenType.AttributeName },
- { offset:21, type: TokenType.DelimiterAssign },
- { offset:22, type: TokenType.AttributeValue },
- { offset:27, type: TokenType.Whitespace },
- { offset:28, type: TokenType.AttributeName },
- { offset:35, type: TokenType.DelimiterAssign },
- { offset:36, type: TokenType.AttributeValue },
- { offset:50, type: TokenType.Whitespace },
- { offset:51, type: TokenType.AttributeName },
- { offset:56, type: TokenType.DelimiterAssign },
- { offset:57, type: TokenType.AttributeValue },
- { offset:72, type: TokenType.StartTagClose }
- ]}
+ { offset: 0, type: TokenType.StartTagOpen },
+ { offset: 1, type: TokenType.StartTag, content: 'abc' },
+ { offset: 4, type: TokenType.Whitespace },
+ { offset: 5, type: TokenType.AttributeName },
+ { offset: 13, type: TokenType.Whitespace },
+ { offset: 14, type: TokenType.AttributeName },
+ { offset: 21, type: TokenType.DelimiterAssign },
+ { offset: 22, type: TokenType.AttributeValue },
+ { offset: 27, type: TokenType.Whitespace },
+ { offset: 28, type: TokenType.AttributeName },
+ { offset: 35, type: TokenType.DelimiterAssign },
+ { offset: 36, type: TokenType.AttributeValue },
+ { offset: 50, type: TokenType.Whitespace },
+ { offset: 51, type: TokenType.AttributeName },
+ { offset: 56, type: TokenType.DelimiterAssign },
+ { offset: 57, type: TokenType.AttributeValue },
+ { offset: 72, type: TokenType.StartTagClose }
+ ]
+ }
]);
});
@@ -619,13 +660,14 @@ suite('HTML Scanner', () => {
assertTokens([{
input: '',
tokens: [
- { offset:0, type: TokenType.StartDoctypeTag },
- { offset:9, type: TokenType.Doctype },
- { offset:23, type: TokenType.EndDoctypeTag }
- ]}
+ { offset: 0, type: TokenType.StartDoctypeTag },
+ { offset: 9, type: TokenType.Doctype },
+ { offset: 23, type: TokenType.EndDoctypeTag }
+ ]
+ }
]);
});
});
\ No newline at end of file