fix(compiler): don’t lowercase attributes to support svg

This reverts commit b89c5bc581 and adds an additional test.

Closes #5166
This commit is contained in:
Tobias Bosch 2015-11-06 11:31:03 -08:00
parent 63e853dcd7
commit 6133f2c08b
2 changed files with 5 additions and 7 deletions

View File

@ -43,9 +43,7 @@ function parseText(text: Text, indexInParent: number, parentSourceInfo: string):
function parseAttr(element: Element, parentSourceInfo: string, attrName: string,
attrValue: string): HtmlAttrAst {
// TODO(tbosch): add source row/column source info from parse5 / package:html
var lowerCaseAttrName = attrName.toLowerCase();
return new HtmlAttrAst(lowerCaseAttrName, attrValue,
`${parentSourceInfo}[${lowerCaseAttrName}=${attrValue}]`);
return new HtmlAttrAst(attrName, attrValue, `${parentSourceInfo}[${attrName}=${attrValue}]`);
}
function parseElement(element: Element, indexInParent: number,

View File

@ -81,11 +81,11 @@ export function main() {
]);
});
it('should parse and lower case attributes on regular elements', () => {
expect(humanizeDom(parser.parse('<div FoO="bar"></div>', 'TestComp')))
it('should parse attributes on svg elements case sensitive', () => {
expect(humanizeDom(parser.parse('<svg viewBox="0"></svg>', 'TestComp')))
.toEqual([
[HtmlElementAst, 'div', 'TestComp > div:nth-child(0)'],
[HtmlAttrAst, 'foo', 'bar', 'TestComp > div:nth-child(0)[foo=bar]']
[HtmlElementAst, 'svg', 'TestComp > svg:nth-child(0)'],
[HtmlAttrAst, 'viewBox', '0', 'TestComp > svg:nth-child(0)[viewBox=0]']
]);
});