[ACA-3392] Create aca-testing-shared project to be reused in ADW (#1480)

* Move e2e framework to aca-shared/testing

* * Update e2e suites imports from @alfresco/aca-shared/testing
* Remove testing framework from 'e2e' directory

* Move e2e testing framework to `aca-testing-shared` project
This commit is contained in:
Roxana Diacenco 2020-06-04 23:40:07 +03:00 committed by GitHub
parent 33327bb505
commit 6e17405787
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
166 changed files with 2745 additions and 1128 deletions

View File

@ -342,6 +342,12 @@
}
}
}
},
"aca-testing-shared": {
"root": "projects/aca-testing-shared",
"sourceRoot": "projects/aca-testing-shared/src",
"projectType": "library",
"prefix": "lib"
}
},
"defaultProject": "app",

View File

@ -23,10 +23,9 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { Utils } from '../../../utilities/utils';
import { Utils, BrowsingPage } from '@alfresco/aca-testing-shared';
import * as testData from './test-data';
import * as testUtil from '../test-util';
import { BrowsingPage } from '../../../pages/pages';
export function favoritesTests() {
const page = new BrowsingPage();

View File

@ -23,11 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { RepoClient } from '../../../utilities/repo-client/repo-client';
import { Utils } from '../../../utilities/utils';
import { AdminActions } from '../../../utilities/admin-actions';
import { LoginPage } from '../../../pages/pages';
import { FILES } from '../../../configs';
import { RepoClient, Utils, AdminActions, LoginPage, FILES } from '@alfresco/aca-testing-shared';
import * as testData from './test-data';
import { personalFilesTests } from './personal-files';
import { recentFilesTests } from './recent-files';

View File

@ -23,10 +23,9 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { Utils } from '../../../utilities/utils';
import { Utils, BrowsingPage } from '@alfresco/aca-testing-shared';
import * as testData from './test-data';
import * as testUtil from '../test-util';
import { BrowsingPage } from '../../../pages/pages';
export function personalFilesTests(parentName?: string) {
const page = new BrowsingPage();

View File

@ -23,10 +23,9 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { Utils } from '../../../utilities/utils';
import { Utils, BrowsingPage } from '@alfresco/aca-testing-shared';
import * as testData from './test-data';
import * as testUtil from '../test-util';
import { BrowsingPage } from '../../../pages/pages';
export function recentFilesTests() {
const page = new BrowsingPage();

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage, SearchResultsPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, SearchResultsPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data';
import * as testUtil from '../test-util';

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data';
import * as testUtil from '../test-util';

View File

@ -23,7 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { Utils } from '../../../utilities/utils';
import { Utils } from '@alfresco/aca-testing-shared';
export const trashActions = ['Permanently Delete', 'Restore'];

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data';
import * as testUtil from '../test-util';

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage, SearchResultsPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, SearchResultsPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data';
import * as testUtil from '../test-util';

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { RepoClient, NodeContentTree } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import { AdminActions } from '../../utilities/admin-actions';
import {
LoginPage,
BrowsingPage,
RepoClient,
NodeContentTree,
Utils,
AdminActions
} from '@alfresco/aca-testing-shared';
describe('Generic tests : ', () => {
const random = Utils.random();

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage, SearchResultsPage } from '../../../pages/pages';
import { RepoClient } from '../../../utilities/repo-client/repo-client';
import { Utils } from '../../../utilities/utils';
import { AdminActions } from '../../../utilities/admin-actions';
import {
LoginPage,
BrowsingPage,
SearchResultsPage,
RepoClient,
Utils,
AdminActions
} from '@alfresco/aca-testing-shared';
import * as testData from './test-data-libraries';
import * as testUtil from '../test-util';

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { Utils } from '../../../utilities/utils';
import { Utils } from '@alfresco/aca-testing-shared';
// ---- multiple selection ---

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data-permissions';
import * as testUtil from '../test-util';

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data-permissions';
import * as testUtil from '../test-util';

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage, SearchResultsPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, SearchResultsPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data-permissions';
import * as testUtil from '../test-util';

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage, SearchResultsPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, SearchResultsPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data-permissions';
import * as testUtil from '../test-util';

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data-permissions';
import * as testUtil from '../test-util';

View File

@ -23,11 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage } from '../../../pages/pages';
import { FILES, SITE_ROLES } from '../../../configs';
import { RepoClient } from '../../../utilities/repo-client/repo-client';
import { Utils } from '../../../utilities/utils';
import { AdminActions } from '../../../utilities/admin-actions';
import {
LoginPage,
RepoClient,
Utils,
AdminActions,
FILES,
SITE_ROLES
} from '@alfresco/aca-testing-shared';
import * as testData from './test-data-permissions';
import { librariesTests } from './my-libraries';
import { favoritesTests } from './favorites';

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { Utils } from '../../../utilities/utils';
import { Utils } from '@alfresco/aca-testing-shared';
// ----- files -----

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage, SearchResultsPage } from '../../../pages/pages';
import { Utils } from '../../../utilities/utils';
import { BrowsingPage, SearchResultsPage, Utils } from '@alfresco/aca-testing-shared';
import * as testData from './test-data-permissions';
import * as testUtil from '../test-util';

View File

@ -23,9 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../pages/pages';
import { Viewer } from '../../components/viewer/viewer';
import { Utils } from '../../utilities/utils';
import { BrowsingPage, Viewer, Utils } from '@alfresco/aca-testing-shared';
const page = new BrowsingPage();
const { dataTable, toolbar } = page;

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../../pages/pages';
import { ContentNodeSelectorDialog } from '../../../components/dialog/content-node-selector-dialog';
import { RepoClient } from '../../../utilities/repo-client/repo-client';
import { Utils } from '../../../utilities/utils';
import {
LoginPage,
BrowsingPage,
ContentNodeSelectorDialog,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Copy content', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,11 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../../pages/pages';
import { ContentNodeSelectorDialog } from '../../../components/dialog/content-node-selector-dialog';
import { RepoClient } from '../../../utilities/repo-client/repo-client';
import { Utils } from '../../../utilities/utils';
import { AdminActions } from '../../../utilities/admin-actions';
import {
LoginPage,
BrowsingPage,
ContentNodeSelectorDialog,
RepoClient,
Utils,
AdminActions
} from '@alfresco/aca-testing-shared';
describe('Destination picker dialog : ', () => {
const random = Utils.random();

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../../pages/pages';
import { ContentNodeSelectorDialog } from '../../../components/dialog/content-node-selector-dialog';
import { RepoClient } from '../../../utilities/repo-client/repo-client';
import { Utils } from '../../../utilities/utils';
import {
LoginPage,
BrowsingPage,
ContentNodeSelectorDialog,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Move content', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,12 +23,17 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { SelectTemplateDialog } from '../../components/dialog/select-template-dialog';
import { CreateFromTemplateDialog } from '../../components/dialog/create-from-template-dialog';
import { Utils, clearTextWithBackspace } from '../../utilities/utils';
import { AdminActions } from '../../utilities/admin-actions';
import { RepoClient, NodeContentTree } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
BrowsingPage,
SelectTemplateDialog,
CreateFromTemplateDialog,
Utils,
clearTextWithBackspace,
AdminActions,
RepoClient,
NodeContentTree
} from '@alfresco/aca-testing-shared';
describe('Create file from template', () => {
const random = Utils.random();

View File

@ -23,12 +23,17 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { SelectTemplateDialog } from '../../components/dialog/select-template-dialog';
import { CreateFromTemplateDialog } from '../../components/dialog/create-from-template-dialog';
import { Utils, clearTextWithBackspace } from '../../utilities/utils';
import { AdminActions } from '../../utilities/admin-actions';
import { RepoClient, NodeContentTree } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
BrowsingPage,
SelectTemplateDialog,
CreateFromTemplateDialog,
Utils,
clearTextWithBackspace,
AdminActions,
RepoClient,
NodeContentTree
} from '@alfresco/aca-testing-shared';
describe('Create folder from template', () => {
const random = Utils.random();

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { CreateOrEditFolderDialog } from '../../components/dialog/create-edit-folder-dialog';
import { Utils, clearTextWithBackspace } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
BrowsingPage,
CreateOrEditFolderDialog,
Utils,
clearTextWithBackspace,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Create folder', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,11 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { SITE_VISIBILITY } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { CreateLibraryDialog } from '../../components/dialog/create-library-dialog';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
SITE_VISIBILITY,
LoginPage,
BrowsingPage,
CreateLibraryDialog,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Create library', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,9 +23,12 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Delete and undo delete', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,9 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage, SearchResultsPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
SearchResultsPage,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Download', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,11 +23,16 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { CreateOrEditFolderDialog } from '../../components/dialog/create-edit-folder-dialog';
import { Utils, clearTextWithBackspace } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
SITE_VISIBILITY,
SITE_ROLES,
RepoClient,
CreateOrEditFolderDialog,
Utils,
clearTextWithBackspace
} from '@alfresco/aca-testing-shared';
describe('Edit folder', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { FILES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
FILES,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Edit offline', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,11 +23,15 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { ConfirmDialog } from './../../components/components';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
SITE_VISIBILITY,
SITE_ROLES,
LoginPage,
BrowsingPage,
Utils,
ConfirmDialog,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Library actions', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { SITE_VISIBILITY } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
SITE_VISIBILITY,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Mark items as favorites', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { SITE_ROLES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
SITE_ROLES,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('New menu', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { ConfirmDialog } from './../../components/components';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
ConfirmDialog,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Permanently delete from Trash', () => {
const username = `user-${Utils.random()}`;

View File

@ -24,10 +24,13 @@
*/
import { browser } from 'protractor';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { APP_ROUTES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
APP_ROUTES,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Restore from Trash', () => {
const username = `user-${Utils.random()}`;

View File

@ -24,12 +24,15 @@
*/
import { browser } from 'protractor';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { SITE_VISIBILITY } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { ShareDialog } from '../../components/dialog/share-dialog';
import { Viewer } from '../../components/viewer/viewer';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
SITE_VISIBILITY,
RepoClient,
ShareDialog,
Viewer,
Utils
} from '@alfresco/aca-testing-shared';
describe('Share a file', () => {
const username = `user-${Utils.random()}`;

View File

@ -24,13 +24,17 @@
*/
import { browser } from 'protractor';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { ShareDialog } from '../../components/dialog/share-dialog';
import { ConfirmDialog } from '../../components/dialog/confirm-dialog';
import { Viewer } from '../../components/viewer/viewer';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
SITE_VISIBILITY,
SITE_ROLES,
RepoClient,
ShareDialog,
ConfirmDialog,
Viewer,
Utils
} from '@alfresco/aca-testing-shared';
describe('Unshare a file from Search Results', () => {
const username = `user-${Utils.random()}`;

View File

@ -24,13 +24,17 @@
*/
import { browser } from 'protractor';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { ShareDialog } from '../../components/dialog/share-dialog';
import { ConfirmDialog } from '../../components/dialog/confirm-dialog';
import { Viewer } from '../../components/viewer/viewer';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
SITE_VISIBILITY,
SITE_ROLES,
RepoClient,
ShareDialog,
ConfirmDialog,
Viewer,
Utils
} from '@alfresco/aca-testing-shared';
describe('Unshare a file', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,14 +23,18 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Upload files', () => {
const username = `user-${Utils.random()}`;
const folder1 = `folder1-${Utils.random()}`; let folder1Id;
const folder1 = `folder1-${Utils.random()}`;
let folder1Id;
const apis = {
admin: new RepoClient(),

View File

@ -23,11 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { FILES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import { UploadNewVersionDialog } from '../../components/dialog/upload-new-version-dialog';
import {
LoginPage,
BrowsingPage,
FILES,
RepoClient,
Utils,
UploadNewVersionDialog
} from '@alfresco/aca-testing-shared';
describe('Upload new version', () => {
const username = `user-${Utils.random()}`;

View File

@ -25,10 +25,13 @@
import { browser } from 'protractor';
import { Logger } from '@alfresco/adf-testing';
import { BrowsingPage, LoginPage } from '../../pages/pages';
import { CreateOrEditFolderDialog } from '../../components/dialog/create-edit-folder-dialog';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
BrowsingPage,
LoginPage,
CreateOrEditFolderDialog,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('General', () => {
const loginPage = new LoginPage();

View File

@ -24,10 +24,13 @@
*/
import { browser } from 'protractor';
import { PAGE_TITLES } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
PAGE_TITLES,
LoginPage,
BrowsingPage,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Page titles', () => {
const loginPage = new LoginPage();

View File

@ -24,12 +24,14 @@
*/
import { browser } from 'protractor';
import { APP_ROUTES } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { navigate } from '../../utilities/browser-utils';
import {
APP_ROUTES,
LoginPage,
BrowsingPage,
Utils,
RepoClient,
navigate
} from '@alfresco/aca-testing-shared';
describe('Login', () => {
const peopleApi = new RepoClient().people;

View File

@ -24,10 +24,13 @@
*/
import { browser } from 'protractor';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { APP_ROUTES } from '../../configs';
import {
LoginPage,
BrowsingPage,
Utils,
RepoClient,
APP_ROUTES
} from '@alfresco/aca-testing-shared';
describe('Logout', () => {
const page = new BrowsingPage();

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { EXTENSIBILITY_CONFIGS } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
EXTENSIBILITY_CONFIGS,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Extensions - Context submenu', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage, LoginPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { EXTENSIBILITY_CONFIGS } from '../../configs';
import { Utils } from '../../utilities/utils';
import {
BrowsingPage,
LoginPage,
RepoClient,
EXTENSIBILITY_CONFIGS,
Utils
} from '@alfresco/aca-testing-shared';
describe('Extensions - DocumentList presets', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,12 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { EXTENSIBILITY_CONFIGS } from '../../configs';
import { Utils } from '../../utilities/utils';
import { Header } from '../../components/components';
import { Menu } from './../../components/menu/menu';
import {
LoginPage,
RepoClient,
EXTENSIBILITY_CONFIGS,
Utils,
Header,
Menu
} from '@alfresco/aca-testing-shared';
describe('Extensions - Info Drawer', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,11 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { InfoDrawer } from './../../components/info-drawer/info-drawer';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { EXTENSIBILITY_CONFIGS } from '../../configs';
import { Utils } from '../../utilities/utils';
import {
LoginPage, BrowsingPage,
InfoDrawer,
RepoClient,
EXTENSIBILITY_CONFIGS,
Utils
} from '@alfresco/aca-testing-shared';
describe('Extensions - Info Drawer', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,12 +23,15 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage, LoginPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { EXTENSIBILITY_CONFIGS } from '../../configs';
import { Utils } from '../../utilities/utils';
import { InfoDrawer } from '../../components/info-drawer/info-drawer';
import { MetadataCard } from '../../components/metadata-card/metadata-card';
import {
BrowsingPage,
LoginPage,
RepoClient,
EXTENSIBILITY_CONFIGS,
Utils,
InfoDrawer,
MetadataCard
} from '@alfresco/aca-testing-shared';
describe('Extensions - Metadata presets', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,11 +23,15 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Viewer } from './../../components/components';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { EXTENSIBILITY_CONFIGS, FILES } from '../../configs';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
Viewer,
RepoClient,
EXTENSIBILITY_CONFIGS,
FILES,
Utils
} from '@alfresco/aca-testing-shared';
describe('Extensions - Viewer', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { InfoDrawer } from './../../components/info-drawer/info-drawer';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
RepoClient,
InfoDrawer,
Utils
} from '@alfresco/aca-testing-shared';
import * as moment from 'moment';
describe('Comments', () => {

View File

@ -23,11 +23,17 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { InfoDrawer } from './../../components/info-drawer/info-drawer';
import { Utils } from '../../utilities/utils';
import { FILES, DATE_TIME_FORMAT, DATE_FORMAT } from '../../configs';
import {
LoginPage,
BrowsingPage,
RepoClient,
InfoDrawer,
Utils,
FILES,
DATE_TIME_FORMAT,
DATE_FORMAT
} from '@alfresco/aca-testing-shared';
import * as moment from 'moment';
describe('File / Folder properties', () => {

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { InfoDrawer } from './../../components/info-drawer/info-drawer';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
RepoClient,
InfoDrawer,
Utils
} from '@alfresco/aca-testing-shared';
describe('General', () => {
const username = `user1-${Utils.random()}`;

View File

@ -23,11 +23,15 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { InfoDrawer } from './../../components/info-drawer/info-drawer';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
SITE_VISIBILITY,
SITE_ROLES,
RepoClient,
InfoDrawer,
Utils
} from '@alfresco/aca-testing-shared';
describe('Library properties', () => {
const username = `user1-${Utils.random()}`;

View File

@ -23,9 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage, SearchResultsPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
BrowsingPage,
SearchResultsPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Empty list views', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
SITE_VISIBILITY,
SITE_ROLES,
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Favorites', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
SITE_VISIBILITY,
SITE_ROLES,
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('File Libraries', () => {
const username = `user-${Utils.random()}`;

View File

@ -24,9 +24,13 @@
*/
import { browser } from 'protractor';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Generic errors', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
SITE_VISIBILITY,
SITE_ROLES,
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Special permissions', () => {
const username = `user-${Utils.random()}`;

View File

@ -25,10 +25,13 @@
import { browser } from 'protractor';
import { APP_ROUTES } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
APP_ROUTES,
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Personal Files', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { SITE_VISIBILITY } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
SITE_VISIBILITY,
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Recent Files', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
SITE_VISIBILITY,
SITE_ROLES,
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Shared Files', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,9 +23,12 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('File / folder tooltips', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
SITE_VISIBILITY,
SITE_ROLES,
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Trash', () => {
const username = `user-${Utils.random()}`;

View File

@ -25,10 +25,13 @@
import { browser } from 'protractor';
import { SITE_VISIBILITY } from '../../configs';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
SITE_VISIBILITY,
LoginPage,
BrowsingPage,
Utils,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Breadcrumb', () => {
const username = `user-${Utils.random()}`;

View File

@ -24,9 +24,14 @@
*/
import { browser } from 'protractor';
import { APP_ROUTES, SIDEBAR_LABELS } from '../../configs';
import { LoginPage, BrowsingPage, SearchResultsPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import {
APP_ROUTES,
SIDEBAR_LABELS,
LoginPage,
BrowsingPage,
SearchResultsPage,
Utils
} from '@alfresco/aca-testing-shared';
describe('Sidebar', () => {
const loginPage = new LoginPage();

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Viewer } from '../../components/viewer/viewer';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
BrowsingPage,
Viewer,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
describe('Single click on item name', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
export function favoritesTests() {
const page = new BrowsingPage();

View File

@ -23,10 +23,12 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { AdminActions } from '../../utilities/admin-actions';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
Utils,
AdminActions,
RepoClient
} from '@alfresco/aca-testing-shared';
import { personalFilesTests } from './personal-files';
import { recentFilesTests } from './recent-files';
import { searchResultsTests } from './search-results';

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { AdminActions } from '../../utilities/admin-actions';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
BrowsingPage,
Utils,
AdminActions,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Pagination on multiple pages', () => {
const random = Utils.random();

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { AdminActions } from '../../utilities/admin-actions';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
BrowsingPage,
Utils,
AdminActions,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Pagination on multiple pages on Trash', () => {
const random = Utils.random();

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
export function personalFilesTests(parentName: string) {
const page = new BrowsingPage();

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
export function recentFilesTests() {
const page = new BrowsingPage();

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
export function searchResultsTests() {
const page = new BrowsingPage();

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared';
export function sharedFilesTests() {
const page = new BrowsingPage();

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage, SearchResultsPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { AdminActions } from '../../utilities/admin-actions';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import {
LoginPage,
BrowsingPage,
SearchResultsPage,
Utils,
AdminActions,
RepoClient
} from '@alfresco/aca-testing-shared';
describe('Pagination on single page', () => {
const random = Utils.random();

View File

@ -23,10 +23,16 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import { FILES, SITE_VISIBILITY, SITE_ROLES } from '../../configs';
import {
LoginPage,
SearchResultsPage,
RepoClient,
Utils,
FILES,
SITE_VISIBILITY,
SITE_ROLES
} from '@alfresco/aca-testing-shared';
import * as moment from 'moment';
describe('Search filters', () => {

View File

@ -23,8 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { BrowsingPage, LoginPage } from '../../pages/pages';
import { Utils } from '../../utilities/utils';
import { BrowsingPage, LoginPage, Utils } from '@alfresco/aca-testing-shared';
describe('Search input', () => {
const loginPage = new LoginPage();

View File

@ -23,9 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
SearchResultsPage,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
import * as moment from 'moment';
describe('Search results - files and folders', () => {

View File

@ -23,9 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import {
LoginPage,
SearchResultsPage,
RepoClient,
Utils
} from '@alfresco/aca-testing-shared';
import { browser } from 'protractor';
describe('Search results general', () => {

View File

@ -23,10 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import { SITE_VISIBILITY, SITE_ROLES } from './../../configs';
import {
LoginPage,
SearchResultsPage,
RepoClient,
Utils,
SITE_VISIBILITY,
SITE_ROLES
} from '@alfresco/aca-testing-shared';
describe('Search results - libraries', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,10 +23,13 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, SearchResultsPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import { FILES } from '../../configs';
import {
LoginPage,
SearchResultsPage,
RepoClient,
Utils,
FILES
} from '@alfresco/aca-testing-shared';
describe('Search sorting', () => {
const random = Utils.random();

View File

@ -23,15 +23,18 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { FILES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import { Viewer } from '../../components/viewer/viewer';
import { ContentNodeSelectorDialog } from './../../components/dialog/content-node-selector-dialog';
import { ShareDialog } from './../../components/dialog/share-dialog';
import { ManageVersionsDialog } from './../../components/dialog/manage-versions-dialog';
import { UploadNewVersionDialog } from './../../components/dialog/upload-new-version-dialog';
import {
LoginPage,
BrowsingPage,
FILES,
RepoClient,
Utils,
Viewer,
ContentNodeSelectorDialog,
ShareDialog,
ManageVersionsDialog,
UploadNewVersionDialog
} from '@alfresco/aca-testing-shared';
describe('Viewer actions', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,11 +23,14 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { FILES, SITE_VISIBILITY } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import { Viewer } from '../../components/viewer/viewer';
import {
LoginPage,
BrowsingPage,
FILES, SITE_VISIBILITY,
RepoClient,
Utils,
Viewer
} from '@alfresco/aca-testing-shared';
describe('Viewer general', () => {
const username = `user-${Utils.random()}`;

View File

@ -23,12 +23,15 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { FILES } from '../../configs';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
import { Viewer } from '../../components/viewer/viewer';
import { PasswordDialog } from './../../components/dialog/password-dialog';
import {
LoginPage,
BrowsingPage,
FILES,
RepoClient,
Utils,
Viewer,
PasswordDialog
} from '@alfresco/aca-testing-shared';
describe('Viewer - password protected file', () => {
const username = `user-${Utils.random()}`;

View File

@ -9,6 +9,9 @@
"jasmine",
"jasminewd2",
"node"
]
],
"paths": {
"@alfresco/aca-testing-shared": ["../projects/aca-testing-shared"]
}
}
}

View File

@ -1,87 +0,0 @@
/*!
* @license
* Alfresco Example Content Application
*
* Copyright (C) 2005 - 2020 Alfresco Software Limited
*
* This file is part of the Alfresco Example Content Application.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { NodeBodyCreate, NODE_TYPE_FILE, NODE_TYPE_FOLDER, NODE_TITLE, NODE_DESCRIPTION } from './node-body-create';
export interface NodeContentTree {
name?: string;
files?: string[];
folders?: (string|NodeContentTree)[];
title?: string;
description?: string;
}
export function flattenNodeContentTree(content: NodeContentTree, relativePath: string = '/'): NodeBodyCreate[] {
const { name, files, folders, title, description } = content;
const aspectNames: string[] = ['cm:versionable'];
let data: NodeBodyCreate[] = [];
let properties: any;
properties = {
[NODE_TITLE]: title,
[NODE_DESCRIPTION]: description
};
if (name) {
data = data.concat([{
nodeType: NODE_TYPE_FOLDER,
name,
relativePath,
properties
}]);
relativePath = (relativePath === '/')
? `/${name}`
: `${relativePath}/${name}`;
}
if (folders) {
const foldersData: NodeBodyCreate[] = folders
.map((folder: (string|NodeContentTree)): NodeBodyCreate[] => {
const folderData: NodeContentTree = (typeof folder === 'string')
? { name: folder }
: folder;
return flattenNodeContentTree(folderData, relativePath);
})
.reduce((nodesData: NodeBodyCreate[], folderData: NodeBodyCreate[]) => nodesData.concat(folderData), []);
data = data.concat(foldersData);
}
if (files) {
const filesData: NodeBodyCreate[] = files
.map((filename: string): NodeBodyCreate => ({
nodeType: NODE_TYPE_FILE,
name: filename,
relativePath,
aspectNames
}));
data = data.concat(filesData);
}
return data;
}

170
package-lock.json generated
View File

@ -195,7 +195,7 @@
},
"chalk": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"optional": true,
@ -301,7 +301,7 @@
"dependencies": {
"source-map": {
"version": "0.5.6",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz",
"resolved": "http://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz",
"integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=",
"dev": true
}
@ -631,7 +631,7 @@
},
"load-json-file": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
"resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
"integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=",
"dev": true,
"requires": {
@ -678,7 +678,7 @@
},
"pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
"dev": true
},
@ -1335,6 +1335,12 @@
"@types/jasmine": "*"
}
},
"@types/json5": {
"version": "0.0.29",
"resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
"integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=",
"dev": true
},
"@types/mime-types": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.0.tgz",
@ -1355,7 +1361,7 @@
},
"@types/q": {
"version": "0.0.32",
"resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz",
"resolved": "http://registry.npmjs.org/@types/q/-/q-0.0.32.tgz",
"integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=",
"dev": true
},
@ -2009,7 +2015,7 @@
},
"util": {
"version": "0.10.3",
"resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
"resolved": "http://registry.npmjs.org/util/-/util-0.10.3.tgz",
"integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
"dev": true,
"requires": {
@ -2166,7 +2172,7 @@
},
"chalk": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
@ -2846,7 +2852,7 @@
},
"browserify-aes": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
"resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
"dev": true,
"requires": {
@ -2883,7 +2889,7 @@
},
"browserify-rsa": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
"resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
"integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
"dev": true,
"requires": {
@ -3026,7 +3032,7 @@
},
"cacache": {
"version": "10.0.4",
"resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz",
"resolved": "http://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz",
"integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==",
"dev": true,
"requires": {
@ -3080,7 +3086,7 @@
},
"camelcase-keys": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
"resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
"integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
"dev": true,
"requires": {
@ -3386,7 +3392,7 @@
},
"colors": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
"resolved": "http://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
"integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=",
"dev": true
},
@ -3815,7 +3821,7 @@
},
"create-hash": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
"resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
"dev": true,
"requires": {
@ -3828,7 +3834,7 @@
},
"create-hmac": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
"resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
"dev": true,
"requires": {
@ -4570,7 +4576,7 @@
"dependencies": {
"globby": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
"resolved": "http://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
"integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
"dev": true,
"requires": {
@ -4583,7 +4589,7 @@
"dependencies": {
"pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
"dev": true
}
@ -4672,7 +4678,7 @@
},
"diffie-hellman": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
"resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
"integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
"dev": true,
"requires": {
@ -4914,7 +4920,7 @@
},
"engine.io-client": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
"resolved": "http://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
"integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==",
"requires": {
"component-emitter": "1.2.1",
@ -5025,7 +5031,7 @@
},
"es6-promisify": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
"resolved": "http://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
"integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=",
"dev": true,
"requires": {
@ -5297,7 +5303,7 @@
},
"array-flatten": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
"resolved": "http://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
"integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=",
"dev": true
},
@ -6517,7 +6523,7 @@
},
"get-stream": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
"resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
"integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
"dev": true
},
@ -6610,7 +6616,7 @@
},
"got": {
"version": "6.7.1",
"resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz",
"resolved": "http://registry.npmjs.org/got/-/got-6.7.1.tgz",
"integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=",
"dev": true,
"requires": {
@ -6816,7 +6822,7 @@
},
"http-errors": {
"version": "1.6.3",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
"resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
"integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
"requires": {
"depd": "~1.1.2",
@ -6871,7 +6877,7 @@
},
"http-proxy-middleware": {
"version": "0.18.0",
"resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz",
"resolved": "http://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz",
"integrity": "sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==",
"dev": true,
"requires": {
@ -7446,7 +7452,7 @@
},
"is-accessor-descriptor": {
"version": "0.1.6",
"resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
"resolved": "http://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
"integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
"requires": {
"kind-of": "^3.0.2"
@ -7499,7 +7505,7 @@
},
"is-data-descriptor": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
"resolved": "http://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
"integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
"requires": {
"kind-of": "^3.0.2"
@ -7623,7 +7629,7 @@
},
"is-obj": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
"resolved": "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
"integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=",
"dev": true
},
@ -7850,7 +7856,7 @@
},
"fast-deep-equal": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
"resolved": "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
"integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=",
"dev": true
},
@ -8129,7 +8135,7 @@
},
"jsesc": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
"resolved": "http://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
"integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=",
"dev": true
},
@ -8256,13 +8262,13 @@
"dependencies": {
"core-js": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz",
"resolved": "http://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz",
"integrity": "sha1-+rg/uwstjchfpjbEudNMdUIMbWU=",
"dev": true
},
"es6-promise": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.0.2.tgz",
"resolved": "http://registry.npmjs.org/es6-promise/-/es6-promise-3.0.2.tgz",
"integrity": "sha1-AQ1YWEI6XxGJeWZfRkhqlcbuK7Y=",
"dev": true
},
@ -8274,7 +8280,7 @@
},
"readable-stream": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
"integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
"dev": true,
"requires": {
@ -8288,7 +8294,7 @@
},
"string_decoder": {
"version": "0.10.31",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
"resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
"integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
"dev": true
}
@ -8467,7 +8473,7 @@
},
"karma-cli": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/karma-cli/-/karma-cli-1.0.1.tgz",
"resolved": "http://registry.npmjs.org/karma-cli/-/karma-cli-1.0.1.tgz",
"integrity": "sha1-rmw8WKMTodALRRZMRVubhs4X+WA=",
"dev": true,
"requires": {
@ -8492,7 +8498,7 @@
},
"karma-jasmine-html-reporter": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz",
"resolved": "http://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz",
"integrity": "sha1-SKjl7xiAdhfuK14zwRlMNbQ5Ukw=",
"dev": true,
"requires": {
@ -8594,7 +8600,7 @@
"dependencies": {
"promise": {
"version": "7.0.4",
"resolved": "https://registry.npmjs.org/promise/-/promise-7.0.4.tgz",
"resolved": "http://registry.npmjs.org/promise/-/promise-7.0.4.tgz",
"integrity": "sha1-Nj6EpMNsg1a4kP7WLJHOhdAu1Tk=",
"dev": true,
"requires": {
@ -9038,7 +9044,7 @@
},
"supports-color": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
"resolved": "http://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
"integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
"dev": true
}
@ -9058,7 +9064,7 @@
},
"load-json-file": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
"resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
"integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
"requires": {
"graceful-fs": "^4.1.2",
@ -9070,7 +9076,7 @@
"dependencies": {
"pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw="
}
}
@ -9477,7 +9483,7 @@
},
"media-typer": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
"resolved": "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
"dev": true
},
@ -9512,7 +9518,7 @@
},
"meow": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
"resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
"integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
"dev": true,
"requires": {
@ -9746,7 +9752,7 @@
},
"mkdirp": {
"version": "0.5.1",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"requires": {
"minimist": "0.0.8"
@ -10039,7 +10045,7 @@
"dependencies": {
"semver": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
"resolved": "http://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
"integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
"dev": true
}
@ -10126,7 +10132,7 @@
},
"chalk": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
@ -10465,13 +10471,13 @@
},
"os-homedir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
"resolved": "http://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
"integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
"dev": true
},
"os-locale": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
"resolved": "http://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
"integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
"requires": {
"lcid": "^1.0.0"
@ -10479,7 +10485,7 @@
},
"os-tmpdir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
"resolved": "http://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
"dev": true
},
@ -10787,7 +10793,7 @@
},
"path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"resolved": "http://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
},
"path-is-inside": {
@ -11155,7 +11161,7 @@
},
"chalk": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"dev": true,
"requires": {
@ -11501,7 +11507,7 @@
"dependencies": {
"pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
"dev": true
}
@ -11557,7 +11563,7 @@
},
"pify": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw="
}
}
@ -11592,7 +11598,7 @@
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": {
"core-util-is": "~1.0.0",
@ -11683,7 +11689,7 @@
},
"regexpu-core": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz",
"resolved": "http://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz",
"integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=",
"dev": true,
"requires": {
@ -11713,13 +11719,13 @@
},
"regjsgen": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
"resolved": "http://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
"integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=",
"dev": true
},
"regjsparser": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz",
"resolved": "http://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz",
"integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=",
"dev": true,
"requires": {
@ -11728,7 +11734,7 @@
"dependencies": {
"jsesc": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
"resolved": "http://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
"integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
"dev": true
}
@ -12322,7 +12328,7 @@
},
"safe-regex": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
"resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
"integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
"requires": {
"ret": "~0.1.10"
@ -12370,7 +12376,7 @@
},
"sax": {
"version": "0.5.8",
"resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz",
"resolved": "http://registry.npmjs.org/sax/-/sax-0.5.8.tgz",
"integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=",
"dev": true
},
@ -12401,7 +12407,7 @@
"dependencies": {
"source-map": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"resolved": "http://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
"dev": true,
"requires": {
@ -12662,7 +12668,7 @@
},
"sha.js": {
"version": "2.4.11",
"resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
"resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
"dev": true,
"requires": {
@ -12735,7 +12741,7 @@
},
"slice-ansi": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz",
"resolved": "http://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz",
"integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=",
"dev": true
},
@ -12937,7 +12943,7 @@
},
"socket.io-parser": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
"resolved": "http://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
"integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==",
"requires": {
"component-emitter": "1.2.1",
@ -13223,7 +13229,7 @@
},
"sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
"resolved": "http://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
"dev": true
},
@ -13377,7 +13383,7 @@
},
"string-width": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"resolved": "http://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
"requires": {
"code-point-at": "^1.0.0",
@ -13387,7 +13393,7 @@
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": {
"safe-buffer": "~5.1.0"
@ -13406,7 +13412,7 @@
},
"strip-ansi": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
"requires": {
"ansi-regex": "^2.0.0"
@ -13422,7 +13428,7 @@
},
"strip-eof": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
"resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
"integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
"dev": true
},
@ -13500,7 +13506,7 @@
},
"source-map": {
"version": "0.1.43",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz",
"resolved": "http://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz",
"integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=",
"dev": true,
"requires": {
@ -13913,7 +13919,7 @@
},
"through": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
"resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz",
"integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
"dev": true
},
@ -14082,6 +14088,26 @@
"yn": "^3.0.0"
}
},
"tsconfig-paths": {
"version": "3.9.0",
"resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz",
"integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==",
"dev": true,
"requires": {
"@types/json5": "^0.0.29",
"json5": "^1.0.1",
"minimist": "^1.2.0",
"strip-bom": "^3.0.0"
},
"dependencies": {
"strip-bom": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
"integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
"dev": true
}
}
},
"tsickle": {
"version": "0.34.0",
"resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.34.0.tgz",
@ -14184,7 +14210,7 @@
},
"tty-browserify": {
"version": "0.0.0",
"resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
"resolved": "http://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
"integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=",
"dev": true
},
@ -14814,7 +14840,7 @@
},
"source-map": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"resolved": "http://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
"dev": true,
"requires": {
@ -15306,7 +15332,7 @@
},
"wrap-ansi": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
"resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
"integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
"requires": {
"string-width": "^1.0.1",

View File

@ -109,6 +109,8 @@
"rxjs-tslint-rules": "^4.30.1",
"selenium-webdriver": "4.0.0-alpha.1",
"ts-node": "^8.0.3",
"tsconfig-paths": "3.9.0",
"tsickle": ">=0.34.0",
"tslib": "^1.11.1",
"tslint": "^5.20.1",
"tslint-config-prettier": "^1.18.0",

View File

@ -0,0 +1,9 @@
{
"name": "aca-testing-shared",
"version": "1.11.1",
"main": "src/index.ts",
"peerDependencies": {
"@angular/common": "^7.2.0",
"@angular/core": "^7.2.0"
}
}

View File

@ -23,16 +23,27 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { ElementFinder, ElementArrayFinder, by, browser, protractor } from 'protractor';
import {
ElementFinder,
ElementArrayFinder,
by,
browser,
protractor
} from 'protractor';
import { Logger } from '@alfresco/adf-testing';
import { BROWSER_WAIT_TIMEOUT } from '../../configs';
import { Component } from '../component';
import { Menu } from '../menu/menu';
import { Utils, waitForPresence, waitForClickable } from '../../utilities/utils';
import {
Utils,
waitForPresence,
waitForClickable
} from '../../utilities/utils';
export class DataTable extends Component {
private static selectors = {
columnHeader: '.adf-datatable-row .adf-datatable-cell-header .adf-datatable-cell-value',
columnHeader:
'.adf-datatable-row .adf-datatable-cell-header .adf-datatable-cell-value',
sortedColumnHeader: `
.adf-datatable__header--sorted-asc .adf-datatable-cell-value,
.adf-datatable__header--sorted-desc .adf-datatable-cell-value
@ -41,13 +52,15 @@ export class DataTable extends Component {
cell: '.adf-datatable-cell-container',
lockOwner: '.aca-locked-by',
searchResultsRow: 'aca-search-results-row',
searchResultsRowLine: '.line',
searchResultsRowLine: '.line'
};
head = this.byCss('.adf-datatable-header');
body = this.byCss('.adf-datatable-body');
emptyList = this.byCss('div.adf-no-content-container');
emptyFolderDragAndDrop = this.byCss('.adf-empty-list_template .adf-empty-folder');
emptyFolderDragAndDrop = this.byCss(
'.adf-empty-list_template .adf-empty-folder'
);
emptyListTitle = this.byCss('.adf-empty-content__title');
emptyListSubtitle = this.byCss('.adf-empty-content__subtitle');
emptySearchText = this.byCss('.empty-search__text');
@ -81,7 +94,10 @@ export class DataTable extends Component {
}
getColumnHeaderByLabel(label: string): ElementFinder {
const locator = by.cssContainingText(DataTable.selectors.columnHeader, label);
const locator = by.cssContainingText(
DataTable.selectors.columnHeader,
label
);
return this.head.element(locator);
}
@ -95,7 +111,9 @@ export class DataTable extends Component {
}
async getSortingOrder(): Promise<string> {
const str = await this.getSortedColumnHeader().element(by.xpath('..')).getAttribute('class');
const str = await this.getSortedColumnHeader()
.element(by.xpath('..'))
.getAttribute('class');
if (str.includes('asc')) {
return 'asc';
}
@ -120,7 +138,7 @@ export class DataTable extends Component {
}
async getSelectedRowsNames(): Promise<string[]> {
const rowsText: string[] = await this.getSelectedRows().map((row) => {
const rowsText: string[] = await this.getSelectedRows().map(row => {
return row.element(by.css('.adf-datatable-cell[title="Name"]')).getText();
});
return rowsText;
@ -132,15 +150,26 @@ export class DataTable extends Component {
getRowByName(name: string, location: string = ''): ElementFinder {
if (location) {
return this.body.all(by.cssContainingText(DataTable.selectors.row, name))
.filter(async (elem) => browser.isElementPresent(elem.element(by.cssContainingText(DataTable.selectors.cell, location))))
return this.body
.all(by.cssContainingText(DataTable.selectors.row, name))
.filter(async elem =>
browser.isElementPresent(
elem.element(
by.cssContainingText(DataTable.selectors.cell, location)
)
)
)
.first();
}
return this.body.element(by.cssContainingText(DataTable.selectors.row, name));
return this.body.element(
by.cssContainingText(DataTable.selectors.row, name)
);
}
getRowCells(name: string, location: string = ''): ElementArrayFinder {
return this.getRowByName(name, location).all(by.css(DataTable.selectors.cell));
return this.getRowByName(name, location).all(
by.css(DataTable.selectors.cell)
);
}
async getRowCellsCount(itemName: string): Promise<number> {
@ -155,15 +184,24 @@ export class DataTable extends Component {
return this.getRowCells(name, location).get(1);
}
private getRowNameCellSpan(name: string, location: string = ''): ElementFinder {
private getRowNameCellSpan(
name: string,
location: string = ''
): ElementFinder {
return this.getRowNameCell(name, location).$('span');
}
async getItemNameTooltip(name: string, location: string = ''): Promise<string> {
async getItemNameTooltip(
name: string,
location: string = ''
): Promise<string> {
return this.getRowNameCellSpan(name, location).getAttribute('title');
}
async hasCheckMarkIcon(itemName: string, location: string = ''): Promise<boolean> {
async hasCheckMarkIcon(
itemName: string,
location: string = ''
): Promise<boolean> {
const row = this.getRowByName(itemName, location);
return row.element(by.css('.mat-icon[class*="selected"]')).isPresent();
}
@ -173,7 +211,10 @@ export class DataTable extends Component {
return row.element(by.css('img[src*="lock"]')).isPresent();
}
private async hasLockOwnerInfo(itemName: string, location: string = ''): Promise<boolean> {
private async hasLockOwnerInfo(
itemName: string,
location: string = ''
): Promise<boolean> {
const row = this.getRowByName(itemName, location);
return row.element(by.css(DataTable.selectors.lockOwner)).isPresent();
}
@ -181,7 +222,10 @@ export class DataTable extends Component {
async getLockOwner(itemName: string, location: string = ''): Promise<string> {
if (await this.hasLockOwnerInfo(itemName, location)) {
const row = this.getRowByName(itemName, location);
return row.$(DataTable.selectors.lockOwner).$('.locked_by--name').getText();
return row
.$(DataTable.selectors.lockOwner)
.$('.locked_by--name')
.getText();
}
return '';
}
@ -194,12 +238,21 @@ export class DataTable extends Component {
return this.getNameLink(itemName).isPresent();
}
async doubleClickOnRowByName(name: string, location: string = ''): Promise<void> {
async doubleClickOnRowByName(
name: string,
location: string = ''
): Promise<void> {
try {
const item = this.getRowFirstCell(name, location);
await waitForClickable(item);
await browser.actions().mouseMove(item).perform();
await browser.actions().doubleClick().perform();
await browser
.actions()
.mouseMove(item)
.perform();
await browser
.actions()
.doubleClick()
.perform();
} catch (error) {
Logger.error('--- catch: doubleClickOnRowByName', error);
}
@ -211,7 +264,6 @@ export class DataTable extends Component {
try {
const item = this.getRowFirstCell(name, location);
await item.click();
} catch (e) {
Logger.error('--- select item catch : ', e);
}
@ -224,7 +276,6 @@ export class DataTable extends Component {
try {
const item = this.getRowFirstCell(name, location);
await item.click();
} catch (e) {
Logger.error('--- unselect item catch : ', e);
}
@ -240,7 +291,10 @@ export class DataTable extends Component {
await this.getNameLink(itemName).click();
}
async selectMultipleItems(names: string[], location: string = ''): Promise<void> {
async selectMultipleItems(
names: string[],
location: string = ''
): Promise<void> {
await this.clearSelection();
await Utils.pressCmd();
for (const name of names) {
@ -263,14 +317,26 @@ export class DataTable extends Component {
async rightClickOnItem(itemName: string): Promise<void> {
const item = this.getRowFirstCell(itemName);
await browser.actions().mouseMove(item).perform();
await browser.actions().click(protractor.Button.RIGHT).perform();
await browser
.actions()
.mouseMove(item)
.perform();
await browser
.actions()
.click(protractor.Button.RIGHT)
.perform();
}
async rightClickOnMultipleSelection(): Promise<void> {
const itemFromSelection = this.getSelectedRows().get(0);
await browser.actions().mouseMove(itemFromSelection).perform();
await browser.actions().click(protractor.Button.RIGHT).perform();
await browser
.actions()
.mouseMove(itemFromSelection)
.perform();
await browser
.actions()
.click(protractor.Button.RIGHT)
.perform();
}
private getItemLocationEl(name: string): ElementFinder {
@ -283,9 +349,13 @@ export class DataTable extends Component {
async getItemLocationTooltip(name: string): Promise<string> {
const location = this.getItemLocationEl(name).$('a');
const condition = () => location.getAttribute('title').then(value => value && value.length > 0);
const condition = () =>
location.getAttribute('title').then(value => value && value.length > 0);
await browser.actions().mouseMove(location).perform();
await browser
.actions()
.mouseMove(location)
.perform();
await browser.wait(condition, BROWSER_WAIT_TIMEOUT);
return location.getAttribute('title');
@ -332,7 +402,9 @@ export class DataTable extends Component {
}
async getCellsContainingName(name: string): Promise<string[]> {
const rows = this.getRows().all(by.cssContainingText(DataTable.selectors.cell, name));
const rows = this.getRows().all(
by.cssContainingText(DataTable.selectors.cell, name)
);
const cellsText: string[] = await rows.map(async cell => {
return cell.getText();
});
@ -345,15 +417,17 @@ export class DataTable extends Component {
}
async getLibraryRole(name: string): Promise<string> {
return this.getRowByName(name).element(by.css('adf-library-role-column')).getText();
return this.getRowByName(name)
.element(by.css('adf-library-role-column'))
.getText();
}
async isItemPresent(name: string, location? : string): Promise<boolean> {
async isItemPresent(name: string, location?: string): Promise<boolean> {
return this.getRowByName(name, location).isPresent();
}
private async getEntireDataTableText(): Promise<string[]> {
const text: string[] = await this.getRows().map((row) => {
const text: string[] = await this.getRows().map(row => {
return row.all(by.css(DataTable.selectors.cell)).map(async cell => {
return cell.getText();
});
@ -385,53 +459,100 @@ export class DataTable extends Component {
return this.getSearchResultsRows().get(nth - 1);
}
private getSearchResultsRowByName(name: string, location: string = ''): ElementFinder {
private getSearchResultsRowByName(
name: string,
location: string = ''
): ElementFinder {
if (location) {
return this.body.all(by.cssContainingText(DataTable.selectors.searchResultsRow, name))
.filter(async (elem) => browser.isElementPresent(elem.element(by.cssContainingText(DataTable.selectors.searchResultsRowLine, location))))
return this.body
.all(by.cssContainingText(DataTable.selectors.searchResultsRow, name))
.filter(async elem =>
browser.isElementPresent(
elem.element(
by.cssContainingText(
DataTable.selectors.searchResultsRowLine,
location
)
)
)
)
.first();
}
return this.body.element(by.cssContainingText(DataTable.selectors.searchResultsRow, name));
return this.body.element(
by.cssContainingText(DataTable.selectors.searchResultsRow, name)
);
}
private getSearchResultRowLines(name: string, location: string = ''): ElementArrayFinder {
return this.getSearchResultsRowByName(name, location).all(by.css(DataTable.selectors.searchResultsRowLine));
private getSearchResultRowLines(
name: string,
location: string = ''
): ElementArrayFinder {
return this.getSearchResultsRowByName(name, location).all(
by.css(DataTable.selectors.searchResultsRowLine)
);
}
async getSearchResultLinesCount(name: string, location: string = ''): Promise<number> {
async getSearchResultLinesCount(
name: string,
location: string = ''
): Promise<number> {
return this.getSearchResultRowLines(name, location).count();
}
private getSearchResultNthLine(name: string, location: string = '', index: number): ElementFinder {
private getSearchResultNthLine(
name: string,
location: string = '',
index: number
): ElementFinder {
return this.getSearchResultRowLines(name, location).get(index);
}
async getSearchResultNameAndTitle(name: string, location: string = ''): Promise<string> {
async getSearchResultNameAndTitle(
name: string,
location: string = ''
): Promise<string> {
return this.getSearchResultNthLine(name, location, 0).getText();
}
async getSearchResultDescription(name: string, location: string = ''): Promise<string> {
async getSearchResultDescription(
name: string,
location: string = ''
): Promise<string> {
return this.getSearchResultNthLine(name, location, 1).getText();
}
async getSearchResultModified(name: string, location: string = ''): Promise<string> {
async getSearchResultModified(
name: string,
location: string = ''
): Promise<string> {
return this.getSearchResultNthLine(name, location, 2).getText();
}
async getSearchResultLocation(name: string, location: string = ''): Promise<string> {
async getSearchResultLocation(
name: string,
location: string = ''
): Promise<string> {
return this.getSearchResultNthLine(name, location, 3).getText();
}
private getSearchResultNameLink(itemName: string, location: string = ''): ElementFinder {
private getSearchResultNameLink(
itemName: string,
location: string = ''
): ElementFinder {
return this.getSearchResultsRowByName(itemName, location).$('.link');
}
async hasLinkOnSearchResultName(itemName: string, location: string = ''): Promise<boolean> {
async hasLinkOnSearchResultName(
itemName: string,
location: string = ''
): Promise<boolean> {
return this.getSearchResultNameLink(itemName, location).isPresent();
}
async clickSearchResultNameLink(itemName: string, location: string = ''): Promise<void> {
async clickSearchResultNameLink(
itemName: string,
location: string = ''
): Promise<void> {
await this.getSearchResultNameLink(itemName, location).click();
}
}

View File

@ -55,8 +55,11 @@ export class DateTimePicker extends Component {
const dayOfTomorrow = tomorrow.date();
const date = await this.headerDate.getText();
const year = await this.headerYear.getText();
const firstActiveDay = '.mat-datetimepicker-calendar-body-active .mat-datetimepicker-calendar-body-cell-content';
const elem = this.dayPicker.element(by.cssContainingText(firstActiveDay, `${dayOfTomorrow}`));
const firstActiveDay =
'.mat-datetimepicker-calendar-body-active .mat-datetimepicker-calendar-body-cell-content';
const elem = this.dayPicker.element(
by.cssContainingText(firstActiveDay, `${dayOfTomorrow}`)
);
await elem.click();
return `${date} ${year}`;
}

Some files were not shown because too many files have changed in this diff Show More