mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ACS-259] refactor login page (#5733)
* refator login page * refator login page * remove obsolete classes and move what is needed in the test pck * fix const * revert modify * remove duplicate browser property * fix build * fix * fix * fix lint * move drop action in testing remove not necessary space js-api centralize content * first refactor use js-api * fix protractor * refactor test config * simplify properties fix namings * ps cloud simplify remove unused js files * id fix * fix search test simplify environment var step 1 * fix lint * first user iteration fix * fix model * unify use of apiService * first step automatic user creation Identity * refactor creation user content-services * refactor creation user search * refactor creation user core * process service refactoring 1 * process service refactoring 1 * process service refactoring 2 * fix process * appconfig * fix process util * fix gallery * fix "this" reference issues * fix incorrect import paths * fix core * some fixes * allign * fix some test remove structure folder and move in actions * fixes * move folders in the right place * fix * fix rebase * solve build issue * fix e2e * change init aae * order api and some fixes * fix possible not valid password * fix some ps test * replace host port also in objects * Update app-config.service.ts * fix process * fix process test * process service cloud fix * fiexs * modify init script * fix two test * remove unused property * host issue * not use npx * fix ps cloud test Co-authored-by: Denys Vuika <denys.vuika@gmail.com>
This commit is contained in:
@@ -26,11 +26,11 @@ describe('Auth Guard SSO', () => {
|
||||
|
||||
it('[C307058] Should be redirected to 403 when user doesn\'t have permissions', async () => {
|
||||
await settingsPage.setProviderEcmSso(browser.params.testConfig.adf.url,
|
||||
browser.params.testConfig.adf.hostSso,
|
||||
browser.params.testConfig.adf.hostIdentity,
|
||||
false, true, browser.params.config.oauth2.clientId);
|
||||
browser.params.testConfig.appConfig.oauth2.host,
|
||||
browser.params.testConfig.appConfig.identityHost,
|
||||
false, true, browser.params.testConfig.appConfig.oauth2.clientId);
|
||||
await loginSSOPage.clickOnSSOButton();
|
||||
await loginSSOPage.loginSSOIdentityService(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await loginSSOPage.loginSSOIdentityService(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await BrowserActions.getUrl(browser.params.testConfig.adf.url + '/cloud/simple-app');
|
||||
await browser.sleep(1000);
|
||||
const error = await errorPage.getErrorCode();
|
||||
|
@@ -15,32 +15,29 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { DataTableComponentPage, LoginPage } from '@alfresco/adf-testing';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { ApiService, DataTableComponentPage, LoginSSOPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { DataTablePage } from '../../pages/adf/demo-shell/data-table.page';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Datatable component - selection', () => {
|
||||
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
const dataTablePage = new DataTablePage();
|
||||
const loginPage = new LoginPage();
|
||||
const acsUser = new AcsUserModel();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const acsUser = new UserModel();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const dataTableComponent = new DataTableComponentPage();
|
||||
|
||||
beforeAll(async () => {
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
|
||||
await navigationBarPage.navigateToDatatable();
|
||||
});
|
||||
|
@@ -15,41 +15,37 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginPage, NotificationHistoryPage } from '@alfresco/adf-testing';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { ApiService, DropActions, LoginSSOPage, NotificationHistoryPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { DropActions } from '../../actions/drop.actions';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { FileModel } from '../../models/ACS/file.model';
|
||||
import { DataTablePage } from '../../pages/adf/demo-shell/data-table.page';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Datatable component', () => {
|
||||
|
||||
const dataTablePage = new DataTablePage('defaultTable');
|
||||
const copyContentDataTablePage = new DataTablePage('copyClipboardDataTable');
|
||||
const dragAndDropDataTablePage = new DataTablePage();
|
||||
const loginPage = new LoginPage();
|
||||
const acsUser = new AcsUserModel();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const acsUser = new UserModel();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const notificationHistoryPage = new NotificationHistoryPage();
|
||||
const dragAndDrop = new DropActions();
|
||||
const pngFile = new FileModel({
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.PNG.file_name,
|
||||
'location': browser.params.resources.Files.ADF_DOCUMENTS.PNG.file_location
|
||||
});
|
||||
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const dragAndDrop = new DropActions();
|
||||
|
||||
beforeAll(async () => {
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
@@ -57,7 +53,6 @@ describe('Datatable component', () => {
|
||||
});
|
||||
|
||||
describe('Datatable component - copyContent', () => {
|
||||
|
||||
beforeAll(async () => {
|
||||
await navigationBarPage.navigateToCopyContentDatatable();
|
||||
await dataTablePage.dataTable.waitForTableBody();
|
||||
@@ -142,7 +137,6 @@ describe('Datatable component', () => {
|
||||
});
|
||||
|
||||
describe('Datatable component - Drag and Drop', () => {
|
||||
|
||||
beforeAll(async () => {
|
||||
await navigationBarPage.navigateToDragAndDropDatatable();
|
||||
await dragAndDropDataTablePage.dataTable.waitForTableBody();
|
||||
|
@@ -15,28 +15,25 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginPage, ErrorPage, BrowserActions } from '@alfresco/adf-testing';
|
||||
import { AcsUserModel } from '../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { LoginSSOPage, ErrorPage, BrowserActions, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { NavigationBarPage } from '../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
|
||||
describe('Error Component', () => {
|
||||
|
||||
const acsUser = new AcsUserModel();
|
||||
const loginPage = new LoginPage();
|
||||
const acsUser = new UserModel();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const errorPage = new ErrorPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
beforeAll(async () => {
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
beforeAll(async () => {
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
|
@@ -14,20 +14,22 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { HeaderPage, LoginPage, SettingsPage } from '@alfresco/adf-testing';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { ApiService, HeaderPage, LoginSSOPage, SettingsPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
import { NavigationBarPage } from '../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
|
||||
describe('Header Component', () => {
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const headerPage = new HeaderPage();
|
||||
const settingsPage = new SettingsPage();
|
||||
|
||||
let user, tenantId;
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
const acsUser = new UserModel();
|
||||
|
||||
const names = {
|
||||
app_title_default: 'ADF Demo Application',
|
||||
@@ -43,34 +45,16 @@ describe('Header Component', () => {
|
||||
logo_tooltip: 'test_tooltip'
|
||||
};
|
||||
|
||||
beforeAll(async() => {
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'BPM',
|
||||
hostBpm: browser.params.testConfig.adf_aps.host
|
||||
});
|
||||
beforeAll(async () => {
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
const users = new UsersActions();
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
user = await users.createTenantAndUser(this.alfrescoJsApi);
|
||||
|
||||
tenantId = user.tenantId;
|
||||
|
||||
await this.alfrescoJsApi.login(user.email, user.password);
|
||||
|
||||
await loginPage.loginToProcessServicesUsingUserModel(user);
|
||||
});
|
||||
|
||||
beforeEach(async() => {
|
||||
await navigationBarPage.clickHeaderDataButton();
|
||||
await usersActions.createUser(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async() => {
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.activiti.adminTenantsApi.deleteTenant(tenantId);
|
||||
});
|
||||
beforeEach(async () => {
|
||||
await navigationBarPage.clickHeaderDataButton();
|
||||
});
|
||||
|
||||
it('[C280002] Should be able to view Header component', async () => {
|
||||
await headerPage.checkShowMenuCheckBoxIsDisplayed();
|
||||
|
@@ -15,30 +15,26 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginPage } from '@alfresco/adf-testing';
|
||||
import { ApiService, LoginSSOPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { NavigationBarPage } from '../pages/adf/navigation-bar.page';
|
||||
import { IconsPage } from '../pages/adf/icons.page';
|
||||
import { AcsUserModel } from '../models/ACS/acs-user.model';
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
|
||||
describe('Universal Icon component', () => {
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
const acsUser = new AcsUserModel();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const acsUser = new UserModel();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const iconsPage = new IconsPage();
|
||||
|
||||
beforeAll(async () => {
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
beforeAll(async () => {
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
|
@@ -15,24 +15,25 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LocalStorageUtil, LoginPage, UploadActions } from '@alfresco/adf-testing';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { StringUtil, LocalStorageUtil, LoginSSOPage, UploadActions, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { AcsUserModel } from '../models/ACS/acs-user.model';
|
||||
import { FolderModel } from '../models/ACS/folder.model';
|
||||
import { ContentServicesPage } from '../pages/adf/content-services.page';
|
||||
import { InfinitePaginationPage } from '../pages/adf/core/infinite-pagination.page';
|
||||
import { NavigationBarPage } from '../pages/adf/navigation-bar.page';
|
||||
import { Util } from '../util/util';
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
|
||||
describe('Enable infinite scrolling', () => {
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const infinitePaginationPage = new InfinitePaginationPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
const acsUser = new AcsUserModel();
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
const acsUser = new UserModel();
|
||||
const folderModel = new FolderModel({ 'name': 'folderOne' });
|
||||
|
||||
let fileNames = [];
|
||||
@@ -49,22 +50,18 @@ describe('Enable infinite scrolling', () => {
|
||||
};
|
||||
|
||||
beforeAll(async () => {
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
|
||||
fileNames = Util.generateSequenceFiles(1, nrOfFiles, files.base, files.extension);
|
||||
deleteFileNames = Util.generateSequenceFiles(1, nrOfDeletedFiles, files.base, files.extension);
|
||||
fileNames = StringUtil.generateFilesNames(1, nrOfFiles, files.base, files.extension);
|
||||
deleteFileNames = StringUtil.generateFilesNames(1, nrOfDeletedFiles, files.base, files.extension);
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
const folderUploadedModel = await uploadActions.createFolder(folderModel.name, '-my-');
|
||||
emptyFolderModel = await uploadActions.createFolder('emptyFolder', '-my-');
|
||||
|
@@ -15,31 +15,32 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { BrowserActions, ErrorPage, LoginPage, SettingsPage, UserInfoPage } from '@alfresco/adf-testing';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import {
|
||||
ApiService,
|
||||
BrowserActions,
|
||||
ErrorPage,
|
||||
LocalStorageUtil,
|
||||
UserInfoPage,
|
||||
UserModel
|
||||
} from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { ContentServicesPage } from '../../pages/adf/content-services.page';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { ProcessServicesPage } from '../../pages/adf/process-services/process-services.page';
|
||||
import { Util } from '../../util/util';
|
||||
import { LoginPage } from '../../pages/adf/demo-shell/login.page';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Login component', () => {
|
||||
|
||||
const settingsPage = new SettingsPage();
|
||||
const processServicesPage = new ProcessServicesPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const userInfoPage = new UserInfoPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const loginPage = new LoginPage();
|
||||
const errorPage = new ErrorPage();
|
||||
const adminUserModel = new AcsUserModel({
|
||||
'id': browser.params.testConfig.adf.adminUser,
|
||||
'password': browser.params.testConfig.adf.adminPassword
|
||||
});
|
||||
|
||||
const userA = new AcsUserModel();
|
||||
const userB = new AcsUserModel();
|
||||
const userA = new UserModel();
|
||||
const userB = new UserModel();
|
||||
|
||||
const errorMessages = {
|
||||
username: 'Your username needs to be at least 2 characters.',
|
||||
@@ -50,33 +51,32 @@ describe('Login component', () => {
|
||||
const invalidUsername = 'invaliduser';
|
||||
const invalidPassword = 'invalidpassword';
|
||||
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
beforeAll(async () => {
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ALL',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host,
|
||||
hostBpm: browser.params.testConfig.adf_aps.host
|
||||
});
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(userA);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(userB);
|
||||
await usersActions.createUser(userA);
|
||||
await usersActions.createUser(userB);
|
||||
});
|
||||
|
||||
it('[C276746] Should display the right information in user-info when a different users logs in', async () => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(userA);
|
||||
await LocalStorageUtil.setStorageItem('providers', 'ECM');
|
||||
|
||||
await loginPage.login(userA.email, userA.password);
|
||||
await userInfoPage.clickUserProfile();
|
||||
await expect(await userInfoPage.getContentHeaderTitle()).toEqual(userA.firstName + ' ' + userA.lastName);
|
||||
await expect(await userInfoPage.getContentEmail()).toEqual(userA.email);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(userB);
|
||||
await loginPage.login(userB.email, userB.password);
|
||||
await userInfoPage.clickUserProfile();
|
||||
await expect(await userInfoPage.getContentHeaderTitle()).toEqual(userB.firstName + ' ' + userB.lastName);
|
||||
await expect(await userInfoPage.getContentEmail()).toEqual(userB.email);
|
||||
});
|
||||
|
||||
it('[C299206] Should redirect the user without the right access role on a forbidden page', async () => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(userA);
|
||||
await loginPage.login(userA.email, userA.password);
|
||||
await navigationBarPage.navigateToProcessServicesCloudPage();
|
||||
await expect(await errorPage.getErrorCode()).toBe('403');
|
||||
await expect(await errorPage.getErrorTitle()).toBe('You don\'t have permission to access this server.');
|
||||
@@ -120,7 +120,7 @@ describe('Login component', () => {
|
||||
|
||||
it('[C260045] Should enable login button after entering a valid username and a password', async () => {
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.enterUsername(adminUserModel.id);
|
||||
await loginPage.enterUsername(browser.params.testConfig.admin.email);
|
||||
await expect(await loginPage.getSignInButtonIsEnabled()).toBe(false);
|
||||
await loginPage.enterPassword('a');
|
||||
await expect(await loginPage.getSignInButtonIsEnabled()).toBe(true);
|
||||
@@ -165,11 +165,11 @@ describe('Login component', () => {
|
||||
});
|
||||
|
||||
it('[C260049] Should be possible to login to Process Services with Content Services disabled', async () => {
|
||||
await LocalStorageUtil.setStorageItem('providers', 'BPM');
|
||||
|
||||
await loginPage.goToLoginPage();
|
||||
await expect(await loginPage.getSignInButtonIsEnabled()).toBe(false);
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderBpm();
|
||||
await loginPage.login(adminUserModel.id, adminUserModel.password);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await navigationBarPage.navigateToProcessServicesPage();
|
||||
await processServicesPage.checkApsContainer();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
@@ -177,23 +177,21 @@ describe('Login component', () => {
|
||||
});
|
||||
|
||||
it('[C260050] Should be possible to login to Content Services with Process Services disabled', async () => {
|
||||
await LocalStorageUtil.setStorageItem('providers', 'ECM');
|
||||
|
||||
await loginPage.goToLoginPage();
|
||||
await expect(await loginPage.getSignInButtonIsEnabled()).toBe(false);
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcm();
|
||||
await loginPage.login(browser.params.testConfig.adf.adminUser, browser.params.testConfig.adf.adminPassword);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
await contentServicesPage.checkAcsContainer();
|
||||
});
|
||||
|
||||
it('[C260051] Should be able to login to both Content Services and Process Services', async () => {
|
||||
await LocalStorageUtil.setStorageItem('providers', 'ALL');
|
||||
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcmBpm();
|
||||
await expect(await loginPage.getSignInButtonIsEnabled()).toBe(false);
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcmBpm();
|
||||
await loginPage.login(adminUserModel.id, adminUserModel.password);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await navigationBarPage.navigateToProcessServicesPage();
|
||||
await processServicesPage.checkApsContainer();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
@@ -203,30 +201,28 @@ describe('Login component', () => {
|
||||
});
|
||||
|
||||
it('[C277754] Should the user be redirect to the login page when the Content Service session expire', async () => {
|
||||
await LocalStorageUtil.setStorageItem('providers', 'ECM');
|
||||
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcmBpm();
|
||||
await loginPage.login(adminUserModel.id, adminUserModel.password);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await browser.executeScript('window.localStorage.removeItem("ADF_ticket-ECM");');
|
||||
await BrowserActions.getUrl(browser.params.testConfig.adf.url + '/files');
|
||||
await loginPage.waitForElements();
|
||||
|
||||
await LocalStorageUtil.setStorageItem('providers', 'ALL');
|
||||
});
|
||||
|
||||
it('[C279932] Should successRoute property change the landing page when the user Login', async () => {
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcmBpm();
|
||||
await loginPage.enableSuccessRouteSwitch();
|
||||
await loginPage.enterSuccessRoute('activiti');
|
||||
await loginPage.login(adminUserModel.id, adminUserModel.password);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await processServicesPage.checkApsContainer();
|
||||
});
|
||||
|
||||
it('[C279931] Should the user be redirect to the login page when the Process Service session expire', async () => {
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcmBpm();
|
||||
await loginPage.login(adminUserModel.id, adminUserModel.password);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await browser.executeScript('window.localStorage.removeItem("ADF_ticket-BPM");');
|
||||
await BrowserActions.getUrl(browser.params.testConfig.adf.url + '/activiti');
|
||||
await loginPage.waitForElements();
|
||||
@@ -234,11 +230,9 @@ describe('Login component', () => {
|
||||
|
||||
it('[C279930] Should a user still be logged-in when open a new tab', async () => {
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcmBpm();
|
||||
await loginPage.login(adminUserModel.id, adminUserModel.password);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await Util.openNewTabInBrowser();
|
||||
await browser.executeScript("window.open('about: blank', '_blank');");
|
||||
|
||||
const handles = await browser.getAllWindowHandles();
|
||||
await browser.switchTo().window(handles[1]);
|
||||
@@ -250,16 +244,13 @@ describe('Login component', () => {
|
||||
|
||||
it('[C279933] Should be possible change the login component logo when logoImageUrl is changed', async () => {
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcmBpm();
|
||||
await loginPage.enableLogoSwitch();
|
||||
await loginPage.enterLogo('https://rawgit.com/Alfresco/alfresco-ng2-components/master/assets/angular2.png');
|
||||
await loginPage.checkLoginImgURL();
|
||||
});
|
||||
|
||||
it('[C291854] Should be possible login in valid credentials', async () => {
|
||||
await BrowserActions.getUrl(browser.params.testConfig.adf.url);
|
||||
await loginPage.waitForElements();
|
||||
await loginPage.goToLoginPage();
|
||||
await expect(await loginPage.getSignInButtonIsEnabled()).toBe(false);
|
||||
await loginPage.enterUsername(invalidUsername);
|
||||
await expect(await loginPage.getSignInButtonIsEnabled()).toBe(false);
|
||||
@@ -267,6 +258,6 @@ describe('Login component', () => {
|
||||
await expect(await loginPage.getSignInButtonIsEnabled()).toBe(true);
|
||||
await loginPage.clickSignInButton();
|
||||
await expect(await loginPage.getLoginError()).toEqual(errorMessages.invalid_credentials);
|
||||
await loginPage.login(adminUserModel.id, adminUserModel.password);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
});
|
||||
});
|
||||
|
@@ -15,9 +15,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginSSOPage, SettingsPage, LoginPage, BrowserVisibility } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, SettingsPage, BrowserVisibility } from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { NavigationBarPage } from '../../../pages/adf/navigation-bar.page';
|
||||
import { LoginPage } from '../../../pages/adf/demo-shell/login.page';
|
||||
|
||||
describe('Login component - SSO', () => {
|
||||
|
||||
@@ -26,11 +27,7 @@ describe('Login component - SSO', () => {
|
||||
const loginPage = new LoginPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
const silentLogin = false;
|
||||
let implicitFlow;
|
||||
|
||||
describe('Login component - SSO implicit Flow', () => {
|
||||
|
||||
afterEach(async () => {
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
await browser.executeScript('window.sessionStorage.clear();');
|
||||
@@ -39,35 +36,33 @@ describe('Login component - SSO', () => {
|
||||
});
|
||||
|
||||
it('[C261050] Should be possible login with SSO', async () => {
|
||||
await settingsPage.setProviderEcmSso(browser.params.testConfig.adf_acs.host,
|
||||
browser.params.testConfig.adf.hostSso,
|
||||
browser.params.testConfig.adf.hostIdentity, false, true, browser.params.config.oauth2.clientId);
|
||||
await settingsPage.setProviderEcmSso(browser.params.testConfig.appConfig.ecmHost,
|
||||
browser.params.testConfig.appConfig.oauth2.host,
|
||||
browser.params.testConfig.appConfig.identityHost, false, true, browser.params.testConfig.appConfig.oauth2.clientId);
|
||||
await loginSSOPage.clickOnSSOButton();
|
||||
await loginSSOPage.loginSSOIdentityService(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await loginSSOPage.loginSSOIdentityService(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
});
|
||||
|
||||
it('[C280667] Should be redirect directly to keycloak without show the login page with silent login', async () => {
|
||||
await settingsPage.setProviderEcmSso(browser.params.testConfig.adf_acs.host,
|
||||
browser.params.testConfig.adf.hostSso,
|
||||
browser.params.testConfig.adf.hostIdentity, true, true, browser.params.config.oauth2.clientId);
|
||||
await settingsPage.setProviderEcmSso(browser.params.testConfig.appConfig.ecmHost,
|
||||
browser.params.testConfig.appConfig.oauth2.host,
|
||||
browser.params.testConfig.appConfig.identityHost, true, true, browser.params.testConfig.appConfig.oauth2.clientId);
|
||||
|
||||
await browser.refresh();
|
||||
await loginSSOPage.loginSSOIdentityService(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await loginSSOPage.loginSSOIdentityService(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
});
|
||||
});
|
||||
|
||||
describe('Login component - SSO Grant type password (implicit flow false)', () => {
|
||||
|
||||
it('[C299158] Should be possible to login with SSO, with grant type password (Implicit Flow false)', async () => {
|
||||
implicitFlow = false;
|
||||
await settingsPage.setProviderEcmSso(browser.params.testConfig.adf_acs.host,
|
||||
browser.params.testConfig.adf.hostSso,
|
||||
browser.params.testConfig.adf.hostIdentity, silentLogin, implicitFlow, browser.params.config.oauth2.clientId);
|
||||
await settingsPage.setProviderEcmSso(browser.params.testConfig.appConfig.ecmHost,
|
||||
browser.params.testConfig.appConfig.oauth2.host,
|
||||
browser.params.testConfig.appConfig.identityHost, false, false, browser.params.testConfig.appConfig.oauth2.clientId);
|
||||
|
||||
await loginPage.waitForElements();
|
||||
|
||||
await loginPage.enterUsername(browser.params.testConfig.adf.adminEmail);
|
||||
await loginPage.enterPassword(browser.params.testConfig.adf.adminPassword);
|
||||
await loginPage.enterUsername(browser.params.testConfig.admin.email);
|
||||
await loginPage.enterPassword(browser.params.testConfig.admin.password);
|
||||
await loginPage.clickSignInButton();
|
||||
|
||||
await BrowserVisibility.waitUntilElementIsVisible(loginPage.sidenavLayout);
|
||||
|
@@ -27,10 +27,10 @@ describe('Logout component - SSO', () => {
|
||||
|
||||
it('[C280665] Should be possible change the logout redirect URL', async () => {
|
||||
await settingsPage.setProviderEcmSso(browser.params.testConfig.adf.url,
|
||||
browser.params.testConfig.adf.hostSso,
|
||||
browser.params.testConfig.adf.hostIdentity, false, true, browser.params.config.oauth2.clientId, '/login');
|
||||
browser.params.testConfig.appConfig.oauth2.host,
|
||||
browser.params.testConfig.appConfig.identityHost, false, true, browser.params.testConfig.appConfig.oauth2.clientId, '/login');
|
||||
await loginSSOPage.clickOnSSOButton();
|
||||
await loginSSOPage.loginSSOIdentityService(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await loginSSOPage.loginSSOIdentityService(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
|
||||
await browser.sleep(2000);
|
||||
|
@@ -17,13 +17,13 @@
|
||||
|
||||
import { browser } from 'protractor';
|
||||
|
||||
import { LoginPage, SettingsPage, UploadActions, StringUtil } from '@alfresco/adf-testing';
|
||||
import { SettingsPage, UploadActions, StringUtil, ApiService, LocalStorageUtil } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../pages/adf/content-services.page';
|
||||
import { ProcessServicesPage } from '../../pages/adf/process-services/process-services.page';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { LogoutPage } from '../../pages/adf/demo-shell/logout.page';
|
||||
import { LoginPage } from '../../pages/adf/demo-shell/login.page';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Login component - Redirect', () => {
|
||||
|
||||
@@ -32,39 +32,31 @@ describe('Login component - Redirect', () => {
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const loginPage = new LoginPage();
|
||||
const user = new AcsUserModel();
|
||||
const userFolderOwner = new AcsUserModel();
|
||||
const adminUserModel = new AcsUserModel({
|
||||
'id': browser.params.testConfig.adf.adminUser,
|
||||
'password': browser.params.testConfig.adf.adminPassword
|
||||
});
|
||||
let uploadedFolder;
|
||||
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host,
|
||||
hostBpm: browser.params.testConfig.adf_aps.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
const logoutPage = new LogoutPage();
|
||||
|
||||
let user;
|
||||
let uploadedFolder;
|
||||
|
||||
const apiService = new ApiService();
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
beforeAll(async () => {
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(user);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(userFolderOwner);
|
||||
|
||||
await this.alfrescoJsApi.login(user.id, user.password);
|
||||
user = await usersActions.createUser();
|
||||
await apiService.getInstance().login(user.email, user.password);
|
||||
|
||||
uploadedFolder = await uploadActions.createFolder('protecteFolder' + StringUtil.generateRandomString(), '-my-');
|
||||
});
|
||||
});
|
||||
|
||||
it('[C213838] Should after login in CS be redirect to Login page when try to access to PS', async () => {
|
||||
await LocalStorageUtil.setStorageItem('providers', 'ECM');
|
||||
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcm();
|
||||
await loginPage.login(user.id, user.password);
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
await contentServicesPage.checkAcsContainer();
|
||||
@@ -75,6 +67,8 @@ describe('Login component - Redirect', () => {
|
||||
});
|
||||
|
||||
it('[C260085] Should after login in PS be redirect to Login page when try to access to CS', async () => {
|
||||
await LocalStorageUtil.setStorageItem('providers', 'BPM');
|
||||
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderBpm();
|
||||
@@ -82,7 +76,7 @@ describe('Login component - Redirect', () => {
|
||||
await loginPage.enableSuccessRouteSwitch();
|
||||
await loginPage.enterSuccessRoute('activiti');
|
||||
|
||||
await loginPage.login(adminUserModel.id, adminUserModel.password);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await navigationBarPage.navigateToProcessServicesPage();
|
||||
await processServicesPage.checkApsContainer();
|
||||
@@ -93,12 +87,14 @@ describe('Login component - Redirect', () => {
|
||||
});
|
||||
|
||||
it('[C260081] Should after login in BOTH not be redirect to Login page when try to access to CS or PS', async () => {
|
||||
await LocalStorageUtil.setStorageItem('providers', 'ALL');
|
||||
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
|
||||
await settingsPage.setProviderEcmBpm();
|
||||
|
||||
await loginPage.login(adminUserModel.id, adminUserModel.password);
|
||||
await loginPage.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await navigationBarPage.navigateToProcessServicesPage();
|
||||
await processServicesPage.checkApsContainer();
|
||||
@@ -111,7 +107,7 @@ describe('Login component - Redirect', () => {
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcm();
|
||||
await loginPage.login(user.id, user.password);
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
await navigationBarPage.openContentServicesFolder(uploadedFolder.entry.id);
|
||||
|
||||
@@ -128,7 +124,7 @@ describe('Login component - Redirect', () => {
|
||||
|
||||
await loginPage.waitForElements();
|
||||
|
||||
await loginPage.login(user.id, user.password);
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
actualUrl = await browser.getCurrentUrl();
|
||||
await expect(actualUrl).toEqual(browser.params.testConfig.adf.url + '/files/' + uploadedFolder.entry.id);
|
||||
@@ -138,7 +134,7 @@ describe('Login component - Redirect', () => {
|
||||
await loginPage.goToLoginPage();
|
||||
await loginPage.clickSettingsIcon();
|
||||
await settingsPage.setProviderEcm();
|
||||
await loginPage.login(user.id, user.password);
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
await navigationBarPage.openContentServicesFolder(uploadedFolder.entry.id);
|
||||
|
||||
@@ -156,7 +152,7 @@ describe('Login component - Redirect', () => {
|
||||
await browser.refresh();
|
||||
await loginPage.waitForElements();
|
||||
|
||||
await loginPage.enterUsername(user.id);
|
||||
await loginPage.enterUsername(user.email);
|
||||
await loginPage.enterPassword(user.password);
|
||||
await loginPage.clickSignInButton();
|
||||
|
||||
|
@@ -15,7 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginPage, SettingsPage } from '@alfresco/adf-testing';
|
||||
import { SettingsPage } from '@alfresco/adf-testing';
|
||||
import { LoginPage } from '../../pages/adf/demo-shell/login.page';
|
||||
|
||||
describe('Login component - Remember Me', () => {
|
||||
|
||||
|
118
e2e/core/notifications-component.e2e.ts
Normal file
118
e2e/core/notifications-component.e2e.ts
Normal file
@@ -0,0 +1,118 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright 2019 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 { ApiService, LoginSSOPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { NotificationDemoPage } from '../pages/adf/demo-shell/notification.page';
|
||||
import { browser } from 'protractor';
|
||||
import { NavigationBarPage } from '../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
|
||||
describe('Notifications Component', () => {
|
||||
|
||||
const loginPage = new LoginSSOPage();
|
||||
const notificationPage = new NotificationDemoPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
let acsUser: UserModel;
|
||||
|
||||
beforeAll(async () => {
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
acsUser = await usersActions.createUser();
|
||||
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
|
||||
await notificationPage.goToNotificationsPage();
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
});
|
||||
|
||||
beforeEach(async () => {
|
||||
await notificationPage.enterDurationField(3000);
|
||||
});
|
||||
|
||||
afterEach(async () => {
|
||||
await notificationPage.waitForSnackBarToClose();
|
||||
await browser.executeScript(`document.querySelector('button[data-automation-id="notification-custom-dismiss-button"]').click();`);
|
||||
});
|
||||
|
||||
it('[C279979] Should not show notification when the message is empty and button is clicked', async () => {
|
||||
await notificationPage.clearMessage();
|
||||
await notificationPage.clickNotificationButton();
|
||||
await expect(await notificationPage.isNotificationSnackBarDisplayed()).toEqual(false);
|
||||
});
|
||||
|
||||
it('[C279977] Should show notification when the message is not empty and button is clicked', async () => {
|
||||
await notificationPage.enterMessageField('test');
|
||||
await notificationPage.clickNotificationButton();
|
||||
await expect(await notificationPage.getSnackBarMessage()).toEqual('test');
|
||||
});
|
||||
|
||||
it('[C279978] Should show notification with action when the message is not empty and button is clicked', async () => {
|
||||
await notificationPage.enterMessageField('test');
|
||||
await notificationPage.clickActionToggle();
|
||||
await notificationPage.clickNotificationButton();
|
||||
await expect(await notificationPage.getSnackBarMessage()).toEqual('test');
|
||||
await notificationPage.clickActionButton();
|
||||
await notificationPage.checkActionEvent();
|
||||
await notificationPage.clickActionToggle();
|
||||
});
|
||||
|
||||
it('[C279981] Should show notification with action when the message is not empty and custom configuration button is clicked', async () => {
|
||||
await notificationPage.enterMessageField('test');
|
||||
await notificationPage.clickNotificationButton();
|
||||
await expect(await notificationPage.isNotificationSnackBarDisplayed()).toEqual(true);
|
||||
});
|
||||
|
||||
it('[C280000] Should show notification with action when the message is not empty and custom button is clicked', async () => {
|
||||
await notificationPage.enterMessageField('test');
|
||||
await notificationPage.clickActionToggle();
|
||||
await notificationPage.clickNotificationButton();
|
||||
await expect(await notificationPage.isNotificationSnackBarDisplayed()).toEqual(true);
|
||||
await expect(await notificationPage.getSnackBarMessage()).toEqual('test');
|
||||
await notificationPage.waitForSnackBarToClose();
|
||||
await notificationPage.clickNotificationButton();
|
||||
await notificationPage.clickActionButton();
|
||||
await notificationPage.checkActionEvent();
|
||||
await notificationPage.clickActionToggle();
|
||||
});
|
||||
|
||||
it('[C279987] Should show custom notification during a limited time when a duration is added', async () => {
|
||||
await notificationPage.enterMessageField('test');
|
||||
await notificationPage.enterDurationField(1000);
|
||||
await notificationPage.clickNotificationButton();
|
||||
await expect(await notificationPage.isNotificationSnackBarDisplayed()).toEqual(true);
|
||||
await browser.sleep(2000);
|
||||
await expect(await notificationPage.isNotificationSnackBarDisplayed()).toEqual(false);
|
||||
});
|
||||
|
||||
it('[C280001] Should meet configuration when a custom notification is set', async () => {
|
||||
await notificationPage.enterMessageField('test');
|
||||
await notificationPage.enterDurationField(1000);
|
||||
await notificationPage.selectHorizontalPosition('Right');
|
||||
await notificationPage.selectVerticalPosition('Top');
|
||||
await notificationPage.selectDirection('Left to right');
|
||||
await notificationPage.clickNotificationButton();
|
||||
await expect(await notificationPage.getConfigObject()).toBe('{"direction": "ltr", "duration": "1000", "horizontalPosition": "right", "verticalPosition": "top"}');
|
||||
});
|
||||
});
|
@@ -15,23 +15,33 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginPage, PaginationPage, UploadActions, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import {
|
||||
ArrayUtil,
|
||||
StringUtil,
|
||||
LoginSSOPage,
|
||||
PaginationPage,
|
||||
UploadActions,
|
||||
ViewerPage,
|
||||
ApiService,
|
||||
UserModel
|
||||
} from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { AcsUserModel } from '../models/ACS/acs-user.model';
|
||||
import { FileModel } from '../models/ACS/file.model';
|
||||
import { FolderModel } from '../models/ACS/folder.model';
|
||||
import { ContentServicesPage } from '../pages/adf/content-services.page';
|
||||
import { Util } from '../util/util';
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
|
||||
describe('Pagination - returns to previous page when current is empty', () => {
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const paginationPage = new PaginationPage();
|
||||
const viewerPage = new ViewerPage();
|
||||
|
||||
const acsUser = new AcsUserModel();
|
||||
const viewerPage = new ViewerPage();
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
const acsUser = new UserModel();
|
||||
const folderModel = new FolderModel({ 'name': 'folderOne' });
|
||||
const parentFolderModel = new FolderModel({ 'name': 'parentFolder' });
|
||||
|
||||
@@ -59,19 +69,15 @@ describe('Pagination - returns to previous page when current is empty', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
fileNames = Util.generateSequenceFiles(1, nrOfFiles, files.base, files.extension);
|
||||
fileNames = StringUtil.generateFilesNames(1, nrOfFiles, files.base, files.extension);
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
const folderUploadedModel = await uploadActions.createFolder(folderModel.name, '-my-');
|
||||
|
||||
@@ -87,7 +93,7 @@ describe('Pagination - returns to previous page when current is empty', () => {
|
||||
|
||||
pngFileUploaded = await uploadActions.uploadFile(pngFileInfo.location, pngFileInfo.name, lastFolderResponse.entry.id);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
|
||||
await contentServicesPage.goToDocumentList();
|
||||
});
|
||||
@@ -102,7 +108,7 @@ describe('Pagination - returns to previous page when current is empty', () => {
|
||||
await expect(await contentServicesPage.numberOfResultsDisplayed()).toBe(itemsPerPage.fiveValue);
|
||||
|
||||
let list = await contentServicesPage.getAllRowsNameColumn();
|
||||
await expect(Util.arrayContainsArray(list, fileNames.slice(0, 5))).toEqual(true);
|
||||
await expect(ArrayUtil.arrayContainsArray(list, fileNames.slice(0, 5))).toEqual(true);
|
||||
|
||||
await paginationPage.clickOnNextPage();
|
||||
|
||||
@@ -111,7 +117,7 @@ describe('Pagination - returns to previous page when current is empty', () => {
|
||||
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.five);
|
||||
|
||||
list = await contentServicesPage.getAllRowsNameColumn();
|
||||
await expect(Util.arrayContainsArray(list, fileNames.slice(5, 6))).toEqual(true);
|
||||
await expect(ArrayUtil.arrayContainsArray(list, fileNames.slice(5, 6))).toEqual(true);
|
||||
|
||||
await contentServicesPage.deleteContent(lastFile);
|
||||
await contentServicesPage.checkContentIsNotDisplayed(lastFile);
|
||||
@@ -120,7 +126,7 @@ describe('Pagination - returns to previous page when current is empty', () => {
|
||||
await expect(await contentServicesPage.numberOfResultsDisplayed()).toBe(itemsPerPage.fiveValue);
|
||||
|
||||
list = await contentServicesPage.getAllRowsNameColumn();
|
||||
await expect(Util.arrayContainsArray(list, fileNames.slice(0, 5))).toEqual(true);
|
||||
await expect(ArrayUtil.arrayContainsArray(list, fileNames.slice(0, 5))).toEqual(true);
|
||||
});
|
||||
|
||||
it('[C297494] Should display content when navigating to a non-empty folder not in the first page', async () => {
|
||||
|
@@ -15,12 +15,12 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { BrowserActions, LoginPage, SettingsPage } from '@alfresco/adf-testing';
|
||||
import { BrowserActions, SettingsPage } from '@alfresco/adf-testing';
|
||||
import { browser, protractor } from 'protractor';
|
||||
import { AcsUserModel } from '../models/ACS/acs-user.model';
|
||||
import { ContentServicesPage } from '../pages/adf/content-services.page';
|
||||
import { NavigationBarPage } from '../pages/adf/navigation-bar.page';
|
||||
import { ProcessServicesPage } from '../pages/adf/process-services/process-services.page';
|
||||
import { LoginPage } from '../pages/adf/demo-shell/login.page';
|
||||
|
||||
describe('Settings component', () => {
|
||||
|
||||
@@ -32,11 +32,6 @@ describe('Settings component', () => {
|
||||
const loginError = 'Request has been terminated ' +
|
||||
'Possible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.';
|
||||
|
||||
const adminUserModel = new AcsUserModel({
|
||||
'id': browser.params.testConfig.adf.adminUser,
|
||||
'password': browser.params.testConfig.adf.adminPassword
|
||||
});
|
||||
|
||||
describe('Should be able to change Urls in the Settings', () => {
|
||||
beforeEach(async () => {
|
||||
await settingsPage.goToSettingsPage();
|
||||
@@ -54,8 +49,8 @@ describe('Settings component', () => {
|
||||
await loginPage.waitForElements();
|
||||
await settingsPage.goToSettingsPage();
|
||||
await expect(await settingsPage.getSelectedOptionText()).toEqual('ALL', 'The Settings changes are not saved');
|
||||
await expect(await settingsPage.getBpmHostUrl()).toEqual(browser.params.testConfig.adf_aps.host, 'The BPM Settings changes are not saved');
|
||||
await expect(await settingsPage.getEcmHostUrl()).toEqual(browser.params.testConfig.adf_acs.host, 'The ECM Settings changes are not saved');
|
||||
await expect(await settingsPage.getBpmHostUrl()).toEqual(browser.params.testConfig.appConfig.bpmHost, 'The BPM Settings changes are not saved');
|
||||
await expect(await settingsPage.getEcmHostUrl()).toEqual(browser.params.testConfig.appConfig.ecmHost, 'The ECM Settings changes are not saved');
|
||||
});
|
||||
|
||||
it('[C291949] Should have field validation for Content Services Url', async () => {
|
||||
@@ -79,8 +74,8 @@ describe('Settings component', () => {
|
||||
await settingsPage.setContentServicesURL('http://localhost:7070');
|
||||
await settingsPage.clickApply();
|
||||
await loginPage.waitForElements();
|
||||
await loginPage.enterUsername(adminUserModel.id);
|
||||
await loginPage.enterPassword(adminUserModel.password);
|
||||
await loginPage.enterUsername(browser.params.testConfig.admin.email);
|
||||
await loginPage.enterPassword(browser.params.testConfig.admin.password);
|
||||
await loginPage.clickSignInButton();
|
||||
await expect(await loginPage.getLoginError()).toMatch(loginError);
|
||||
});
|
||||
@@ -90,8 +85,8 @@ describe('Settings component', () => {
|
||||
await settingsPage.setProcessServicesURL('http://localhost:7070');
|
||||
await settingsPage.clickApply();
|
||||
await loginPage.waitForElements();
|
||||
await loginPage.enterUsername(adminUserModel.id);
|
||||
await loginPage.enterPassword(adminUserModel.password);
|
||||
await loginPage.enterUsername(browser.params.testConfig.admin.email);
|
||||
await loginPage.enterPassword(browser.params.testConfig.admin.password);
|
||||
await loginPage.clickSignInButton();
|
||||
await expect(await loginPage.getLoginError()).toMatch(loginError);
|
||||
});
|
||||
@@ -101,8 +96,8 @@ describe('Settings component', () => {
|
||||
beforeAll(async () => {
|
||||
await settingsPage.goToSettingsPage();
|
||||
await settingsPage.setProvider('ALL');
|
||||
await settingsPage.setContentServicesURL(browser.params.testConfig.adf_acs.host);
|
||||
await settingsPage.setProcessServicesURL(browser.params.testConfig.adf_aps.host);
|
||||
await settingsPage.setContentServicesURL(browser.params.testConfig.appConfig.ecmHost);
|
||||
await settingsPage.setProcessServicesURL(browser.params.testConfig.appConfig.bpmHost);
|
||||
await settingsPage.clickApply();
|
||||
});
|
||||
|
||||
@@ -116,8 +111,8 @@ describe('Settings component', () => {
|
||||
await settingsPage.checkProviderOptions();
|
||||
await settingsPage.checkBasicAuthRadioIsSelected();
|
||||
await settingsPage.checkSsoRadioIsNotSelected();
|
||||
await expect(await settingsPage.getEcmHostUrl()).toBe(browser.params.testConfig.adf_acs.host);
|
||||
await expect(await settingsPage.getBpmHostUrl()).toBe(browser.params.testConfig.adf_aps.host);
|
||||
await expect(await settingsPage.getEcmHostUrl()).toBe(browser.params.testConfig.appConfig.ecmHost);
|
||||
await expect(await settingsPage.getBpmHostUrl()).toBe(browser.params.testConfig.appConfig.bpmHost);
|
||||
|
||||
await expect(await settingsPage.getBackButton().isEnabled()).toBe(true);
|
||||
await expect(await settingsPage.getApplyButton().isEnabled()).toBe(true);
|
||||
@@ -131,8 +126,8 @@ describe('Settings component', () => {
|
||||
await settingsPage.checkProviderDropdownIsDisplayed();
|
||||
await settingsPage.setProviderBpm();
|
||||
await loginPage.waitForElements();
|
||||
await loginPage.enterUsername(adminUserModel.id);
|
||||
await loginPage.enterPassword(adminUserModel.password);
|
||||
await loginPage.enterUsername(browser.params.testConfig.admin.email);
|
||||
await loginPage.enterPassword(browser.params.testConfig.admin.password);
|
||||
await loginPage.clickSignInButton();
|
||||
await navigationBarPage.navigateToProcessServicesPage();
|
||||
await processServicesPage.checkApsContainer();
|
||||
@@ -142,7 +137,7 @@ describe('Settings component', () => {
|
||||
|
||||
await settingsPage.checkBasicAuthRadioIsSelected();
|
||||
await settingsPage.checkSsoRadioIsNotSelected();
|
||||
await expect(await settingsPage.getBpmHostUrl()).toBe(browser.params.testConfig.adf_aps.host);
|
||||
await expect(await settingsPage.getBpmHostUrl()).toBe(browser.params.testConfig.appConfig.bpmHost);
|
||||
|
||||
await expect(await settingsPage.getBackButton().isEnabled()).toBe(true);
|
||||
await expect(await settingsPage.getApplyButton().isEnabled()).toBe(true);
|
||||
@@ -161,8 +156,8 @@ describe('Settings component', () => {
|
||||
await settingsPage.checkProviderDropdownIsDisplayed();
|
||||
await settingsPage.setProviderEcm();
|
||||
await loginPage.waitForElements();
|
||||
await loginPage.enterUsername(adminUserModel.id);
|
||||
await loginPage.enterPassword(adminUserModel.password);
|
||||
await loginPage.enterUsername(browser.params.testConfig.admin.email);
|
||||
await loginPage.enterPassword(browser.params.testConfig.admin.password);
|
||||
await loginPage.clickSignInButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
await contentServicesPage.checkAcsContainer();
|
||||
@@ -171,7 +166,7 @@ describe('Settings component', () => {
|
||||
await settingsPage.checkBasicAuthRadioIsSelected();
|
||||
await settingsPage.checkSsoRadioIsNotSelected();
|
||||
|
||||
await expect(await settingsPage.getEcmHostUrl()).toBe(browser.params.testConfig.adf_acs.host);
|
||||
await expect(await settingsPage.getEcmHostUrl()).toBe(browser.params.testConfig.appConfig.ecmHost);
|
||||
await expect(await settingsPage.getBackButton().isEnabled()).toBe(true);
|
||||
await expect(await settingsPage.getApplyButton().isEnabled()).toBe(true);
|
||||
await settingsPage.clickBackButton();
|
||||
@@ -188,8 +183,8 @@ describe('Settings component', () => {
|
||||
await settingsPage.checkProviderDropdownIsDisplayed();
|
||||
await settingsPage.setProviderEcmBpm();
|
||||
await loginPage.waitForElements();
|
||||
await loginPage.enterUsername(adminUserModel.id);
|
||||
await loginPage.enterPassword(adminUserModel.password);
|
||||
await loginPage.enterUsername(browser.params.testConfig.admin.email);
|
||||
await loginPage.enterPassword(browser.params.testConfig.admin.password);
|
||||
await loginPage.clickSignInButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
await contentServicesPage.checkAcsContainer();
|
||||
@@ -200,8 +195,8 @@ describe('Settings component', () => {
|
||||
await expect(await settingsPage.getSelectedOptionText()).toBe('ALL');
|
||||
await settingsPage.checkBasicAuthRadioIsSelected();
|
||||
await settingsPage.checkSsoRadioIsNotSelected();
|
||||
await expect(await settingsPage.getEcmHostUrl()).toBe(browser.params.testConfig.adf_acs.host);
|
||||
await expect(await settingsPage.getBpmHostUrl()).toBe(browser.params.testConfig.adf_aps.host);
|
||||
await expect(await settingsPage.getEcmHostUrl()).toBe(browser.params.testConfig.appConfig.ecmHost);
|
||||
await expect(await settingsPage.getBpmHostUrl()).toBe(browser.params.testConfig.appConfig.bpmHost);
|
||||
|
||||
await expect(await settingsPage.getBackButton().isEnabled()).toBe(true);
|
||||
await expect(await settingsPage.getApplyButton().isEnabled()).toBe(true);
|
||||
|
@@ -15,38 +15,38 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { ApiService, IdentityService, LoginSSOPage, SettingsPage, UserInfoPage } from '@alfresco/adf-testing';
|
||||
import {
|
||||
ApiService,
|
||||
LoginSSOPage,
|
||||
SettingsPage,
|
||||
UserInfoPage
|
||||
} from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
|
||||
describe('User Info - SSO', () => {
|
||||
|
||||
const settingsPage = new SettingsPage();
|
||||
const loginSSOPage = new LoginSSOPage();
|
||||
const userInfoPage = new UserInfoPage();
|
||||
let silentLogin, identityUser;
|
||||
let identityService: IdentityService;
|
||||
|
||||
const apiService = new ApiService({ authType: 'OAUTH', provider: 'ECM' });
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
let identityUser;
|
||||
|
||||
beforeAll(async () => {
|
||||
const apiService = new ApiService(browser.params.config.oauth2.clientId, browser.params.testConfig.adf.url, browser.params.testConfig.adf.hostSso, 'ECM');
|
||||
await apiService.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await apiService.login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
identityService = new IdentityService(apiService);
|
||||
identityUser = await identityService.createIdentityUser();
|
||||
identityUser = await usersActions.createUser();
|
||||
|
||||
silentLogin = false;
|
||||
await settingsPage.setProviderEcmSso(browser.params.testConfig.adf.url,
|
||||
browser.params.testConfig.adf.hostSso,
|
||||
browser.params.testConfig.adf.hostIdentity, silentLogin, true, browser.params.config.oauth2.clientId);
|
||||
browser.params.testConfig.appConfig.oauth2.host,
|
||||
browser.params.testConfig.appConfig.identityHost, false, true, browser.params.testConfig.appConfig.oauth2.clientId);
|
||||
|
||||
await loginSSOPage.clickOnSSOButton();
|
||||
|
||||
await loginSSOPage.loginSSOIdentityService(identityUser.email, identityUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
if (identityService) {
|
||||
await identityService.deleteIdentityUser(identityUser.idIdentityService);
|
||||
}
|
||||
});
|
||||
|
||||
it('[C290066] Should display UserInfo when login using SSO', async () => {
|
||||
|
@@ -15,22 +15,27 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginPage, UserInfoPage } from '@alfresco/adf-testing';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { PeopleApi } from '@alfresco/js-api';
|
||||
import { ApiService, LocalStorageUtil, LoginSSOPage, UserInfoPage } from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
import { UsersActions } from '../actions/users.actions';
|
||||
import { AcsUserModel } from '../models/ACS/acs-user.model';
|
||||
import { FileModel } from '../models/ACS/file.model';
|
||||
import { NavigationBarPage } from '../pages/adf/navigation-bar.page';
|
||||
import PeopleAPI = require('../restAPI/ACS/PeopleAPI');
|
||||
import path = require('path');
|
||||
import fs = require('fs');
|
||||
|
||||
describe('User Info component', () => {
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const userInfoPage = new UserInfoPage();
|
||||
let processUserModel, contentUserModel;
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const peopleApi: PeopleApi = new PeopleApi(apiService.getInstance());
|
||||
|
||||
let user;
|
||||
|
||||
const acsAvatarFileModel = new FileModel({
|
||||
'name': browser.params.resources.Files.PROFILE_IMAGES.ECM.file_name,
|
||||
'location': browser.params.resources.Files.PROFILE_IMAGES.ECM.file_location
|
||||
@@ -41,43 +46,25 @@ describe('User Info component', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
const users = new UsersActions();
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ALL',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host,
|
||||
hostBpm: browser.params.testConfig.adf_aps.host
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
processUserModel = await users.createTenantAndUser(this.alfrescoJsApi);
|
||||
|
||||
contentUserModel = new AcsUserModel({
|
||||
'id': processUserModel.email,
|
||||
'password': processUserModel.password,
|
||||
'firstName': processUserModel.firstName,
|
||||
'lastName': processUserModel.lastName,
|
||||
'email': processUserModel.email
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(contentUserModel);
|
||||
});
|
||||
user = await usersActions.createUser();
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
});
|
||||
|
||||
it('[C260111] Should display UserInfo when Process Services and Content Services are enabled', async () => {
|
||||
await loginPage.loginToAllUsingUserModel(contentUserModel);
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
await userInfoPage.clickUserProfile();
|
||||
await userInfoPage.dialogIsDisplayed();
|
||||
await userInfoPage.checkContentServicesTabIsSelected();
|
||||
|
||||
await expect(await userInfoPage.getContentHeaderTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
await expect(await userInfoPage.getContentTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
await expect(await userInfoPage.getContentEmail()).toEqual(contentUserModel.email);
|
||||
await expect(await userInfoPage.getContentHeaderTitle()).toEqual(user.firstName + ' ' + user.lastName);
|
||||
await expect(await userInfoPage.getContentTitle()).toEqual(user.firstName + ' ' + user.lastName);
|
||||
await expect(await userInfoPage.getContentEmail()).toEqual(user.email);
|
||||
await expect(await userInfoPage.getContentJobTitle()).toEqual('N/A');
|
||||
|
||||
await userInfoPage.checkInitialImage();
|
||||
@@ -89,22 +76,22 @@ describe('User Info component', () => {
|
||||
|
||||
await browser.sleep(1000);
|
||||
|
||||
await expect(await userInfoPage.getProcessHeaderTitle()).toEqual(processUserModel.firstName + ' ' + processUserModel.lastName);
|
||||
await expect(await userInfoPage.getProcessTitle()).toEqual(processUserModel.firstName + ' ' + processUserModel.lastName);
|
||||
await expect(await userInfoPage.getProcessEmail()).toEqual(processUserModel.email);
|
||||
await expect(await userInfoPage.getProcessHeaderTitle()).toEqual(user.firstName + ' ' + user.lastName);
|
||||
await expect(await userInfoPage.getProcessTitle()).toEqual(user.firstName + ' ' + user.lastName);
|
||||
await expect(await userInfoPage.getProcessEmail()).toEqual(user.email);
|
||||
|
||||
await userInfoPage.closeUserProfile();
|
||||
});
|
||||
|
||||
it('[C260113] Should display UserInfo when Content Services is enabled and Process Services is disabled', async () => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(contentUserModel);
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
await userInfoPage.clickUserProfile();
|
||||
await userInfoPage.dialogIsDisplayed();
|
||||
|
||||
await expect(await userInfoPage.getContentHeaderTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
await expect(await userInfoPage.getContentTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
await expect(await userInfoPage.getContentEmail()).toEqual(contentUserModel.email);
|
||||
await expect(await userInfoPage.getContentHeaderTitle()).toEqual(user.firstName + ' ' + user.lastName);
|
||||
await expect(await userInfoPage.getContentTitle()).toEqual(user.firstName + ' ' + user.lastName);
|
||||
await expect(await userInfoPage.getContentEmail()).toEqual(user.email);
|
||||
await expect(await userInfoPage.getContentJobTitle()).toEqual('N/A');
|
||||
|
||||
await userInfoPage.checkInitialImage();
|
||||
@@ -115,15 +102,17 @@ describe('User Info component', () => {
|
||||
});
|
||||
|
||||
it('[C260115] Should display UserInfo when Process Services is enabled and Content Services is disabled', async () => {
|
||||
await loginPage.loginToProcessServicesUsingUserModel(contentUserModel);
|
||||
await LocalStorageUtil.setStorageItem('providers', 'BPM');
|
||||
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
await userInfoPage.clickUserProfile();
|
||||
|
||||
await userInfoPage.dialogIsDisplayed();
|
||||
|
||||
await expect(await userInfoPage.getProcessHeaderTitle()).toEqual(processUserModel.firstName + ' ' + processUserModel.lastName);
|
||||
await expect(await userInfoPage.getProcessTitle()).toEqual(processUserModel.firstName + ' ' + processUserModel.lastName);
|
||||
await expect(await userInfoPage.getProcessEmail()).toEqual(processUserModel.email);
|
||||
await expect(await userInfoPage.getProcessHeaderTitle()).toEqual(user.firstName + ' ' + user.lastName);
|
||||
await expect(await userInfoPage.getProcessTitle()).toEqual(user.firstName + ' ' + user.lastName);
|
||||
await expect(await userInfoPage.getProcessEmail()).toEqual(user.email);
|
||||
|
||||
await userInfoPage.checkInitialImage();
|
||||
await userInfoPage.APSProfileImageNotDisplayed();
|
||||
@@ -132,11 +121,11 @@ describe('User Info component', () => {
|
||||
});
|
||||
|
||||
it('[C260117] Should display UserInfo with profile image uploaded in ACS', async () => {
|
||||
await PeopleAPI.updateAvatarViaAPI(contentUserModel, acsAvatarFileModel, '-me-');
|
||||
await PeopleAPI.getAvatarViaAPI(4, contentUserModel, '-me-', async() => {
|
||||
});
|
||||
await LocalStorageUtil.setStorageItem('providers', 'ECM');
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(contentUserModel);
|
||||
await updateAvatarACS();
|
||||
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
await userInfoPage.clickUserProfile();
|
||||
|
||||
@@ -146,11 +135,13 @@ describe('User Info component', () => {
|
||||
});
|
||||
|
||||
it('[C260118] Should display UserInfo with profile image uploaded in APS', async () => {
|
||||
const users = new UsersActions();
|
||||
await this.alfrescoJsApi.login(contentUserModel.email, contentUserModel.password);
|
||||
await users.changeProfilePictureAps(this.alfrescoJsApi, apsAvatarFileModel.getLocation());
|
||||
await LocalStorageUtil.setStorageItem('providers', 'BPM');
|
||||
|
||||
await loginPage.loginToProcessServicesUsingUserModel(contentUserModel);
|
||||
const users = new UsersActions(apiService);
|
||||
await apiService.getInstance().login(user.email, user.password);
|
||||
await users.changeProfilePictureAps(apsAvatarFileModel.getLocation());
|
||||
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
await userInfoPage.clickUserProfile();
|
||||
|
||||
@@ -161,15 +152,23 @@ describe('User Info component', () => {
|
||||
});
|
||||
|
||||
it('[C260120] Should not display profile image in UserInfo when deleted in ACS', async () => {
|
||||
await PeopleAPI.deleteAvatarViaAPI(contentUserModel, '-me-');
|
||||
await LocalStorageUtil.setStorageItem('providers', 'ECM');
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(contentUserModel);
|
||||
await peopleApi.deleteAvatarImage(user.email);
|
||||
|
||||
await loginPage.login(user.email, user.password);
|
||||
|
||||
await userInfoPage.clickUserProfile();
|
||||
|
||||
await userInfoPage.checkInitialImage();
|
||||
await userInfoPage.APSProfileImageNotDisplayed();
|
||||
await userInfoPage.ACSProfileImageNotDisplayed();
|
||||
await userInfoPage.closeUserProfile();
|
||||
});
|
||||
|
||||
const updateAvatarACS = async function () {
|
||||
await apiService.getInstance().login(user.email, user.password);
|
||||
const absolutePath = path.resolve(path.join(browser.params.testConfig.main.rootPath, acsAvatarFileModel.getLocation()));
|
||||
const file: any = fs.readFileSync(absolutePath);
|
||||
await peopleApi.updateAvatarImage('-me-', file);
|
||||
};
|
||||
});
|
||||
|
@@ -16,28 +16,26 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, UploadActions, StringUtil, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, UploadActions, StringUtil, ViewerPage, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../../pages/adf/content-services.page';
|
||||
import CONSTANTS = require('../../../util/constants');
|
||||
import { FolderModel } from '../../../models/ACS/folder.model';
|
||||
import { AcsUserModel } from '../../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { NavigationBarPage } from '../../../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
const acsUser = new UserModel();
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
|
||||
const archiveFolderInfo = new FolderModel({
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.ARCHIVE_FOLDER.folder_name,
|
||||
@@ -45,21 +43,21 @@ describe('Viewer', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
});
|
||||
|
||||
@@ -70,7 +68,7 @@ describe('Viewer', () => {
|
||||
beforeAll(async () => {
|
||||
archiveFolderUploaded = await uploadActions.createFolder(archiveFolderInfo.name, '-my-');
|
||||
uploadedArchives = await uploadActions.uploadFolder(archiveFolderInfo.location, archiveFolderUploaded.entry.id);
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
await contentServicesPage.goToDocumentList();
|
||||
});
|
||||
|
||||
|
@@ -16,29 +16,27 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, UploadActions, StringUtil, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, UploadActions, StringUtil, ViewerPage, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../../pages/adf/content-services.page';
|
||||
import CONSTANTS = require('../../../util/constants');
|
||||
import { FileModel } from '../../../models/ACS/file.model';
|
||||
import { FolderModel } from '../../../models/ACS/folder.model';
|
||||
import { AcsUserModel } from '../../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { NavigationBarPage } from '../../../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
const apiService = new ApiService();
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
let pngFileUploaded;
|
||||
|
||||
const pngFileInfo = new FileModel({
|
||||
@@ -52,31 +50,31 @@ describe('Viewer', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
pngFileUploaded = await uploadActions.uploadFile(pngFileInfo.location, pngFileInfo.name, site.entry.guid);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
});
|
||||
|
||||
it('[C272813] Should be redirected to site when opening and closing a file in a site', async () => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
|
||||
await navigationBarPage.goToSite(site);
|
||||
await contentServicesPage.checkAcsContainer();
|
||||
@@ -89,7 +87,6 @@ describe('Viewer', () => {
|
||||
});
|
||||
|
||||
describe('Other Folder Uploaded', () => {
|
||||
|
||||
let uploadedOthers;
|
||||
let otherFolderUploaded;
|
||||
|
||||
@@ -98,7 +95,7 @@ describe('Viewer', () => {
|
||||
|
||||
uploadedOthers = await uploadActions.uploadFolder(otherFolderInfo.location, otherFolderUploaded.entry.id);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
await contentServicesPage.goToDocumentList();
|
||||
});
|
||||
|
||||
|
@@ -16,54 +16,51 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, StringUtil, UploadActions, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { ApiService, LoginSSOPage, StringUtil, UploadActions, ViewerPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../../pages/adf/content-services.page';
|
||||
import CONSTANTS = require('../../../util/constants');
|
||||
import { FolderModel } from '../../../models/ACS/folder.model';
|
||||
import { AcsUserModel } from '../../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UsersActions } from '../../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
|
||||
const excelFolderInfo = new FolderModel({
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.EXCEL_FOLDER.folder_name,
|
||||
'location': browser.params.resources.Files.ADF_DOCUMENTS.EXCEL_FOLDER.folder_path
|
||||
});
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
|
||||
const apiService = new ApiService();
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
});
|
||||
|
||||
describe('Excel Folder Uploaded', () => {
|
||||
|
||||
let uploadedExcels;
|
||||
let excelFolderUploaded;
|
||||
|
||||
@@ -72,7 +69,7 @@ describe('Viewer', () => {
|
||||
|
||||
uploadedExcels = await uploadActions.uploadFolder(excelFolderInfo.location, excelFolderUploaded.entry.id);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
await contentServicesPage.goToDocumentList();
|
||||
});
|
||||
|
||||
|
@@ -16,25 +16,24 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, StringUtil, UploadActions, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { ApiService, LoginSSOPage, StringUtil, UploadActions, ViewerPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../../pages/adf/content-services.page';
|
||||
import CONSTANTS = require('../../../util/constants');
|
||||
import { FolderModel } from '../../../models/ACS/folder.model';
|
||||
import { AcsUserModel } from '../../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UsersActions } from '../../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
|
||||
const apiService = new ApiService();
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
|
||||
const imgFolderInfo = new FolderModel({
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.IMG_FOLDER.folder_name,
|
||||
@@ -47,28 +46,27 @@ describe('Viewer', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
});
|
||||
|
||||
describe('Image Folder Uploaded', () => {
|
||||
|
||||
let uploadedImages, uploadedImgRenditionFolderInfo;
|
||||
let imgFolderUploaded, imgFolderRenditionUploaded;
|
||||
|
||||
@@ -81,7 +79,7 @@ describe('Viewer', () => {
|
||||
|
||||
uploadedImgRenditionFolderInfo = await uploadActions.uploadFolder(imgRenditionFolderInfo.location, imgFolderRenditionUploaded.entry.id);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
await contentServicesPage.goToDocumentList();
|
||||
});
|
||||
|
||||
|
@@ -15,56 +15,54 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginPage, UploadActions, StringUtil, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, UploadActions, StringUtil, ViewerPage, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../../pages/adf/content-services.page';
|
||||
import CONSTANTS = require('../../../util/constants');
|
||||
import { FolderModel } from '../../../models/ACS/folder.model';
|
||||
import { AcsUserModel } from '../../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { browser } from 'protractor';
|
||||
import { UsersActions } from '../../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
|
||||
const acsUser = new UserModel();
|
||||
|
||||
const pptFolderInfo = new FolderModel({
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.PPT_FOLDER.folder_name,
|
||||
'location': browser.params.resources.Files.ADF_DOCUMENTS.PPT_FOLDER.folder_path
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
let site;
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
beforeAll(async () => {
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
});
|
||||
|
||||
describe('PowerPoint Folder Uploaded', () => {
|
||||
|
||||
let uploadedPpt;
|
||||
let pptFolderUploaded;
|
||||
|
||||
@@ -73,7 +71,7 @@ describe('Viewer', () => {
|
||||
|
||||
uploadedPpt = await uploadActions.uploadFolder(pptFolderInfo.location, pptFolderUploaded.entry.id);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
await contentServicesPage.goToDocumentList();
|
||||
});
|
||||
|
||||
|
@@ -16,25 +16,23 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, UploadActions, StringUtil, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, UploadActions, StringUtil, ViewerPage, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../../pages/adf/content-services.page';
|
||||
import CONSTANTS = require('../../../util/constants');
|
||||
import { FolderModel } from '../../../models/ACS/folder.model';
|
||||
import { AcsUserModel } from '../../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UsersActions } from '../../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
|
||||
const textFolderInfo = new FolderModel({
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.TEXT_FOLDER.folder_name,
|
||||
@@ -42,28 +40,27 @@ describe('Viewer', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
});
|
||||
|
||||
describe('Text Folder Uploaded', () => {
|
||||
|
||||
let uploadedTexts;
|
||||
let textFolderUploaded;
|
||||
|
||||
@@ -72,7 +69,7 @@ describe('Viewer', () => {
|
||||
|
||||
uploadedTexts = await uploadActions.uploadFolder(textFolderInfo.location, textFolderUploaded.entry.id);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
await contentServicesPage.goToDocumentList();
|
||||
});
|
||||
|
||||
|
@@ -16,28 +16,25 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, UploadActions, StringUtil, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, UploadActions, StringUtil, ViewerPage, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../../pages/adf/content-services.page';
|
||||
import CONSTANTS = require('../../../util/constants');
|
||||
import { FolderModel } from '../../../models/ACS/folder.model';
|
||||
import { AcsUserModel } from '../../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { NavigationBarPage } from '../../../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
|
||||
const wordFolderInfo = new FolderModel({
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.WORD_FOLDER.folder_name,
|
||||
@@ -45,29 +42,28 @@ describe('Viewer', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
});
|
||||
|
||||
describe('Word Folder Uploaded', () => {
|
||||
|
||||
let uploadedWords;
|
||||
let wordFolderUploaded;
|
||||
|
||||
@@ -76,7 +72,7 @@ describe('Viewer', () => {
|
||||
|
||||
uploadedWords = await uploadActions.uploadFolder(wordFolderInfo.location, wordFolderUploaded.entry.id);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
await contentServicesPage.goToDocumentList();
|
||||
});
|
||||
|
||||
|
@@ -16,27 +16,25 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, UploadActions, StringUtil, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, UploadActions, StringUtil, ViewerPage, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { ContentServicesPage } from '../../pages/adf/content-services.page';
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
import { FileModel } from '../../models/ACS/file.model';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Info Drawer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
let pngFileUploaded;
|
||||
|
||||
const pngFileInfo = new FileModel({
|
||||
@@ -45,32 +43,32 @@ describe('Info Drawer', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
pngFileUploaded = await uploadActions.uploadFile(pngFileInfo.location, pngFileInfo.name, site.entry.guid);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
await uploadActions.deleteFileOrFolder(pngFileUploaded.entry.id);
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
});
|
||||
|
||||
beforeEach(async() => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
|
||||
await navigationBarPage.goToSite(site);
|
||||
await contentServicesPage.checkAcsContainer();
|
||||
|
@@ -16,18 +16,17 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, UploadActions, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { ApiService, LoginSSOPage, UploadActions, ViewerPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../pages/adf/content-services.page';
|
||||
import { FileModel } from '../../models/ACS/file.model';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Content Services Viewer', () => {
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
const viewerPage = new ViewerPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
|
||||
let zoom;
|
||||
@@ -68,18 +67,17 @@ describe('Content Services Viewer', () => {
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.PPT.file_name,
|
||||
'firstPageText': browser.params.resources.Files.ADF_DOCUMENTS.PPT.first_page_text
|
||||
});
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
const pdfFileUploaded = await uploadActions.uploadFile(pdfFile.location, pdfFile.name, '-my-');
|
||||
Object.assign(pdfFile, pdfFileUploaded.entry);
|
||||
@@ -102,7 +100,7 @@ describe('Content Services Viewer', () => {
|
||||
const unsupportedFileUploaded = await uploadActions.uploadFile(unsupportedFile.location, unsupportedFile.name, '-my-');
|
||||
Object.assign(unsupportedFile, unsupportedFileUploaded.entry);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
|
||||
await contentServicesPage.goToDocumentList();
|
||||
});
|
||||
|
@@ -16,25 +16,24 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, UploadActions, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { ApiService, LoginSSOPage, UploadActions, ViewerPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../pages/adf/content-services.page';
|
||||
import { FileModel } from '../../models/ACS/file.model';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const viewerPage = new ViewerPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
const acsUser = new AcsUserModel();
|
||||
|
||||
const apiService = new ApiService();
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
const usersActions = new UsersActions(apiService);
|
||||
|
||||
const acsUser = new UserModel();
|
||||
let txtFileUploaded;
|
||||
|
||||
const txtFileInfo = new FileModel({
|
||||
@@ -43,14 +42,14 @@ describe('Viewer', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
txtFileUploaded = await uploadActions.uploadFile(txtFileInfo.location, txtFileInfo.name, '-my-');
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
|
@@ -16,30 +16,29 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, StringUtil, UploadActions, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { ApiService, LoginSSOPage, StringUtil, UploadActions, ViewerPage, UserModel } from '@alfresco/adf-testing';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { ContentServicesPage } from '../../pages/adf/content-services.page';
|
||||
import { MonacoExtensionPage } from '../../pages/adf/demo-shell/monaco-extension.page';
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
import { FileModel } from '../../models/ACS/file.model';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
const monacoExtensionPage = new MonacoExtensionPage();
|
||||
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
|
||||
let site;
|
||||
|
||||
let jsFileUploaded;
|
||||
const jsFileInfo = new FileModel({
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.JS.file_name,
|
||||
@@ -47,35 +46,34 @@ describe('Viewer', () => {
|
||||
});
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
jsFileUploaded = await uploadActions.uploadFile(jsFileInfo.location, jsFileInfo.name, '-my-');
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
await uploadActions.deleteFileOrFolder(jsFileUploaded.entry.id);
|
||||
});
|
||||
|
||||
describe('Viewer extension', () => {
|
||||
|
||||
it('[C297698] Should be able to add an extension for code editor viewer', async () => {
|
||||
await navigationBarPage.clickAboutButton();
|
||||
|
||||
|
@@ -16,19 +16,18 @@
|
||||
*/
|
||||
|
||||
import { browser } from 'protractor';
|
||||
import { LoginPage, UploadActions, DataTableComponentPage, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, UploadActions, DataTableComponentPage, ViewerPage, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { ContentServicesPage } from '../../pages/adf/content-services.page';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { FileModel } from '../../models/ACS/file.model';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Viewer - properties', () => {
|
||||
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
const viewerPage = new ViewerPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const dataTable = new DataTableComponentPage();
|
||||
|
||||
@@ -41,18 +40,16 @@ describe('Viewer - properties', () => {
|
||||
'name': 'fileForOverlay.png',
|
||||
'location': browser.params.resources.Files.ADF_DOCUMENTS.PNG.file_path
|
||||
});
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
let pngFileUploaded = await uploadActions.uploadFile(pngFile.location, pngFile.name, '-my-');
|
||||
Object.assign(pngFile, pngFileUploaded.entry);
|
||||
@@ -60,7 +57,7 @@ describe('Viewer - properties', () => {
|
||||
pngFileUploaded = await uploadActions.uploadFile(fileForOverlay.location, fileForOverlay.name, '-my-');
|
||||
Object.assign(fileForOverlay, pngFileUploaded.entry);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
|
||||
await contentServicesPage.goToDocumentList();
|
||||
|
||||
|
@@ -15,32 +15,31 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginPage, UploadActions, StringUtil, BrowserActions, ViewerPage } from '@alfresco/adf-testing';
|
||||
import { LoginSSOPage, UploadActions, StringUtil, BrowserActions, ViewerPage, ApiService, UserModel } from '@alfresco/adf-testing';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigation-bar.page';
|
||||
import { ContentServicesPage } from '../../pages/adf/content-services.page';
|
||||
import { ShareDialogPage } from '../../pages/adf/dialog/share-dialog.page';
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
import { FileModel } from '../../models/ACS/file.model';
|
||||
import { AcsUserModel } from '../../models/ACS/acs-user.model';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { browser } from 'protractor';
|
||||
import { UsersActions } from '../../actions/users.actions';
|
||||
|
||||
describe('Viewer', () => {
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const loginPage = new LoginPage();
|
||||
const loginPage = new LoginSSOPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
const shareDialog = new ShareDialogPage();
|
||||
|
||||
const apiService = new ApiService();
|
||||
const usersActions = new UsersActions(apiService);
|
||||
const uploadActions = new UploadActions(apiService);
|
||||
|
||||
let site;
|
||||
const acsUser = new AcsUserModel();
|
||||
const acsUser = new UserModel();
|
||||
let pngFileUploaded;
|
||||
const contentList = contentServicesPage.getDocumentList();
|
||||
const shareDialog = new ShareDialogPage();
|
||||
|
||||
const pngFileInfo = new FileModel({
|
||||
'name': browser.params.resources.Files.ADF_DOCUMENTS.PNG.file_name,
|
||||
@@ -55,38 +54,38 @@ describe('Viewer', () => {
|
||||
let pngFileShared, wordFileUploaded;
|
||||
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await apiService.getInstance().login(browser.params.testConfig.admin.email, browser.params.testConfig.admin.password);
|
||||
await usersActions.createUser(acsUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
site = await apiService.getInstance().core.sitesApi.createSite({
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.id,
|
||||
await apiService.getInstance().core.sitesApi.addSiteMember(site.entry.id, {
|
||||
id: acsUser.email,
|
||||
role: CONSTANTS.CS_USER_ROLES.MANAGER
|
||||
});
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
pngFileUploaded = await uploadActions.uploadFile(pngFileInfo.location, pngFileInfo.name, site.entry.guid);
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
|
||||
wordFileUploaded = await uploadActions.uploadFile(wordFileInfo.location, wordFileInfo.name, '-my-');
|
||||
|
||||
pngFileShared = await this.alfrescoJsApi.core.sharedlinksApi.addSharedLink({ 'nodeId': pngFileUploaded.entry.id });
|
||||
pngFileShared = await apiService.getInstance().core.sharedlinksApi.addSharedLink({ 'nodeId': pngFileUploaded.entry.id });
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await apiService.getInstance().core.sitesApi.deleteSite(site.entry.id, { permanent: true });
|
||||
await apiService.getInstance().login(acsUser.email, acsUser.password);
|
||||
await uploadActions.deleteFileOrFolder(wordFileUploaded.entry.id);
|
||||
});
|
||||
|
||||
beforeEach(async () => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.login(acsUser.email, acsUser.password);
|
||||
});
|
||||
|
||||
it('[C260105] Should be able to open an image file shared via API', async () => {
|
||||
|
Reference in New Issue
Block a user