Add e2e test in ADF main repo (#3534)

* move e2e to ADF main repo

* lint e2e test

* enable first set of tests

* enable test

* firs test js-api integrated

* try change name protractor demo shell file

* remove fdescribe

* Update .travis.yml

* exclude failing test and rewrite analytics component with JS-API

* remove fdescribe

* move first part of tests to js-api

* refactor test alfresco-js-api

* replace js-api step 3

* remove adf prefix

* remove unused code

* remove unused part 2

* add option in e2e test for single test and browser

* exclude temp failing test

* refactoring test step 1

* refactoring test step 2

* refactoring test step 3

* refactoring test step 4

* refactoring test step 5

* run against localhost and proxy options

* fix command

* improve configuration

* improve configuration

* use dev configuratio

* fix defering

* comment out not working remotely test

* fix promise login page e2e

* remove console log

* change test

* revert

* improve utils

* improve task list test
util add also numbers in generation of the email

* remove part of the multi selector

* reinsert trashcan test

* uncomment document list test

* try increase delay in search sorting

* improve document list selector

* execute different util methods

* Upload error screenshot

* make oncomplete async

* add z-finish screenshot workaround

* option save

* remove fit
This commit is contained in:
Eugenio Romano
2018-07-09 08:53:16 +01:00
committed by Eugenio Romano
parent 4ecea64e19
commit 3d86044594
182 changed files with 16047 additions and 178 deletions

View File

@@ -0,0 +1,56 @@
/*!
* @license
* Copyright 2016 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var Util = require('../../util/util');
var AcsUserModel = function (details) {
this.firstName = Util.generateRandomString();
this.lastName = Util.generateRandomString();
this.password = Util.generateRandomString();
this.email = Util.generateRandomString();
this.id = Util.generateRandomString();
this.jobTitle = "N/A";
this.getFirstName = function () {
return this.firstName;
};
this.getLastName = function () {
return this.lastName;
};
this.getPassword = function () {
return this.password;
};
this.getEmail = function () {
return this.email;
};
this.getId = function () {
return this.id;
};
this.getJobTitle = function () {
return this.jobTitle;
};
Object.assign(this, details);
};
module.exports = AcsUserModel;

View File

@@ -0,0 +1,51 @@
/*!
* @license
* Copyright 2016 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var ContentModel = function (details) {
this.mimeType = '';
this.mimeTypeName = '';
this.sizeInBytes = '';
this.encoding = '';
this.getMimeType = function () {
return this.mimeType;
};
this.getMimeTypeName = function () {
return this.mimeTypeName;
};
this.getSizeInBytes = function () {
if (this.sizeInBytes>=1024)
{
var bytes=(this.sizeInBytes/1024).toFixed(2)+' KB';
return bytes;
}
else {
return this.sizeInBytes;
}
};
this.getEncoding = function () {
return this.encoding;
};
Object.assign(this, details);
};
module.exports = ContentModel;

View File

@@ -0,0 +1,38 @@
/*!
* @license
* Copyright 2016 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var ContentPropertiesModel = function (details) {
this['cm:author'] = '';
this['cm:description'] = '';
this['cm:title'] = '';
this.getAuthor = function () {
return this['cm:author'];
};
this.getDescription = function () {
return this['cm:description'];
};
this.getTitle = function () {
return this['cm:title'];
};
Object.assign(this, details);
};
module.exports = ContentPropertiesModel;

View File

@@ -0,0 +1,36 @@
/*!
* @license
* Copyright 2016 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var Util = require('../../util/util');
var AcsUserModel = function (details) {
this.displayName = Util.generateRandomString();
this.id = Util.generateRandomString();
this.getId = function () {
return this.id;
};
this.getDisplayName = function () {
return this.displayName;
};
Object.assign(this, details);
};
module.exports = AcsUserModel;

116
e2e/models/ACS/fileModel.js Normal file
View File

@@ -0,0 +1,116 @@
/*!
* @license
* Copyright 2016 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var Util = require('../../util/util');
var resources = require('../../util/resources');
var CreatedByModel = require('./createdByModel');
var ContentModel = require('./contentModel');
var ContentPropertiesModel = require('./contentProperties');
var FileModel = function (details) {
this.id = Util.generateRandomString();
this.name = Util.generateRandomString();
this.shortName = this.name;
this.location = resources.Files.ADF_DOCUMENTS.PDF.file_location;
this.tooltip = this.name;
this.version = "";
this.firstPageText = resources.Files.ADF_DOCUMENTS.PDF.first_page_text;
this.lastPageText = resources.Files.ADF_DOCUMENTS.PDF.last_page_text;
this.secondPageText = resources.Files.ADF_DOCUMENTS.PDF.second_page_text;
this.lastPageNumber = resources.Files.ADF_DOCUMENTS.PDF.last_page_number;
this.createdAt = "";
this.createdByUser = {};
this.modifiedByUser = {};
this.content = {};
this.properties = {};
this.getName = function () {
return this.name;
};
this.setVersion = function (ver) {
this.version = "-" + ver;
};
this.getVersionName = function () {
var extension = this.name.split(".")[1];
var name = this.name.split(".")[0];
return name + this.version + "." + extension;
};
this.getShortName = function () {
return this.shortName;
};
this.getLocation = function () {
return this.location;
};
this.getTooltip = function () {
return this.tooltip;
};
this.getId = function () {
return this.id;
};
this.getFirstPageText = function () {
return this.firstPageText;
};
this.getLastPageText = function () {
return this.lastPageText;
};
this.getSecondPageText = function () {
return this.secondPageText;
};
this.getLastPageNumber = function () {
return this.lastPageNumber;
};
this.getCreatedByUser = function () {
return this.createdByUser;
};
this.getModifiedByUser = function () {
return this.modifiedByUser;
};
this.getContent = function () {
return this.content;
};
this.getProperties = function () {
return this.properties;
};
this.update = function(details) {
Object.assign(this, {
createdByUser: new CreatedByModel(details.createdByUser),
modifiedByUser: new CreatedByModel(details.modifiedByUser),
content: new ContentModel(details.content),
properties: new ContentPropertiesModel(details.properties)
})
}
Object.assign(this, details);
};
module.exports = FileModel;

View File

@@ -0,0 +1,34 @@
/*!
* @license
* Copyright 2016 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var FileModel = require('./fileModel');
var FilesModel = function () {
var files = null;
this.setFiles = function (arr) {
files = arr.map(function(item) {
return new FileModel(item.entry);
});
};
this.getFiles = function () {
return files;
};
};
module.exports = FilesModel;

View File

@@ -0,0 +1,52 @@
/*!
* @license
* Copyright 2016 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var Util = require('../../util/util');
var FolderModel = function (details) {
this.id = Util.generateRandomString();
this.name = Util.generateRandomString();
this.shortName = this.name;
this.tooltip = this.name;
this.location = "";
this.getName = function () {
return this.name;
};
this.getShortName = function () {
return this.shortName;
};
this.getTooltip = function () {
return this.tooltip;
};
this.getId = function () {
return this.id;
};
this.getLocation = function () {
return this.location;
};
Object.assign(this, details);
};
module.exports = FolderModel;