From d01b0666556df91b79398a16c0355adad430054b Mon Sep 17 00:00:00 2001 From: SvetoslavTsenov Date: Mon, 24 Apr 2017 15:05:27 +0300 Subject: [PATCH] Include test for memory leak with set bg image. Update pefr tests. --- apps/app/ui-tests-app/perf/main-page.ts | 1 + .../perf/memory-leaks/background-image.css | 15 ++++++ .../perf/memory-leaks/background-image.ts | 46 +++++++++++++++++++ .../perf/memory-leaks/background-image.xml | 20 ++++++++ .../perf/memory-leaks/main-page.ts | 23 ++++++++++ .../perf/memory-leaks/main-page.xml | 6 +++ .../ui-tests-app/perf/properties/main-page.ts | 1 + .../perf/properties/main-page.xml | 8 ++-- .../app/ui-tests-app/perf/properties/tests.ts | 30 ++++++------ 9 files changed, 133 insertions(+), 17 deletions(-) create mode 100644 apps/app/ui-tests-app/perf/memory-leaks/background-image.css create mode 100644 apps/app/ui-tests-app/perf/memory-leaks/background-image.ts create mode 100644 apps/app/ui-tests-app/perf/memory-leaks/background-image.xml create mode 100644 apps/app/ui-tests-app/perf/memory-leaks/main-page.ts create mode 100644 apps/app/ui-tests-app/perf/memory-leaks/main-page.xml diff --git a/apps/app/ui-tests-app/perf/main-page.ts b/apps/app/ui-tests-app/perf/main-page.ts index 820e8776d..032d4d621 100644 --- a/apps/app/ui-tests-app/perf/main-page.ts +++ b/apps/app/ui-tests-app/perf/main-page.ts @@ -11,6 +11,7 @@ export function pageLoaded(args: EventData) { let examples: Map = new Map(); examples.set("properties", "perf/properties/main-page"); + examples.set("memory-leaks", "perf/memory-leaks/main-page"); let viewModel = new SubMainPageViewModel(wrapLayout, examples); page.bindingContext = viewModel; diff --git a/apps/app/ui-tests-app/perf/memory-leaks/background-image.css b/apps/app/ui-tests-app/perf/memory-leaks/background-image.css new file mode 100644 index 000000000..0f4448e48 --- /dev/null +++ b/apps/app/ui-tests-app/perf/memory-leaks/background-image.css @@ -0,0 +1,15 @@ +/*.bg-main-page{ + background-image: url('~/ui-tests-app/image-view/gravatar.png'); +}*/ + +/*.image { +width:100; +height:100; + background-image: url('~/ui-tests-app/image-view/gravatar.png'); +clip-path: polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%); +}*/ + + +.info { + font-size: 20; +} \ No newline at end of file diff --git a/apps/app/ui-tests-app/perf/memory-leaks/background-image.ts b/apps/app/ui-tests-app/perf/memory-leaks/background-image.ts new file mode 100644 index 000000000..f21bb3ad0 --- /dev/null +++ b/apps/app/ui-tests-app/perf/memory-leaks/background-image.ts @@ -0,0 +1,46 @@ +import * as frame from "tns-core-modules/ui/frame"; +import { EventData } from "tns-core-modules/data/observable"; +import { Page } from "tns-core-modules/ui/page"; +import { Label } from "tns-core-modules/ui/label"; +import * as application from "tns-core-modules/application"; + +var indexCounter = 0; +var navCounter = 0; +var images = ["gravatar", "gravatar2", "red"]; + +export function onLoad(args: EventData) { + let index = indexCounter++ % 3; + let page = args.object; + page.backgroundImage = '~/ui-tests-app/image-view/' + images[index] + '.png'; + setLabelText(args.object.page, navCounter, "countInfo"); + getMemoryUsage(args); +} + +export function navigate(args: EventData) { + navCounter++; + frame.topmost().navigate("ui-tests-app/perf/memory-leaks/background-image"); +} + +export function navigateBack(args: EventData) { + navCounter--; + frame.topmost().goBack(); +} + +function setLabelText(page: Page, text: number, id: string) { + let label = page.getViewById(id); + label.text = text + ''; +} + +function getMemoryUsage(args: EventData) { + var mi = new android.app.ActivityManager.MemoryInfo(); + var activityManager = application.android.context.getSystemService(android.content.Context.ACTIVITY_SERVICE); + activityManager.getMemoryInfo(mi); + let usedMemory = mi.totalMem - mi.availMem; + + setLabelText(args.object, usedMemory, "usedMemory"); + + console.log("availMem in bytes: " + mi.availMem); + console.log("Percentage usage: " + (mi.availMem / mi.totalMem)); + console.log("Available memory (megabytes): " + mi.availMem); + console.log("Used memory (megabytes): " + usedMemory); +} diff --git a/apps/app/ui-tests-app/perf/memory-leaks/background-image.xml b/apps/app/ui-tests-app/perf/memory-leaks/background-image.xml new file mode 100644 index 000000000..8c2fcad9d --- /dev/null +++ b/apps/app/ui-tests-app/perf/memory-leaks/background-image.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + +