// Copyright (c) Microsoft Corporation. All Rights Reserved. Licensed under the MIT License. See License.txt in the project root for license information.
//
module CorsicaTests {
"use strict";
var DeclTest = function (element, options) {
return options;
};
(DeclTest).supportedForProcessing = true;
window["DeclTest"] = DeclTest;
var AsyncDeclTest = function (element, options, complete) {
setTimeout(complete, 32);
return options;
};
(AsyncDeclTest).supportedForProcessing = true;
window["AsyncDeclTest"] = AsyncDeclTest;
var leafCount = 0;
var containerCount = 0;
var ContainerTestLeaf = function (element, options) {
leafCount++;
};
(ContainerTestLeaf).supportedForProcessing = true;
window["ContainerTestLeaf"] = ContainerTestLeaf;
var ContainerTestContainer = function (element, options) {
containerCount++;
};
(ContainerTestContainer).isDeclarativeControlContainer = true;
(ContainerTestContainer).supportedForProcessing = true;
window["ContainerTestContainer"] = ContainerTestContainer;
var SupportedForProcessingControl = function (element, options) {
element.winControl = this;
WinJS.UI.setOptions(this, options);
};
(SupportedForProcessingControl).supportedForProcessing = true;
window["SupportedForProcessingControl"] = SupportedForProcessingControl;
var NotSupportedForProcessingControl = function (element, options) {
element.winControl = this;
WinJS.UI.setOptions(this, options);
};
window["NotSupportedForProcessingControl"] = NotSupportedForProcessingControl;
// Define a property on window with a long unicode string
window["\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7Abcd123"] = "data";
function errorHandler(msg) {
try {
LiveUnit.Assert.fail("There was an unhandled error in your test: " + msg);
} catch (ex) { }
}
export class DeclarativeControls {
testSetControl() {
var control = {};
var element = document.createElement("div");
element.winControl = control;
LiveUnit.Assert.isTrue(control === element.winControl);
}
testContainers() {
var holder = document.createElement("div");
holder.innerHTML = "";
leafCount = 0;
containerCount = 0;
WinJS.UI.processAll(holder);
LiveUnit.Assert.areEqual(1, containerCount);
LiveUnit.Assert.areEqual(0, leafCount);
WinJS.UI.processAll(holder);
LiveUnit.Assert.areEqual(1, containerCount);
LiveUnit.Assert.areEqual(0, leafCount);
WinJS.UI.processAll(holder.firstChild.firstChild);
LiveUnit.Assert.areEqual(1, containerCount);
LiveUnit.Assert.areEqual(1, leafCount);
}
testBasicDeclaration() {
LiveUnit.Assert.isTrue(WinJS.Utilities.getMember("DeclTest"));
LiveUnit.Assert.areEqual(WinJS.Utilities.getMember("DeclTest")(5, 5), 5);
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.process(holder.firstChild);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(123, control.test);
}
testBasicDeclarationWhitespace() {
LiveUnit.Assert.isTrue(WinJS.Utilities.getMember("DeclTest"));
LiveUnit.Assert.areEqual(WinJS.Utilities.getMember("DeclTest")(5, 5), 5);
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.process(holder.firstChild);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(123, control.test);
}
testBasicAsyncDeclaration(complete) {
LiveUnit.Assert.isTrue(WinJS.Utilities.getMember("AsyncDeclTest"));
LiveUnit.Assert.areEqual(WinJS.Utilities.getMember("AsyncDeclTest")(5, 5, function () { }), 5);
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.process(holder.firstChild).then(function (control) {
LiveUnit.Assert.areEqual(123, control.test);
complete();
});
}
testCallbackBasicDeclaration() {
LiveUnit.Assert.isTrue(WinJS.Utilities.getMember("DeclTest"));
LiveUnit.Assert.areEqual(WinJS.Utilities.getMember("DeclTest")(5, 5), 5);
var holder = document.createElement("div");
holder.innerHTML = "";
var callbackCount = 0;
var callback = function () {
callbackCount++;
};
WinJS.UI.process(holder.firstChild).then(callback);
LiveUnit.Assert.areEqual(1, callbackCount);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(123, control.test);
}
testCallbackForElementWithoutControl() {
LiveUnit.Assert.isTrue(WinJS.Utilities.getMember("DeclTest"));
LiveUnit.Assert.areEqual(WinJS.Utilities.getMember("DeclTest")(5, 5), 5);
var element = document.createElement("div");
var callbackCount = 0;
var callback = function () {
callbackCount++;
};
WinJS.UI.process(element).then(callback);
LiveUnit.Assert.areEqual(1, callbackCount);
}
testCallbackBasicDeclarationWithProcessAllOnRootWithControl() {
LiveUnit.Assert.isTrue(WinJS.Utilities.getMember("DeclTest"));
LiveUnit.Assert.areEqual(WinJS.Utilities.getMember("DeclTest")(5, 5), 5);
var holder = document.createElement("div");
holder.innerHTML = "";
var callbackCount = 0;
var callback = function () {
callbackCount++;
};
WinJS.UI.processAll(holder.firstChild).then(callback);
LiveUnit.Assert.areEqual(1, callbackCount);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(123, control.test);
}
testCallbackBasicDeclarationWithProcessAll() {
LiveUnit.Assert.isTrue(WinJS.Utilities.getMember("DeclTest"));
LiveUnit.Assert.areEqual(WinJS.Utilities.getMember("DeclTest")(5, 5), 5);
var holder = document.createElement("div");
holder.innerHTML = "";
var callbackCount = 0;
var callback = function () {
callbackCount++;
};
WinJS.UI.processAll(holder).then(callback);
LiveUnit.Assert.areEqual(1, callbackCount);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(123, control.test);
control = (holder.lastChild).winControl;
LiveUnit.Assert.areEqual(134, control.test);
}
testCallbackBasicDeclarationWithProcessAllWithoutControls() {
LiveUnit.Assert.isTrue(WinJS.Utilities.getMember("DeclTest"));
LiveUnit.Assert.areEqual(WinJS.Utilities.getMember("DeclTest")(5, 5), 5);
var holder = document.createElement("div");
var callbackCount = 0;
var callback = function () {
callbackCount++;
};
WinJS.UI.processAll(holder).then(callback);
LiveUnit.Assert.areEqual(1, callbackCount);
}
testInvalidDeclaration() {
var holder = document.createElement("div");
holder.innerHTML = "";
var hadException = false;
var control;
WinJS.UI.process(holder.firstChild).then(
function (c) { control = c; },
function (e) {
LiveUnit.Assert.areEqual("Invalid data-win-control attribute", e);
hadException = true;
});
LiveUnit.Assert.isFalse(hadException);
LiveUnit.Assert.areEqual(undefined, control);
}
testProcessAll() {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(123, control.test);
}
testOptions1() {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual("blah blah blah", control.test1);
LiveUnit.Assert.areEqual(-55.22, control.test2);
}
testOptions2() {
var holder = document.createElement("div");
window['blahblah'] = "Testing...";
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual("Testing...", control.test1);
LiveUnit.Assert.areEqual(true, control.test2);
LiveUnit.Assert.areEqual(false, control.test3);
delete window['blahblah'];
}
testOptions3() {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(-42, control["test1 with spaces"]);
LiveUnit.Assert.areEqual(53.6, control["test2 with spaces"]);
LiveUnit.Assert.areEqual(0.55, control["test3 with spaces"]);
}
testOptions4() {
var holder = document.createElement("div");
window['testOptions4Function'] = function () { };
// used in this test
WinJS.Utilities.markSupportedForProcessing(window['testOptions4Function']);
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(55, control.test1);
LiveUnit.Assert.areEqual(null, control.test2);
LiveUnit.Assert.areEqual(window['testOptions4Function'], control.test3);
delete window['testOptions4Function'];
}
testOptions5() {
var holder = document.createElement("div");
window['blahblah'] = "Testing...";
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual("Testing...", control.test1);
LiveUnit.Assert.areEqual("false", control.test3);
delete window['blahblah'];
}
testOptions6() {
var holder = document.createElement("div");
window['blahblah'] = { a: 20, b: { c: 30, d: 40 } };
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(window['blahblah'], control.test1);
LiveUnit.Assert.areEqual(20, control.test2);
LiveUnit.Assert.areEqual(30, control.test3);
LiveUnit.Assert.areEqual(40, control.test4);
delete window['blahblah'];
}
testOptions8() {
var holder = document.createElement("div");
holder.innerHTML = "";
var hitCatch = false;
WinJS.UI.processAll(holder).then(null, function () { hitCatch = true; });
LiveUnit.Assert.isTrue(hitCatch);
}
testManyControls() {
var holder = document.createElement("div");
var control;
for (var i = 0; i < 1000; i++) {
control = document.createElement("div");
control.setAttribute("data-win-control", "DeclTest");
control.setAttribute("data-win-options", "{test:" + i + "}");
holder.appendChild(control);
}
WinJS.UI.processAll(holder);
for (i = 0; i < 1000; i++) {
control = holder.children[i].winControl;
LiveUnit.Assert.areEqual(i, control.test);
}
}
// Test an options with value/property of a long unicode string
testLocalizedOptions1() {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual("\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7Abcd123", control.test1);
LiveUnit.Assert.areEqual(-55.22, control["\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7Abcd123"], "Can't name option property something localized");
}
testLocalizedOptions2() {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(window["\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7Abcd123"], control.test1);
LiveUnit.Assert.areEqual(window["\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7\u624d\u80fd\u30bd\u042b\u2168\u84a4\u90f3\u0930\u094d\u0915\u094d\u0921\u094d\u0930\u093e\u00fc\u0131\u015f\u011f\u0130li\u064a\u0648\u0646\u064a\u0643\u0648\u062f\u00f6\u00c4\u00fc\u00df\u00a7Abcd123"], control.test2);
}
testControlDocumentFragment(complete) {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.Fragments.clearCache(holder);
var frag = document.createElement("div");
WinJS.UI.Fragments.renderCopy(holder).then(function (docfrag) {
frag.appendChild(docfrag);
WinJS.UI.Fragments.clearCache(holder);
var docFrag = document.createDocumentFragment();
docFrag.appendChild(frag);
WinJS.UI.processAll(docFrag);
var control = (docFrag.firstChild.firstChild).winControl;
LiveUnit.Assert.areEqual(123, control.test);
complete();
});
}
testControlFragment(complete) {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.Fragments.clearCache(holder);
var frag = document.createElement("div");
WinJS.UI.Fragments.renderCopy(holder).then(function (docfrag) {
frag.appendChild(docfrag);
WinJS.UI.Fragments.clearCache(holder);
WinJS.UI.process(frag.firstChild);
var control = (frag.firstChild).winControl;
LiveUnit.Assert.areEqual(123, control.test);
complete();
});
}
testOptionQueryExpressionBasicNotFoundElement(complete) {
var holder = document.createElement("div");
document.body.appendChild(holder);
try {
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual(null, control.a);
}
finally {
WinJS.Utilities.disposeSubTree(holder);
document.body.removeChild(holder);
complete();
}
}
testOptionQueryExpressionBasicFindElementById_LookupFromRoot_AtRootScope(complete) {
var testElement = document.createElement("div");
testElement.id = "test";
testElement.className = "root";
var holder = document.createElement("div");
document.body.appendChild(testElement);
document.body.appendChild(holder);
try {
holder.innerHTML = "";
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual("DIV", control.a.tagName);
LiveUnit.Assert.areEqual("test", control.a.id);
LiveUnit.Assert.areEqual("root", control.a.className);
}
finally {
WinJS.Utilities.disposeSubTree(holder);
WinJS.Utilities.disposeSubTree(testElement);
document.body.removeChild(testElement);
document.body.removeChild(holder);
complete();
}
}
testOptionQueryExpressionBasicFindElementById_LookupFromRoot_AtCurrentScope(complete) {
var holder = document.createElement("div");
document.body.appendChild(holder);
try {
holder.innerHTML = "";
var currentTestElement = document.createElement("div");
currentTestElement.id = "test";
currentTestElement.className = "current";
holder.appendChild(currentTestElement);
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual("DIV", control.a.tagName);
LiveUnit.Assert.areEqual("test", control.a.id);
LiveUnit.Assert.areEqual("current", control.a.className);
}
finally {
WinJS.Utilities.disposeSubTree(holder);
document.body.removeChild(holder);
complete();
}
}
testOptionQueryExpressionBasicFindElementByClass_LookupFromRoot(complete) {
//The one at root should be selected
var rootTestElement = document.createElement("div");
rootTestElement.className = "test";
rootTestElement.id = "root";
document.body.appendChild(rootTestElement);
var holder = document.createElement("div");
document.body.appendChild(holder);
try {
holder.innerHTML = "";
var currentTestElement = document.createElement("div");
currentTestElement.className = "test";
currentTestElement.id = "current";
holder.appendChild(currentTestElement);
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual("DIV", control.a.tagName);
LiveUnit.Assert.areEqual("test", control.a.className);
LiveUnit.Assert.areEqual("root", control.a.id);
}
finally {
WinJS.Utilities.disposeSubTree(holder);
WinJS.Utilities.disposeSubTree(rootTestElement);
document.body.removeChild(holder);
document.body.removeChild(rootTestElement);
complete();
}
}
testOptionQueryExpressionBasicFindElementByClass_LookupFromParent(complete) {
//The one at root should be selected
var holderParentElement = document.createElement("div");
holderParentElement.className = "test";
holderParentElement.id = "parent";
document.body.appendChild(holderParentElement);
var holder = document.createElement("div");
holderParentElement.appendChild(holder);
try {
holder.innerHTML = "";
var currentTestElement = document.createElement("div");
currentTestElement.className = "test";
currentTestElement.id = "current";
holder.appendChild(currentTestElement);
WinJS.UI.processAll(holder);
var control = (holder.firstChild).winControl;
LiveUnit.Assert.areEqual("DIV", control.a.tagName);
LiveUnit.Assert.areEqual("test", control.a.className);
LiveUnit.Assert.areEqual("parent", control.a.id);
}
finally {
WinJS.Utilities.disposeSubTree(holderParentElement);
document.body.removeChild(holderParentElement);
complete();
}
}
testOptionQueryExpressionBasicFindElementByClass_FragmentNotParented_LookupFromFragment(complete) {
var mainTreeTestElement = document.createElement("div");
mainTreeTestElement.className = "test";
mainTreeTestElement.id = "root";
document.body.appendChild(mainTreeTestElement);
var holder = document.createElement("div");
document.body.appendChild(holder);
var frag = document.createElement("div");
holder.innerHTML = "";
var fragTestElement = document.createElement("div");
fragTestElement.className = "test";
fragTestElement.id = "fragment";
holder.appendChild(fragTestElement);
WinJS.UI.Fragments.clearCache(holder);
WinJS.UI.Fragments.renderCopy(holder)
.then(function (docfrag) {
frag.appendChild(docfrag);
WinJS.UI.Fragments.clearCache(holder);
document.body.appendChild(frag);
return WinJS.UI.processAll(document.body);
})
.then(function () {
var control = frag.querySelector("[data-win-control=DeclTest]").winControl;
LiveUnit.Assert.areEqual("DIV", control.a.tagName);
LiveUnit.Assert.areEqual("test", control.a.className);
LiveUnit.Assert.areEqual("fragment", control.a.id);
})
.then(null, errorHandler)
.then(function () {
WinJS.Utilities.disposeSubTree(mainTreeTestElement);
WinJS.Utilities.disposeSubTree(holder);
WinJS.Utilities.disposeSubTree(frag);
document.body.removeChild(mainTreeTestElement);
document.body.removeChild(holder);
document.body.removeChild(frag);
})
.then(complete);
}
testOptionQueryExpressionBasicFindElementByClass_FragmentParented_LookupFromFragment(complete) {
var mainTreeTestElement = document.createElement("div");
mainTreeTestElement.className = "test";
mainTreeTestElement.id = "root";
try {
var holder = document.createElement("div");
holder.innerHTML = "";
var fragTestElement = document.createElement("div");
fragTestElement.className = "test";
fragTestElement.id = "fragment";
holder.appendChild(fragTestElement);
WinJS.UI.Fragments.clearCache(holder);
WinJS.UI.Fragments.renderCopy(holder, mainTreeTestElement);
document.body.appendChild(mainTreeTestElement);
WinJS.UI.processAll(document.body);
var control = (mainTreeTestElement.firstChild.firstChild).winControl;
LiveUnit.Assert.areEqual("DIV", control.a.tagName);
LiveUnit.Assert.areEqual("test", control.a.className);
LiveUnit.Assert.areEqual("root", control.a.id);
}
finally {
WinJS.Utilities.disposeSubTree(mainTreeTestElement);
document.body.removeChild(mainTreeTestElement);
complete();
}
}
testOptionQueryExpressionBasicFindElementByClass_LocalTemplate_LookupFromWithinTemplate(complete) {
var holder = document.createElement("div");
holder.innerHTML = "";
var data = { text: "sometext" };
var template = new WinJS.Binding.Template(holder);
template.render(data)
.then(function (d) {
LiveUnit.Assert.areEqual("sometext", d.textContent);
LiveUnit.Assert.areEqual("DIV", (d.firstChild.firstChild).winControl.a.tagName);
LiveUnit.Assert.areEqual("test", (d.firstChild.firstChild).winControl.a.id);
})
.then(null, errorHandler)
.then(complete);
}
testScopedSelect() {
var docfrag = document.createDocumentFragment();
var d = document.createElement("div");
docfrag.appendChild(d);
d.className = "root";
d.innerHTML = "myClass2
";
(d.children[0]).msParentSelectorScope = true;
(d.children[1]).msParentSelectorScope = true;
var element = d.querySelector(".element");
LiveUnit.Assert.areEqual(d.children[0], WinJS.UI.scopedSelect(".myClass", element));
LiveUnit.Assert.areEqual(d.children[1], WinJS.UI.scopedSelect(".myClass2", element));
LiveUnit.Assert.areEqual((d.children[0]).children[0], WinJS.UI.scopedSelect(".element", element));
LiveUnit.Assert.areEqual(d, WinJS.UI.scopedSelect(".root", element));
}
testRequireSupportedForProcessing_StrictProcessing() {
try {
var f = function () { };
WinJS.Utilities.requireSupportedForProcessing(f);
LiveUnit.Assert.fail("should not get here when strictProcessing");
} catch (e) {
LiveUnit.Assert.areEqual("WinJS.Utilities.requireSupportedForProcessing", e.name);
}
try {
var f2 = function () { };
WinJS.Utilities.markSupportedForProcessing(f2);
WinJS.Utilities.requireSupportedForProcessing(f2);
} catch (e) {
LiveUnit.Assert.fail("should not get here when strictProcessing");
}
}
testUsingNotSupportedForProcessingCtor_StrictProcessing(complete) {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.processAll(holder.firstChild).then(
function () {
LiveUnit.Assert.fail("should not get here when strictProcessing");
},
function (e) {
LiveUnit.Assert.areEqual("WinJS.Utilities.requireSupportedForProcessing", e.name);
}
)
.then(null, errorHandler)
.then(complete);
}
testUsingNotSupportedForProcessingValue_StrictProcessing(complete) {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.processAll(holder.firstChild).then(
function () {
LiveUnit.Assert.fail("should not get here when strictProcessing");
},
function (e) {
LiveUnit.Assert.areEqual("WinJS.Utilities.requireSupportedForProcessing", e.name);
}
)
.then(null, errorHandler)
.then(complete);
}
testUsingWindow_StrictProcessing(complete) {
var holder = document.createElement("div");
holder.innerHTML = "";
WinJS.UI.processAll(holder.firstChild).then(
function () {
LiveUnit.Assert.fail("should not get here when strictProcessing");
},
function (e) {
LiveUnit.Assert.areEqual("WinJS.Utilities.requireSupportedForProcessing", e.name);
}
)
.then(null, errorHandler)
.then(complete);
}
};
}
LiveUnit.registerTestClass("CorsicaTests.DeclarativeControls");