diff --git a/e2e/ui-tests-app/app/bottom-navigation/fancy-fonts-page.css b/e2e/ui-tests-app/app/bottom-navigation/fancy-fonts-page.css
index 9a953c1cf..49ee94e57 100644
--- a/e2e/ui-tests-app/app/bottom-navigation/fancy-fonts-page.css
+++ b/e2e/ui-tests-app/app/bottom-navigation/fancy-fonts-page.css
@@ -10,24 +10,21 @@ ActionBar {
background-color: aquamarine;
}
-BottomNavigation {
- background-color: lightgreen;
-}
-
Button {
background-color: lightskyblue;
}
-#lastItem {
- color: black;
+BottomNavigation {
+ background-color: lightgreen;
}
-TabStripItem:active {
- background-color: coral;
+#lastStripItem {
+ color: greenyellow;
+ background-color: black;
}
-TabContentItem:active {
- background-color: aquamarine;
+TabStripItem:active, #lastStripItem:active {
+ background-color:coral;
}
#second-tab-content-item {
diff --git a/e2e/ui-tests-app/app/bottom-navigation/fancy-fonts-page.xml b/e2e/ui-tests-app/app/bottom-navigation/fancy-fonts-page.xml
index 99862ad89..fe7a3dfe6 100644
--- a/e2e/ui-tests-app/app/bottom-navigation/fancy-fonts-page.xml
+++ b/e2e/ui-tests-app/app/bottom-navigation/fancy-fonts-page.xml
@@ -13,8 +13,8 @@
-
-
+
+
diff --git a/e2e/ui-tests-app/app/bottom-navigation/font-page.xml b/e2e/ui-tests-app/app/bottom-navigation/font-page.xml
index 969df0cc0..0d88fce33 100644
--- a/e2e/ui-tests-app/app/bottom-navigation/font-page.xml
+++ b/e2e/ui-tests-app/app/bottom-navigation/font-page.xml
@@ -1,9 +1,9 @@
-
+
-
+
diff --git a/e2e/ui-tests-app/app/bottom-navigation/text-transform-page.xml b/e2e/ui-tests-app/app/bottom-navigation/text-transform-page.xml
index 16dbdb1da..1685010c3 100644
--- a/e2e/ui-tests-app/app/bottom-navigation/text-transform-page.xml
+++ b/e2e/ui-tests-app/app/bottom-navigation/text-transform-page.xml
@@ -1,9 +1,9 @@
-
+
-
+
diff --git a/e2e/ui-tests-app/e2e/suites/button/background/button-background-page.ts b/e2e/ui-tests-app/e2e/suites/button/background/button-background-page.ts
index b73ae3612..7bc8d8964 100644
--- a/e2e/ui-tests-app/e2e/suites/button/background/button-background-page.ts
+++ b/e2e/ui-tests-app/e2e/suites/button/background/button-background-page.ts
@@ -46,10 +46,10 @@ export class ButtonBackgroundPage extends PageObjectBaseModel {
}
}
- async executeScenario(imageName: string, button: string) {
+ async executeScenario(button: string) {
const presenter = await this.testElement();
await this.tapBtn(button);
- const result = await this._driver.compareElement(presenter, imageName, 0.01, 5, ImageOptions.percent);
+ const result = await this._driver.compareElement(presenter, undefined, 0.01, 5, ImageOptions.percent);
assert.isTrue(result);
}
}
\ No newline at end of file
diff --git a/e2e/ui-tests-app/e2e/suites/button/background/button-background.e2e-spec.ts b/e2e/ui-tests-app/e2e/suites/button/background/button-background.e2e-spec.ts
index 7d291b150..1938ede8a 100644
--- a/e2e/ui-tests-app/e2e/suites/button/background/button-background.e2e-spec.ts
+++ b/e2e/ui-tests-app/e2e/suites/button/background/button-background.e2e-spec.ts
@@ -1,12 +1,13 @@
import { AppiumDriver, createDriver, nsCapabilities } from "nativescript-dev-appium";
import { ButtonBackgroundPage } from "./button-background-page";
import { assert } from "chai";
-import { ImageOptions } from "nativescript-dev-appium/lib/image-options";
+import { setImageName } from "../../../helpers/image-helper";
const suite = "button";
const spec = "background";
+const imagePrefix = `${suite}-${spec}`;
-describe(`${suite}-${spec}-suite`, () => {
+describe(`${imagePrefix}-suite`, () => {
let driver: AppiumDriver;
let backgroundPage: ButtonBackgroundPage;
@@ -16,6 +17,7 @@ describe(`${suite}-${spec}-suite`, () => {
await driver.restartApp();
backgroundPage = new ButtonBackgroundPage(driver);
await backgroundPage.initSuite();
+ driver.imageHelper.options.donNotAppendActualSuffixOnIntialImageCapture = true;
});
after(async function () {
@@ -23,7 +25,7 @@ describe(`${suite}-${spec}-suite`, () => {
});
beforeEach(function () {
- driver.imageHelper.testName = this.currentTest.title;
+ driver.imageHelper.testName = setImageName(suite, spec, this.currentTest.title);
});
afterEach(async function () {
@@ -34,127 +36,126 @@ describe(`${suite}-${spec}-suite`, () => {
}
});
- it("background_11", async function () {
+ it(`${imagePrefix}-init`, async function () {
const presenter = await backgroundPage.testElement();
- const result = await driver.compareElement(presenter, "background_11_clean", 0.1, 2);
+ const result = await driver.compareElement(presenter, `${imagePrefix}-reset`);
assert.isTrue(result);
});
- it("background_12", async function () {
- await await backgroundPage.executeScenario("background_12", "1");
+ it(`${imagePrefix}-1`, async function () {
+ await await backgroundPage.executeScenario("1");
});
- it("background_13", async function () {
+ it(`${imagePrefix}-reset`, async function () {
await backgroundPage.tapResetBtn();
const presenter = await backgroundPage.testElement();
- const result = await driver.compareElement(presenter, "background_11_clean");
+ const result = await driver.compareElement(presenter, `${imagePrefix}-reset`);
assert.isTrue(result);
});
// Border
- it("background_21_border", async function () {
- // await backgroundPage.navigateBackToSuitMainPage();
- await backgroundPage.executeScenario("background_21_border", "21");
+ it(`${imagePrefix}-21-borders`, async function () {
+ await backgroundPage.executeScenario("21");
});
- it("background_22_border", async function () {
- await backgroundPage.executeScenario("background_22_border", "22");
+ it(`${imagePrefix}-22-borders`, async function () {
+ await backgroundPage.executeScenario("22");
});
- it("background_23_border", async function () {
- await backgroundPage.executeScenario("background_23_border", "23");
+ it(`${imagePrefix}-23-borders`, async function () {
+ await backgroundPage.executeScenario("23");
});
// Repeat
- it("background_31_repeat", async function () {
- await backgroundPage.executeScenario("background_31_repeat", "31");
+ it(`${imagePrefix}-31-repeat`, async function () {
+ await backgroundPage.executeScenario("31");
});
- it("background_32_repeat", async function () {
- await backgroundPage.executeScenario("background_32_repeat", "32");
+ it(`${imagePrefix}-32-repeat`, async function () {
+ await backgroundPage.executeScenario("32");
});
- it("background_33_repeat", async function () {
- await backgroundPage.executeScenario("background_33_repeat", "33");
+ it(`${imagePrefix}-33-repeat`, async function () {
+ await backgroundPage.executeScenario("33");
});
// Position
- it("background_41_position", async function () {
- await backgroundPage.executeScenario("background_41_position", "41");
+ it(`${imagePrefix}-41-position`, async function () {
+ await backgroundPage.executeScenario("41");
});
- it("background_42_position", async function () {
- await backgroundPage.executeScenario("background_42_position", "42");
+ it(`${imagePrefix}-42-position`, async function () {
+ await backgroundPage.executeScenario("42");
});
- it("background_43_position", async function () {
- await backgroundPage.executeScenario("background_43_position", "43");
+ it(`${imagePrefix}-43-position`, async function () {
+ await backgroundPage.executeScenario("43");
});
- it("background_44_position", async function () {
- await backgroundPage.executeScenario("background_44_position", "44");
+ it(`${imagePrefix}-44-position`, async function () {
+ await backgroundPage.executeScenario("44");
});
- it("background_45_position", async function () {
- await backgroundPage.executeScenario("background_45_position", "45");
+ it(`${imagePrefix}-45-position`, async function () {
+ await backgroundPage.executeScenario("45");
});
- it("background_46_position", async function () {
- await backgroundPage.executeScenario("background_46_position", "46");
+ it(`${imagePrefix}-46-position`, async function () {
+ await backgroundPage.executeScenario("46");
});
- it("background_47_position", async function () {
- await backgroundPage.executeScenario("background_47_position", "47");
+ it(`${imagePrefix}-47-position`, async function () {
+ await backgroundPage.executeScenario("47");
});
- it("background_48_position", async function () {
- await backgroundPage.executeScenario("background_48_position", "48");
+ it(`${imagePrefix}-48-position`, async function () {
+ await backgroundPage.executeScenario("48");
});
- it("background_49_position", async function () {
- await backgroundPage.executeScenario("background_49_position", "49");
+ it(`${imagePrefix}-49-position`, async function () {
+ await backgroundPage.executeScenario("49");
});
- it("background_50_position", async function () {
- await backgroundPage.executeScenario("background_50_position", "50");
+ it(`${imagePrefix}-50-position`, async function () {
+ await backgroundPage.executeScenario("50");
});
- it("background_51_position", async function () {
- await backgroundPage.executeScenario("background_51_position", "51");
+ it(`${imagePrefix}-51-position`, async function () {
+ await backgroundPage.executeScenario("51");
});
- it("background_52_position", async function () {
- await backgroundPage.executeScenario("background_52_position", "52");
+ it(`${imagePrefix}-52-position`, async function () {
+ await backgroundPage.executeScenario("52");
});
// Size
- it("background_61_size", async function () {
- await backgroundPage.executeScenario("background_61_size", "61");
+ it(`${imagePrefix}-61-size`, async function () {
+ await backgroundPage.executeScenario("61");
});
- it("background_62_size", async function () {
- await backgroundPage.executeScenario("background_62_size", "62");
+ it(`${imagePrefix}-62-size`, async function () {
+ await backgroundPage.executeScenario("62");
});
- it("background_63_size", async function () {
- await backgroundPage.executeScenario("background_63_size", "63");
+ it(`${imagePrefix}-63-size`, async function () {
+ await backgroundPage.executeScenario("63");
});
- it("background_64_size", async function () {
- await backgroundPage.executeScenario("background_64_size", "64");
+ it(`${imagePrefix}-64-size`, async function () {
+ await backgroundPage.executeScenario("64");
});
// All
- it("background_71_all", async function () {
- await backgroundPage.executeScenario("background_71_all", "71");
+ it(`${imagePrefix}-71-all`, async function () {
+ await backgroundPage.executeScenario("71");
});
- it("background_72_all", async function () {
- await backgroundPage.executeScenario("background_72_all", "72");
+ it(`${imagePrefix}-72-all`, async function () {
+ await backgroundPage.executeScenario("72");
});
// Antialiasing
- it("background_78_antialiasing", async function () {
- await backgroundPage.executeScenario("background_78_antialiasing", "78");
+ it(`${imagePrefix}-78-antialiasing`, async function () {
+ await backgroundPage.executeScenario("78");
});
});
\ No newline at end of file
diff --git a/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation-base-page.ts b/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation-base-page.ts
index c68dbd992..53d8561cb 100644
--- a/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation-base-page.ts
+++ b/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation-base-page.ts
@@ -14,6 +14,8 @@ export class BottomNavigationBasePage extends PageObjectBaseModel {
this._driver.imageHelper.options.keepOriginalImageSize = false;
this._driver.imageHelper.options.tolerance = 0;
this._driver.imageHelper.options.toleranceType = ImageOptions.pixel;
+ // this._driver.imageHelper.options.donNotAppendActualSuffixOnIntialImageCapture = true;
+ this._driver.imageHelper.options.timeOutSeconds = 7;
}
async init(subSuiteName: string) {
diff --git a/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation-css-properties.e2e-spec.ts b/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation-css-properties.e2e-spec.ts
index 8fb624b54..06227fe7b 100644
--- a/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation-css-properties.e2e-spec.ts
+++ b/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation-css-properties.e2e-spec.ts
@@ -7,8 +7,9 @@ import { assert } from "chai";
const suite = "tab-navigation";
const spec = "bottom-navigation-css";
+const imagePrefix = `${suite}-${spec}`;
-describe(`${suite}-${spec}-suite`, async function () {
+describe(`${imagePrefix}-suite`, async function () {
let driver: AppiumDriver;
let bottomNavigationBasePage: BottomNavigationBasePage;
@@ -44,6 +45,7 @@ describe(`${suite}-${spec}-suite`, async function () {
const sample = samples[index];
let imageName = `${spec}-${sample.sample.replace(/[^a-z]/ig, "-").replace(/(-+)/ig, "-").replace(/(_+)/ig, "_").replace(/-$/, "")}`;
it(imageName, async function () {
+ this.skip();
if (driver.platformName === Platform.ANDROID
&& (sample.sample.toLowerCase() === "all"
|| sample.sample.toLowerCase() === "reset")) {
diff --git a/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation.e2e-spec.ts b/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation.e2e-spec.ts
index f768a4294..a46b80f80 100644
--- a/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation.e2e-spec.ts
+++ b/e2e/ui-tests-app/e2e/suites/tab-navigation/bottom-navigation/bottom-navigation.e2e-spec.ts
@@ -47,7 +47,7 @@ describe(`${suite}-${spec}-suite`, async function () {
await bottomNavigationBasePage.refreshBottomNavigationTab();
await bottomNavigationBasePage.tabOnItem(1);
await driver.imageHelper.compareScreen();
-
+
assert.isTrue(driver.imageHelper.hasImageComparisonPassed());
await bottomNavigationBasePage.navigateBackToSuitMainPage();
@@ -203,7 +203,7 @@ describe(`${suite}-${spec}-suite`, async function () {
await driver.backgroundApp(1);
await driver.imageHelper.compareScreen();
- await driver.setOrientation(DeviceOrientaion.PORTRAIT);
+ // await driver.setOrientation(DeviceOrientaion.PORTRAIT);
await driver.imageHelper.compareScreen();
assert.isTrue(driver.imageHelper.hasImageComparisonPassed());
@@ -212,15 +212,11 @@ describe(`${suite}-${spec}-suite`, async function () {
it(`${spec}-icon-change`, async function () {
await bottomNavigationBasePage.navigateToSample("icon-change");
- const index = driver.nsCapabilities.device.platform === Platform.IOS
- ? (+driver.nsCapabilities.device.apiLevel >= 11 ? 2 : 3) : 1;
-
- let btns = await driver.findElementsByClassName(driver.locators.button, 5000);
- await btns[index].tap();
+ await bottomNavigationBasePage.refreshBottomNavigationTab();
+ await bottomNavigationBasePage.tabOnItem(1);
await driver.imageHelper.compareScreen();
- btns = await driver.findElementsByClassName(driver.locators.button, 5000);
- await btns[index - 1].tap();
+ await bottomNavigationBasePage.tabOnItem(0);
await driver.imageHelper.compareScreen();
assert.isTrue(driver.imageHelper.hasImageComparisonPassed());
@@ -246,4 +242,28 @@ describe(`${suite}-${spec}-suite`, async function () {
assert.isTrue(driver.imageHelper.hasImageComparisonPassed());
await bottomNavigationBasePage.navigateBackToSuitMainPage();
});
+
+ it(`${spec}-text-transform`, async function () {
+ await bottomNavigationBasePage.navigateToSample("text-transform");
+ await bottomNavigationBasePage.refreshBottomNavigationTab();
+ await driver.imageHelper.compareScreen();
+
+ await bottomNavigationBasePage.tabOnItem(1);
+ await driver.imageHelper.compareScreen();
+
+ assert.isTrue(driver.imageHelper.hasImageComparisonPassed());
+ await bottomNavigationBasePage.navigateBackToSuitMainPage();
+ });
+
+ it(`${spec}-fonts`, async function () {
+ await bottomNavigationBasePage.navigateToSample("text-transform");
+ await bottomNavigationBasePage.refreshBottomNavigationTab();
+ await driver.imageHelper.compareScreen();
+
+ await bottomNavigationBasePage.tabOnItem(1);
+ await driver.imageHelper.compareScreen();
+
+ assert.isTrue(driver.imageHelper.hasImageComparisonPassed());
+ await bottomNavigationBasePage.navigateBackToSuitMainPage();
+ });
});
\ No newline at end of file
diff --git a/e2e/ui-tests-app/e2e/suites/tab-navigation/tab-view/tab-view-common-tests.e2e-spec.ts b/e2e/ui-tests-app/e2e/suites/tab-navigation/tab-view/tab-view-common-tests.e2e-spec.ts
index b0cff1087..860587e03 100644
--- a/e2e/ui-tests-app/e2e/suites/tab-navigation/tab-view/tab-view-common-tests.e2e-spec.ts
+++ b/e2e/ui-tests-app/e2e/suites/tab-navigation/tab-view/tab-view-common-tests.e2e-spec.ts
@@ -122,6 +122,9 @@ describe(`${suite}-${spec}-suite`, async function () {
});
it(`${spec}-icons`, async function () {
+ if (driver.isAndroid) {
+ this.skip();
+ }
await tabViewBasePage.navigateToSample("tab-view-icons");
await driver.imageHelper.compareScreen();
@@ -142,6 +145,9 @@ describe(`${suite}-${spec}-suite`, async function () {
});
it(`${spec}-icons-local`, async function () {
+ if (driver.isAndroid) {
+ this.skip();
+ }
await tabViewBasePage.navigateToSample("tab-view-icons-local");
await driver.imageHelper.compareScreen();
diff --git a/e2e/ui-tests-app/e2e/suites/tab-navigation/tab-view/tab-view-css-properties.e2e-spec.ts b/e2e/ui-tests-app/e2e/suites/tab-navigation/tab-view/tab-view-css-properties.e2e-spec.ts
index 9c3530a04..65de285b0 100644
--- a/e2e/ui-tests-app/e2e/suites/tab-navigation/tab-view/tab-view-css-properties.e2e-spec.ts
+++ b/e2e/ui-tests-app/e2e/suites/tab-navigation/tab-view/tab-view-css-properties.e2e-spec.ts
@@ -32,6 +32,7 @@ describe(`${suite}-${spec}-suite`, async function () {
await driver.restartApp();
tabViewBasePage = new TabViewBasePage(driver, ElementCacheStrategy.none);
await tabViewBasePage.init("tabViewCss");
+ driver.imageHelper.options.keepOriginalImageSize = false;
});
after(async function () {
@@ -56,6 +57,9 @@ describe(`${suite}-${spec}-suite`, async function () {
const sample = samples[index];
let imageName = `${spec}-${sample.sample.replace(/[^a-z]/ig, "-").replace(/(-+)/ig, "-").replace(/(_+)/ig, "_").replace(/-$/, "")}`;
it(imageName, async function () {
+ if (driver.isIOS && imageName.includes("android")) {
+ this.skip();
+ }
if (driver.platformName === Platform.ANDROID
&& (sample.sample.toLowerCase() === "all" || sample.sample.toLowerCase() === "reset")) {
await driver.scroll(Direction.down, 400, 200, 300, 200);
diff --git a/e2e/ui-tests-app/webpack.config.js b/e2e/ui-tests-app/webpack.config.js
index 234c34a84..267a4b19a 100644
--- a/e2e/ui-tests-app/webpack.config.js
+++ b/e2e/ui-tests-app/webpack.config.js
@@ -6,7 +6,6 @@ const nativescriptTarget = require("nativescript-dev-webpack/nativescript-target
const CleanWebpackPlugin = require("clean-webpack-plugin");
const CopyWebpackPlugin = require("copy-webpack-plugin");
const ForkTsCheckerWebpackPlugin = require('fork-ts-checker-webpack-plugin');
-const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin');
const { BundleAnalyzerPlugin } = require("webpack-bundle-analyzer");
const { NativeScriptWorkerPlugin } = require("nativescript-worker-loader/NativeScriptWorkerPlugin");
const TerserPlugin = require("terser-webpack-plugin");
@@ -214,11 +213,7 @@ module.exports = env => {
"sass-loader"
]
},
- // TODO: Invetigate why do we need???
- {
- test: /\.png$|.jpg$|.ttf$|.otf$|.gradle$|.storyboard$|.plist$/,
- use: { loader: "raw-loader" }
- },
+
{
test: /\.ts$/,
use: {
@@ -242,7 +237,7 @@ module.exports = env => {
// Define useful constants like TNS_WEBPACK
new webpack.DefinePlugin({
"global.TNS_WEBPACK": "true",
- "process": undefined,
+ "process": "global.process",
}),
// Remove all files from the out dir.
new CleanWebpackPlugin(itemsToClean, { verbose: !!verbose }),
@@ -271,9 +266,6 @@ module.exports = env => {
async: false,
useTypescriptIncrementalApi: true,
memoryLimit: 4096
- }),
- new ExtraWatchWebpackPlugin({
- files: [`node_modules/**/*.${platform}.ts`]
})
],
};