mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-15 11:01:21 +08:00
feat(angular xml): Support [prop] and (tap) bindings
This commit is contained in:
40
node-tests/test-angular-xml.ts
Normal file
40
node-tests/test-angular-xml.ts
Normal file
@ -0,0 +1,40 @@
|
||||
import {assert} from "chai";
|
||||
import xml = require('xml');
|
||||
|
||||
describe("angular xml parser", () => {
|
||||
let last_element = null;
|
||||
let last_attrs = null;
|
||||
let parser = null;
|
||||
|
||||
beforeEach(() => {
|
||||
parser = new xml.XmlParser(function (event: xml.ParserEvent) {
|
||||
switch (event.eventType) {
|
||||
case xml.ParserEventType.StartElement:
|
||||
last_element = event.elementName;
|
||||
last_attrs = event.attributes;
|
||||
break;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
it("parses [property] binding", () => {
|
||||
parser.parse("<TextField [text]='somevar' />");
|
||||
|
||||
assert.equal('TextField', last_element);
|
||||
assert.equal(last_attrs['[text]'], 'somevar');
|
||||
});
|
||||
|
||||
it("parses (event) binding", () => {
|
||||
parser.parse("<TextField (tap)='onTap(blah)' />");
|
||||
|
||||
assert.equal('TextField', last_element);
|
||||
assert.equal(last_attrs['(tap)'], 'onTap(blah)');
|
||||
});
|
||||
|
||||
it("parsers (^event) binding", () => {
|
||||
parser.parse("<TextField (^tap)='onTap(blah)' />");
|
||||
|
||||
assert.equal('TextField', last_element);
|
||||
assert.equal(last_attrs['(^tap)'], 'onTap(blah)');
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user