mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-16 03:31:45 +08:00
Increased the wait to make sure the test passes in PR builds.
This commit is contained in:
@ -2,7 +2,7 @@
|
||||
import TKUnit = require("../../TKUnit");
|
||||
|
||||
export function onShownModally(args: ShownModallyData) {
|
||||
TKUnit.wait(0.100);
|
||||
TKUnit.wait(0.350);
|
||||
args.context.shownModally = true;
|
||||
args.closeCallback("return value");
|
||||
}
|
@ -394,49 +394,6 @@ export function test_WhenPageIsLoadedFrameCurrentPageIsTheSameInstance() {
|
||||
}
|
||||
}
|
||||
|
||||
export function test_WhenPageIsLoadedItCanShowAnotherPageAsModal_iOS() {
|
||||
if (platform.device.os === platform.platformNames.android) {
|
||||
// We can't show a modal from another modal on Android.
|
||||
return;
|
||||
}
|
||||
|
||||
var masterPage;
|
||||
var ctx = {
|
||||
shownModally: false
|
||||
};
|
||||
|
||||
var modalClosed = false;
|
||||
var modalCloseCallback = function (returnValue: any) {
|
||||
TKUnit.assert(ctx.shownModally, "Modal-page must be shown!");
|
||||
TKUnit.assert(returnValue === "return value", "Modal-page must return value!");
|
||||
modalClosed = true;
|
||||
}
|
||||
|
||||
var loadedEventHandler = function (args) {
|
||||
var basePath = "ui/page/";
|
||||
args.object.showModal(basePath + "modal-page", ctx, modalCloseCallback, false);
|
||||
};
|
||||
|
||||
var masterPageFactory = function(): PageModule.Page {
|
||||
masterPage = new PageModule.Page();
|
||||
masterPage.id = "newPage";
|
||||
masterPage.on(view.View.loadedEvent, loadedEventHandler);
|
||||
var label = new LabelModule.Label();
|
||||
label.text = "Text";
|
||||
masterPage.content = label;
|
||||
return masterPage;
|
||||
};
|
||||
|
||||
try {
|
||||
helper.navigate(masterPageFactory);
|
||||
TKUnit.waitUntilReady(() => { return modalClosed; });
|
||||
masterPage.off(view.View.loadedEvent, loadedEventHandler);
|
||||
}
|
||||
finally {
|
||||
helper.goBack();
|
||||
}
|
||||
}
|
||||
|
||||
//export function test_ModalPage_Layout_is_Correct() {
|
||||
// var testPage: PageModule.Page;
|
||||
// var label: LabelModule.Label;
|
||||
|
@ -3,6 +3,7 @@ import PageModule = require("ui/page");
|
||||
import TKUnit = require("../../TKUnit");
|
||||
import LabelModule = require("ui/label");
|
||||
import helper = require("../helper");
|
||||
import view = require("ui/core/view");
|
||||
|
||||
global.moduleMerge(PageTestCommon, exports);
|
||||
|
||||
@ -23,3 +24,42 @@ export function test_NavigateToNewPage_InnerControl() {
|
||||
TKUnit.assert(label.android === undefined, "InnerControl.android should be undefined after navigate back.");
|
||||
TKUnit.assert(label.isLoaded === false, "InnerControl.isLoaded should become false after navigating back");
|
||||
}
|
||||
|
||||
export function test_WhenPageIsLoadedItCanShowAnotherPageAsModal() {
|
||||
var masterPage;
|
||||
var ctx = {
|
||||
shownModally: false
|
||||
};
|
||||
|
||||
var modalClosed = false;
|
||||
var modalCloseCallback = function (returnValue: any) {
|
||||
TKUnit.assert(ctx.shownModally, "Modal-page must be shown!");
|
||||
TKUnit.assert(returnValue === "return value", "Modal-page must return value!");
|
||||
TKUnit.wait(0.350);
|
||||
modalClosed = true;
|
||||
}
|
||||
|
||||
var loadedEventHandler = function (args) {
|
||||
var basePath = "ui/page/";
|
||||
args.object.showModal(basePath + "modal-page", ctx, modalCloseCallback, false);
|
||||
};
|
||||
|
||||
var masterPageFactory = function (): PageModule.Page {
|
||||
masterPage = new PageModule.Page();
|
||||
masterPage.id = "newPage";
|
||||
masterPage.on(view.View.loadedEvent, loadedEventHandler);
|
||||
var label = new LabelModule.Label();
|
||||
label.text = "Text";
|
||||
masterPage.content = label;
|
||||
return masterPage;
|
||||
};
|
||||
|
||||
try {
|
||||
helper.navigate(masterPageFactory);
|
||||
TKUnit.waitUntilReady(() => { return modalClosed; });
|
||||
masterPage.off(view.View.loadedEvent, loadedEventHandler);
|
||||
}
|
||||
finally {
|
||||
helper.goBack();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user