mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
66 lines
2.4 KiB
TypeScript
66 lines
2.4 KiB
TypeScript
import * as TKUnit from "../../tk-unit";
|
|
// >> article-creating-view
|
|
import { isIOS, isAndroid } from "tns-core-modules/platform";
|
|
import * as utils from "tns-core-modules/utils/utils";
|
|
import * as helper from "../../ui-helper";
|
|
import * as viewModule from "tns-core-modules/ui/core/view";
|
|
|
|
// >> article-require-placeholder-module
|
|
import * as placeholderModule from "tns-core-modules/ui/placeholder";
|
|
// << article-require-placeholder-module
|
|
|
|
function creatingView(args) {
|
|
let nativeView;
|
|
if (isIOS) {
|
|
nativeView = UITextView.new();
|
|
nativeView.text = "Native";
|
|
} else if (isAndroid) {
|
|
nativeView = new android.widget.TextView(utils.ad.getApplicationContext());
|
|
nativeView.setText("Native");
|
|
}
|
|
|
|
args.view = nativeView;
|
|
}
|
|
|
|
exports.creatingView = creatingView;
|
|
// << article-creating-view
|
|
|
|
export function test_placeholder_creatingView() {
|
|
const p = new placeholderModule.Placeholder();
|
|
p.on(placeholderModule.Placeholder.creatingViewEvent, (args: placeholderModule.CreateViewEventData) => {
|
|
let nativeView;
|
|
if (isIOS) {
|
|
nativeView = UITextView.new();
|
|
nativeView.text = "Native";
|
|
} else if (isAndroid) {
|
|
nativeView = new android.widget.TextView(utils.ad.getApplicationContext());
|
|
nativeView.setText("Native");
|
|
}
|
|
|
|
args.view = nativeView;
|
|
});
|
|
|
|
function testAction(views: Array<viewModule.View>) {
|
|
if (isIOS) {
|
|
TKUnit.assert(p.nativeViewProtected instanceof UITextView, "nativeView property should be UITextView. Current value: " + p.nativeViewProtected);
|
|
} else if (isAndroid) {
|
|
TKUnit.assert(p.nativeViewProtected instanceof android.widget.TextView, "Native view should be android.widget.TextView. Current value: " + p.nativeViewProtected);
|
|
}
|
|
}
|
|
|
|
helper.buildUIAndRunTest(p, testAction);
|
|
}
|
|
|
|
export function test_placeholder_will_not_crash_wihout_creatingView() {
|
|
const p = new placeholderModule.Placeholder();
|
|
|
|
function testAction(views: Array<viewModule.View>) {
|
|
if (isIOS) {
|
|
TKUnit.assert(p.ios === undefined, "ios property should be undefined. Current value: " + p.ios);
|
|
} else if (isAndroid) {
|
|
TKUnit.assert(p.android === undefined, "android view should be undefined. Current value: " + p.android);
|
|
}
|
|
}
|
|
|
|
helper.buildUIAndRunTest(p, testAction);
|
|
} |