Merge pull request #4074 from NativeScript/update-perf

Update memory-leak and properties page
This commit is contained in:
SvetoslavTsenov
2017-04-28 10:36:56 +03:00
committed by GitHub
2 changed files with 15 additions and 5 deletions

View File

@ -2,6 +2,7 @@ import { EventData } from "tns-core-modules/data/observable";
import { MainPageViewModel } from "../../mainPage"; import { MainPageViewModel } from "../../mainPage";
import { WrapLayout } from "tns-core-modules/ui/layouts/wrap-layout"; import { WrapLayout } from "tns-core-modules/ui/layouts/wrap-layout";
import { Page } from "tns-core-modules/ui/page"; import { Page } from "tns-core-modules/ui/page";
import { isAndroid } from "tns-core-modules/platform";
export function pageLoaded(args: EventData) { export function pageLoaded(args: EventData) {
let page = <Page>args.object; let page = <Page>args.object;
@ -10,8 +11,9 @@ export function pageLoaded(args: EventData) {
let wrapLayout = view.getViewById(page, "wrapLayoutWithExamples"); let wrapLayout = view.getViewById(page, "wrapLayoutWithExamples");
let examples: Map<string, string> = new Map<string, string>(); let examples: Map<string, string> = new Map<string, string>();
if (isAndroid) {
examples.set("background-image", "perf/memory-leaks/background-image"); examples.set("background-image", "perf/memory-leaks/background-image");
}
let viewModel = new SubMainPageViewModel(wrapLayout, examples); let viewModel = new SubMainPageViewModel(wrapLayout, examples);
page.bindingContext = viewModel; page.bindingContext = viewModel;
} }

View File

@ -3,13 +3,14 @@ import { StackLayout } from "tns-core-modules/ui/layouts/stack-layout";
import { Label } from "tns-core-modules/ui/label"; import { Label } from "tns-core-modules/ui/label";
const average = 3; const average = 3;
const noValue = "noValue";
const colors = ['red', 'green']; const colors = ['red', 'green'];
export function addRemove(counts: Array<number>, parent: LayoutBase): string { export function addRemove(counts: Array<number>, parent: LayoutBase): string {
let result = `addRemove`; let result = `addRemove`;
counts.forEach((count) => { counts.forEach((count) => {
if (count > 10000) { if (count > 10000) {
result += setResultTime(noValue);
return; return;
} }
@ -46,6 +47,7 @@ export function setBackgroundColor(counts: Array<number>, parent?: LayoutBase):
let result = `setBackgroundColor ${parent ? 'with nativeView' : ''}`; let result = `setBackgroundColor ${parent ? 'with nativeView' : ''}`;
counts.forEach((count) => { counts.forEach((count) => {
if (parent && count > 10000) { if (parent && count > 10000) {
result += setResultTime(noValue);
return; return;
} }
@ -67,6 +69,7 @@ export function setBorderWidths(counts: Array<number>, parent?: LayoutBase): str
let result = `setBorderWidths ${parent ? 'with nativeView' : ''}`; let result = `setBorderWidths ${parent ? 'with nativeView' : ''}`;
counts.forEach((count) => { counts.forEach((count) => {
if (count > 10000 && parent) { if (count > 10000 && parent) {
result += setResultTime(noValue);
return; return;
} }
@ -107,6 +110,7 @@ export function setColorWithParents(counts: Array<number>, parent: LayoutBase):
const style = parent.style; const style = parent.style;
counts.forEach((count) => { counts.forEach((count) => {
if (count > 10000) { if (count > 10000) {
result += setResultTime(noValue);
return; return;
} }
@ -144,6 +148,7 @@ export function setFontSizeWithParents(counts: Array<number>, parent: LayoutBase
const style = parent.style; const style = parent.style;
counts.forEach((count) => { counts.forEach((count) => {
if (count > 1000) { if (count > 1000) {
result += setResultTime(noValue);
return; return;
} }
@ -180,6 +185,7 @@ export function setFontWeightWithParents(counts: Array<number>, parent: LayoutBa
const style = parent.style; const style = parent.style;
counts.forEach((count) => { counts.forEach((count) => {
if (count > 1000) { if (count > 1000) {
result += setResultTime(noValue);
return; return;
} }
@ -214,6 +220,7 @@ export function setBindingContextWithParents(counts: Array<number>, parent: Layo
let result = `setBindingContextWithParents`; let result = `setBindingContextWithParents`;
counts.forEach((count) => { counts.forEach((count) => {
if (count > 10000) { if (count > 10000) {
result += setResultTime(noValue);
return; return;
} }
setupParents(parent); setupParents(parent);
@ -232,6 +239,7 @@ export function setBindingContextWithParentsBound(counts: Array<number>, parent:
let result = `setBindingContextWithParentsBound`; let result = `setBindingContextWithParentsBound`;
counts.forEach((count) => { counts.forEach((count) => {
if (count > 1000) { if (count > 1000) {
result += setResultTime(noValue);
return; return;
} }
@ -301,5 +309,5 @@ function executeTest(func: Function): string {
} }
function setResultTime(time: string) { function setResultTime(time: string) {
return ' ' + `\t${time}` + ' '; return `\t${time}`;
} }