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"
+48 -43
View File
@@ -8,49 +8,54 @@ const jasmineReporters = require('jasmine-reporters');
const projectRoot = path.resolve(__dirname);
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./e2e/**/*.test.ts'
],
capabilities: {
'browserName': 'chrome',
chromeOptions: {
prefs: {
'credentials_enable_service': false
allScriptsTimeout: 11000,
specs: [
'./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',
chromeOptions: {
prefs: {
'credentials_enable_service': false
}
}
}
},
directConnect: true,
baseUrl: 'http://localhost:3000',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function() {}
},
plugins: [{
package: 'jasmine2-protractor-utils',
disableHTMLReport: false,
disableScreenshot: false,
screenshotOnExpectFailure: true,
screenshotOnSpecFailure: false,
clearFoldersBeforeTest: true,
htmlReportDir: `${projectRoot}/e2e-output/html-report/`,
screenshotPath: `${projectRoot}/e2e-output/screenshots/`
}],
onPrepare() {
require('ts-node').register({
project: 'e2e/tsconfig.e2e.json'
});
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
},
directConnect: true,
baseUrl: 'http://localhost:3000',
framework: 'jasmine2',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function() {}
},
plugins: [{
package: 'jasmine2-protractor-utils',
disableHTMLReport: false,
disableScreenshot: false,
screenshotOnExpectFailure: true,
screenshotOnSpecFailure: false,
clearFoldersBeforeTest: true,
htmlReportDir: `${projectRoot}/e2e-output/html-report/`,
screenshotPath: `${projectRoot}/e2e-output/screenshots/`
}],
onPrepare() {
require('ts-node').register({
project: 'e2e/tsconfig.e2e.json'
});
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
jasmine.getEnv().addReporter(new jasmineReporters.JUnitXmlReporter({
consolidateAll: true,
savePath: `${projectRoot}/e2e-output/junit-report`,
filePrefix: 'results.xml',
useDotNotation: false,
useFullTestName: false,
reportFailedUrl: true
}));
}
jasmine.getEnv().addReporter(new jasmineReporters.JUnitXmlReporter({
consolidateAll: true,
savePath: `${projectRoot}/e2e-output/junit-report`,
filePrefix: 'results.xml',
useDotNotation: false,
useFullTestName: false,
reportFailedUrl: true
}));
}
};