Merge pull request #43 from Alfresco/adina-tests-fixes

[ACA-964] some tests fixes
This commit is contained in:
Cilibiu Bogdan
2017-11-08 19:31:58 +02:00
committed by GitHub
6 changed files with 76 additions and 64 deletions
+1 -1
View File
@@ -19,7 +19,7 @@ import { by, ElementFinder, promise } from 'protractor';
import { Component } from '../component';
export class LoginComponent extends Component {
static selector = 'alfresco-login';
static selector = 'adf-login';
private locators = {
usernameInput: by.css('input#username'),
+1 -1
View File
@@ -18,7 +18,7 @@
import { browser, element, by, ElementFinder, promise } from 'protractor';
export abstract class Page {
private static USE_HASH_STRATEGY = true;
private static USE_HASH_STRATEGY = false;
private locators = {
app: by.css('app-root'),
+17 -10
View File
@@ -17,7 +17,7 @@
import { protractor, browser, by, ElementFinder } from 'protractor';
import { APP_ROUTES, BROWSER_WAIT_TIMEOUT } from '../../configs';
import { APP_ROUTES, BROWSER_WAIT_TIMEOUT, SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { LoginPage, LogoutPage, BrowsingPage } from '../../pages/pages';
import { CreateOrEditFolderDialog } from '../../components/dialog/create-edit-folder-dialog';
import { LocalStorageUtility } from '../../utilities/local-storage';
@@ -31,7 +31,9 @@ describe('Create folder', () => {
const folderName2 = 'my-folder2';
const folderDescription = 'description of my folder';
const duplicateFolderName = 'duplicate-folder-name';
const nameWithSpaces = ' folder name ';
const nameWithSpaces = ' folder-name ';
const siteName = 'site-private';
const apis = {
admin: new RepoClient(),
@@ -55,6 +57,9 @@ describe('Create folder', () => {
beforeAll(done => {
apis.admin.people.createUser(username, password)
.then(() => apis.admin.sites.createSite(siteName, SITE_VISIBILITY.PRIVATE))
.then(() => apis.admin.nodes.createFolders([ folderName1 ], `Sites/${siteName}/documentLibrary`))
.then(() => apis.admin.sites.addSiteMember(siteName, username, SITE_ROLES.SITE_CONSUMER))
.then(() => apis.user.nodes.createFolders([ duplicateFolderName ]))
.then(() => loginPage.load())
.then(() => loginPage.loginWith(username, password))
@@ -143,11 +148,12 @@ describe('Create folder', () => {
});
it('option is disabled when not enough permissions', () => {
// refactor after implementing Breadcrumb automation component
const breadcrumbRoot: ElementFinder = protractor.element(by.css('.adf-breadcrumb-item[title="User Homes"]'));
const fileLibrariesPage = new BrowsingPage(APP_ROUTES.FILE_LIBRARIES);
browser.actions().mouseMove(breadcrumbRoot).click().perform()
.then(() => personalFilesPage.sidenav.openNewMenu())
fileLibrariesPage.sidenav.navigateToLinkByLabel('File Libraries')
.then(() => fileLibrariesPage.dataTable.doubleClickOnRowByContainingText(siteName))
.then(() => fileLibrariesPage.dataTable.doubleClickOnRowByContainingText(folderName1))
.then(() => fileLibrariesPage.sidenav.openNewMenu())
.then(menu => {
const isEnabled = menu.getItemByLabel('Create folder').getWebElement().isEnabled();
expect(isEnabled).toBe(false, 'Create folder is not disabled');
@@ -155,11 +161,12 @@ describe('Create folder', () => {
});
it('disabled option tooltip', () => {
// refactor after implementing Breadcrumb automation component
const breadcrumbRoot: ElementFinder = protractor.element(by.css('.adf-breadcrumb-item[title="User Homes"]'));
const fileLibrariesPage = new BrowsingPage(APP_ROUTES.FILE_LIBRARIES);
browser.actions().mouseMove(breadcrumbRoot).click().perform()
.then(() => personalFilesPage.sidenav.openNewMenu())
fileLibrariesPage.sidenav.navigateToLinkByLabel('File Libraries')
.then(() => fileLibrariesPage.dataTable.doubleClickOnRowByContainingText(siteName))
.then(() => fileLibrariesPage.dataTable.doubleClickOnRowByContainingText(folderName1))
.then(() => fileLibrariesPage.sidenav.openNewMenu())
.then(menu => {
const action = browser.actions().mouseMove(menu.getItemByLabel('Create folder'));
action.perform()
+2 -2
View File
@@ -44,7 +44,7 @@ describe('Edit folder', () => {
const loginPage = new LoginPage();
const logoutPage = new LogoutPage();
const personalFilesPage = new BrowsingPage();
const personalFilesPage = new BrowsingPage(APP_ROUTES.PERSONAL_FILES);
const editDialog = new CreateOrEditFolderDialog();
const dataTable = personalFilesPage.dataTable;
const editButton = personalFilesPage.toolbar.actions.getButtonByTitleAttribute('Edit');
@@ -130,7 +130,7 @@ describe('Edit folder', () => {
});
it('button is not displayed when not enough permissions', () => {
const fileLibrariesPage = new BrowsingPage();
const fileLibrariesPage = new BrowsingPage(APP_ROUTES.FILE_LIBRARIES);
fileLibrariesPage.sidenav.navigateToLinkByLabel('File Libraries')
.then(() => fileLibrariesPage.dataTable.doubleClickOnRowByContainingText(siteName))
+7 -7
View File
@@ -46,14 +46,14 @@
"@angular/cli": "1.4.7",
"@angular/compiler-cli": "4.4.5",
"@angular/language-service": "4.4.5",
"@types/jasmine": "~2.5.53",
"@types/jasminewd2": "~2.0.2",
"@types/jasmine": "^2.5.53",
"@types/jasminewd2": "^2.0.2",
"@types/node": "~6.0.60",
"codelyzer": "~3.2.0",
"jasmine-core": "~2.6.2",
"jasmine-reporters": "2.2.1",
"jasmine-spec-reporter": "~4.1.0",
"jasmine2-protractor-utils": "1.3.0",
"jasmine-core": "^2.6.2",
"jasmine-reporters": "^2.2.1",
"jasmine-spec-reporter": "^4.1.0",
"jasmine2-protractor-utils": "^1.3.0",
"karma": "~1.7.0",
"karma-chrome-launcher": "~2.1.1",
"karma-cli": "~1.0.1",
@@ -61,7 +61,7 @@
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"node-rest-client": "^3.1.0",
"protractor": "~5.1.2",
"protractor": "^5.1.2",
"ts-node": "~3.2.0",
"tslint": "~5.7.0",
"typescript": "~2.3.3"
+7 -2
View File
@@ -10,7 +10,12 @@ const projectRoot = path.resolve(__dirname);
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./e2e/**/*.test.ts'
'./e2e/suites/authentication/*.test.ts',
'./e2e/suites/list-views/*.test.ts',
'./e2e/suites/application/page-titles.test.ts',
'./e2e/suites/navigation/side-navigation.test.ts',
'./e2e/suites/pagination/pagination.test.ts',
'./e2e/suites/actions/*.test.ts'
],
capabilities: {
'browserName': 'chrome',
@@ -22,7 +27,7 @@ exports.config = {
},
directConnect: true,
baseUrl: 'http://localhost:3000',
framework: 'jasmine',
framework: 'jasmine2',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,