mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-3384] Create automated tests for Version Component (#3631)
* fix version component restore and delete event * version manager actions * fix test * fix unit test * remove fdescribe * fix tslint * fix screenshot rewrite problem * remove fdescribe * multi instance try * remove fdescribe * try uncomment some test * error page * fix user preferences pagiantion * search page test include * fix type tslint e2e * restore code * default lang momentadapter * fix test * [ADF-3384] removed console log from test * [ADF-3384] adding some fixes for tests and code * [ADF-3384] fixed some test and code
This commit is contained in:
committed by
Eugenio Romano
parent
17074478e2
commit
a12662e7e2
@@ -15,11 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
|
||||
import LoginPage = require('../../pages/adf/loginPage');
|
||||
import ContentServicesPage = require('../../pages/adf/contentServicesPage');
|
||||
import ViewerPage = require('../../pages/adf/viewerPage');
|
||||
import CardViewPage = require('../../pages/adf/metadataViewPage');
|
||||
import ContentListPage = require('../../pages/adf/dialog/contentList');
|
||||
import NavigationBarPage = require('../../pages/adf/navigationBarPage');
|
||||
import { ConfigEditorPage } from '../../pages/adf/configEditorPage';
|
||||
|
||||
@@ -28,31 +28,15 @@ import FileModel = require('../../models/ACS/fileModel');
|
||||
|
||||
import TestConfig = require('../../test.config');
|
||||
import resources = require('../../util/resources');
|
||||
import dateFormat = require('dateformat');
|
||||
|
||||
import AlfrescoApi = require('alfresco-js-api-node');
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
|
||||
describe('Aspect oriented config', () => {
|
||||
|
||||
const METADATA = {
|
||||
DATAFORMAT: 'mmm dd yyyy',
|
||||
TITLE: 'Details',
|
||||
COMMENTS_TAB: 'COMMENTS',
|
||||
PROPERTY_TAB: 'PROPERTIES',
|
||||
DEFAULT_ASPECT: 'Properties',
|
||||
MORE_INFO_BUTTON: 'More information',
|
||||
LESS_INFO_BUTTON: 'Less information',
|
||||
ARROW_DOWN: 'keyboard_arrow_down',
|
||||
ARROW_UP: 'keyboard_arrow_up',
|
||||
EDIT_BUTTON_TOOLTIP: 'Edit'
|
||||
};
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const viewerPage = new ViewerPage();
|
||||
const metadataViewPage = new CardViewPage();
|
||||
const contentListPage = new ContentListPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const configEditorPage = new ConfigEditorPage();
|
||||
|
||||
|
@@ -15,6 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { element, by } from 'protractor';
|
||||
|
||||
import LoginPage = require('../../pages/adf/loginPage');
|
||||
import NavigationBarPage = require('../../pages/adf/navigationBarPage');
|
||||
import CardViewPage = require('../../pages/adf/metadataViewPage');
|
||||
@@ -279,13 +281,13 @@ describe('CardView Component', () => {
|
||||
describe('Date and DateTime', () => {
|
||||
|
||||
it('[C279961] Should the label be present', () => {
|
||||
let label = element(by.xpath('div[data-automation-id="card-dateitem-label-date"]'));
|
||||
let labelDate = element(by.xpath('div[data-automation-id="card-dateitem-label-date"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(label);
|
||||
Util.waitUntilElementIsPresent(labelDate);
|
||||
|
||||
let label = element(by.xpath('div[data-automation-id="card-dateitem-label-datetime"]'));
|
||||
let labelDatetime = element(by.xpath('div[data-automation-id="card-dateitem-label-datetime"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(label);
|
||||
Util.waitUntilElementIsPresent(labelDatetime);
|
||||
});
|
||||
|
||||
it('[C279962] Should be present a default value', () => {
|
||||
|
@@ -16,10 +16,8 @@
|
||||
*/
|
||||
|
||||
import LoginPage = require('../../pages/adf/loginPage');
|
||||
import ContentServicesPage = require('../../pages/adf/contentServicesPage');
|
||||
import ViewerPage = require('../../pages/adf/viewerPage');
|
||||
import CardViewPage = require('../../pages/adf/metadataViewPage');
|
||||
import ContentListPage = require('../../pages/adf/dialog/contentList');
|
||||
import NavigationBarPage = require('../../pages/adf/navigationBarPage');
|
||||
|
||||
import AcsUserModel = require('../../models/ACS/acsUserModel');
|
||||
@@ -27,14 +25,12 @@ import FileModel = require('../../models/ACS/fileModel');
|
||||
|
||||
import TestConfig = require('../../test.config');
|
||||
import resources = require('../../util/resources');
|
||||
import dateFormat = require('dateformat');
|
||||
|
||||
import AlfrescoApi = require('alfresco-js-api-node');
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
|
||||
import fs = require('fs');
|
||||
import path = require('path');
|
||||
import Util = require('../../util/util');
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
|
||||
describe('permissions', () => {
|
||||
|
||||
@@ -52,13 +48,10 @@ describe('permissions', () => {
|
||||
};
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const viewerPage = new ViewerPage();
|
||||
const metadataViewPage = new CardViewPage();
|
||||
const contentListPage = new ContentListPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
let acsUser = new AcsUserModel();
|
||||
let consumerUser = new AcsUserModel();
|
||||
let collaboratorUser = new AcsUserModel();
|
||||
let contributorUser = new AcsUserModel();
|
||||
@@ -91,17 +84,17 @@ describe('permissions', () => {
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: consumerUser.id,
|
||||
role: 'SiteConsumer'
|
||||
role: CONSTANTS.CS_USER_ROLES.CONSUMER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: collaboratorUser.id,
|
||||
role: 'SiteCollaborator'
|
||||
role: CONSTANTS.CS_USER_ROLES.COLLABORATOR
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: contributorUser.id,
|
||||
role: 'SiteContributor'
|
||||
role: CONSTANTS.CS_USER_ROLES.CONTRIBUTOR
|
||||
});
|
||||
|
||||
await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, site.entry.guid);
|
@@ -25,14 +25,10 @@ import FileModel = require('../../models/ACS/fileModel');
|
||||
|
||||
import TestConfig = require('../../test.config');
|
||||
import resources = require('../../util/resources');
|
||||
import dateFormat = require('dateformat');
|
||||
|
||||
import AlfrescoApi = require('alfresco-js-api-node');
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
|
||||
import fs = require('fs');
|
||||
import path = require('path');
|
||||
|
||||
describe('CardView Component - properties', () => {
|
||||
|
||||
let METADATA = {
|
||||
|
@@ -15,12 +15,13 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
|
||||
import LoginPage = require('../../pages/adf/loginPage');
|
||||
import ContentServicesPage = require('../../pages/adf/contentServicesPage');
|
||||
import ViewerPage = require('../../pages/adf/viewerPage');
|
||||
import CardViewPage = require('../../pages/adf/metadataViewPage');
|
||||
import ContentListPage = require('../../pages/adf/dialog/contentList');
|
||||
import NavigationBarPage = require('../../pages/adf/navigationBarPage');
|
||||
|
||||
import AcsUserModel = require('../../models/ACS/acsUserModel');
|
||||
import FileModel = require('../../models/ACS/fileModel');
|
||||
@@ -52,10 +53,8 @@ describe('Metadata component', () => {
|
||||
const viewerPage = new ViewerPage();
|
||||
const metadataViewPage = new CardViewPage();
|
||||
const contentListPage = new ContentListPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
let acsUser = new AcsUserModel();
|
||||
let consumerUser = new AcsUserModel();
|
||||
|
||||
let folderName = 'Metadata Folder';
|
||||
|
||||
|
54
e2e/core/error_component.e2e.ts
Normal file
54
e2e/core/error_component.e2e.ts
Normal file
@@ -0,0 +1,54 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright 2016 Alfresco Software, Ltd.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import LoginPage = require('../pages/adf/loginPage');
|
||||
import AcsUserModel = require('../models/ACS/acsUserModel');
|
||||
import TestConfig = require('../test.config');
|
||||
import AlfrescoApi = require('alfresco-js-api-node');
|
||||
import ErrorPage = require('../pages/adf/errorPage');
|
||||
import { browser } from '../../node_modules/protractor';
|
||||
|
||||
describe('Error Component', () => {
|
||||
|
||||
let acsUser = new AcsUserModel();
|
||||
let loginPage = new LoginPage();
|
||||
let errorPage = new ErrorPage();
|
||||
|
||||
beforeAll(async (done) => {
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: TestConfig.adf.url
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
|
||||
loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
done();
|
||||
|
||||
});
|
||||
|
||||
it('[C277302] Error message displayed without permissions', () => {
|
||||
browser.get(TestConfig.adf.url + '/error/403');
|
||||
expect(errorPage.getErrorCode()).toBe('403');
|
||||
expect(errorPage.getErrorTitle()).toBe('You don\'t have permission to access this server.');
|
||||
expect(errorPage.getErrorDescription()).toBe('You\'re not allowed access to this resource on the server.');
|
||||
});
|
||||
|
||||
});
|
@@ -19,7 +19,6 @@ import NavigationBarPage = require('../pages/adf/navigationBarPage');
|
||||
import { HeaderPage } from '../pages/adf/core/headerPage';
|
||||
|
||||
import TestConfig = require('../test.config');
|
||||
import Util = require('../util/util.js');
|
||||
|
||||
import AlfrescoApi = require('alfresco-js-api-node');
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
@@ -54,7 +53,7 @@ describe('Header Component', () => {
|
||||
done();
|
||||
});
|
||||
|
||||
beforeEach(async(done) =>{
|
||||
beforeEach(async(done) => {
|
||||
let users = new UsersActions();
|
||||
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
@@ -83,8 +82,8 @@ describe('Header Component', () => {
|
||||
it('[C280002] Should be able to view Header component', () => {
|
||||
headerPage.checkShowMenuCheckBoxIsDisplayed();
|
||||
headerPage.checkChooseHeaderColourIsDisplayed();
|
||||
headerPage.checkChangeTitleIsDisplayed(title.default);
|
||||
headerPage.checkChangeUrlPathIsDisplayed(urlPath.default);
|
||||
headerPage.checkChangeTitleIsDisplayed();
|
||||
headerPage.checkChangeUrlPathIsDisplayed();
|
||||
|
||||
});
|
||||
|
||||
|
@@ -15,6 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
|
||||
import LoginPage = require('../../pages/adf/loginPage');
|
||||
import ContentServicesPage = require('../../pages/adf/contentServicesPage');
|
||||
import ProcessServicesPage = require('../../pages/adf/process_services/processServicesPage');
|
||||
@@ -28,7 +30,6 @@ import AdfSettingsPage = require('../../pages/adf/settingsPage');
|
||||
import AlfrescoApi = require('alfresco-js-api-node');
|
||||
|
||||
import Util = require('../../util/util');
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
|
||||
describe('Login component', () => {
|
||||
|
||||
|
@@ -15,6 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
|
||||
import LoginPage = require('../../pages/adf/loginPage');
|
||||
import ContentServicesPage = require('../../pages/adf/contentServicesPage');
|
||||
import ProcessServicesPage = require('../../pages/adf/process_services/processServicesPage');
|
||||
|
@@ -17,8 +17,6 @@
|
||||
|
||||
import LoginPage = require('../../pages/adf/loginPage');
|
||||
|
||||
import AcsUserModel = require('../../models/ACS/acsUserModel');
|
||||
|
||||
import AdfSettingsPage = require('../../pages/adf/settingsPage');
|
||||
|
||||
describe('Login component - Remember Me', () => {
|
||||
|
@@ -77,7 +77,7 @@ describe('Pagination - returns to previous page when current is empty', () => {
|
||||
done();
|
||||
});
|
||||
|
||||
xit('Pagination - returns to previous page when current is empty', () => {
|
||||
it('Pagination - returns to previous page when current is empty', () => {
|
||||
contentServicesPage.navigateToFolder(folderModel.name);
|
||||
contentServicesPage.checkAcsContainer();
|
||||
contentServicesPage.waitForTableBody();
|
||||
|
@@ -14,6 +14,9 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { protractor } from 'protractor';
|
||||
|
||||
import AdfSettingsPage = require('../pages/adf/settingsPage');
|
||||
import LoginPage = require('../pages/adf/loginPage');
|
||||
import UserInfoDialog = require('../pages/adf/dialog/userInfoDialog');
|
||||
|
@@ -15,6 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
|
||||
import TestConfig = require('../test.config');
|
||||
|
||||
import LoginPage = require('../pages/adf/loginPage');
|
||||
@@ -139,7 +141,7 @@ describe('Content Services Viewer', () => {
|
||||
|
||||
viewerPage.viewFile(pdfFile.name);
|
||||
|
||||
browser.driver.sleep(3000); //wait open file
|
||||
browser.driver.sleep(3000); // wait open file
|
||||
|
||||
viewerPage.checkFileContent('1', pdfFile.firstPageText);
|
||||
viewerPage.checkCloseButtonIsDisplayed();
|
||||
@@ -304,7 +306,7 @@ describe('Content Services Viewer', () => {
|
||||
it('[C261123] Should be able to preview all pages and navigate to a page when using thumbnails', () => {
|
||||
viewerPage.viewFile(pdfFile.name);
|
||||
|
||||
browser.driver.sleep(3000); //wait open file
|
||||
browser.driver.sleep(3000); // wait open file
|
||||
|
||||
viewerPage.checkFileContent('1', pdfFile.firstPageText);
|
||||
viewerPage.checkThumbnailsBtnIsDisplayed();
|
||||
@@ -355,7 +357,7 @@ describe('Content Services Viewer', () => {
|
||||
it('[C268901] Should need a password when opening a protected file', () => {
|
||||
viewerPage.viewFile(protectedFile.name);
|
||||
|
||||
browser.driver.sleep(3000); //wait open file
|
||||
browser.driver.sleep(3000); // wait open file
|
||||
|
||||
viewerPage.checkPasswordDialogIsDisplayed();
|
||||
viewerPage.checkPasswordSubmitDisabledIsDisplayed();
|
||||
|
@@ -45,14 +45,16 @@ describe('Save screenshot at the end', () => {
|
||||
|
||||
let folder = await alfrescoJsApi.nodes.addNode('-my-', {
|
||||
'name': 'core',
|
||||
'relativePath': 'Buiild-screenshot/Screenshot-e2e-' + buildNumber,
|
||||
'relativePath': 'Build-screenshot/Screenshot-e2e-' + buildNumber,
|
||||
'nodeType': 'cm:folder'
|
||||
}, {}, {});
|
||||
}, {}, {
|
||||
'overwrite': true
|
||||
});
|
||||
|
||||
for (const fileName of files) {
|
||||
|
||||
let pathFile = path.join(__dirname, '../../e2e-output/screenshots', fileName);
|
||||
let file = fs.createReadStream(pathFile);
|
||||
let file: any = fs.createReadStream(pathFile);
|
||||
|
||||
await alfrescoJsApi.upload.uploadFile(
|
||||
file,
|
||||
|
Reference in New Issue
Block a user