mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-3331] Create automated tests for Viewer component - Content Services (#3600)
* Automation tests for Viewer Component - Content Services * Create remaining automation tests for Viewer Component - Content Services * Deleting alfresco-ng2-components.iml * Correcting Viewer Page for failing tests * Updating Viewer Page for failing tests * Improving the PR quality
This commit is contained in:
committed by
Eugenio Romano
parent
69d8ff147e
commit
ab9f1c8385
@@ -15,20 +15,21 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
var Util = require('../../util/util');
|
||||
var Util = require("../../util/util");
|
||||
var CardViewPage = require("./cardViewPage");
|
||||
|
||||
var ViewerToolbarPage = function () {
|
||||
|
||||
var closeButton = element(by.css("button[data-automation-id='adf-toolbar-back']"));
|
||||
var fileName = element(by.id('adf-viewer-display-name'));
|
||||
var fileName = element(by.id("adf-viewer-display-name"));
|
||||
var downloadButton = element(by.css("button[data-automation-id='adf-toolbar-download'] > span > mat-icon"));
|
||||
var infoButton = element(by.css("button[data-automation-id='adf-toolbar-sidebar']"));
|
||||
var previousPageButton = element(by.id('viewer-previous-page-button'));
|
||||
var nextPageButton = element(by.id('viewer-next-page-button'));
|
||||
var zoomInButton = element(by.id('viewer-zoom-in-button'));
|
||||
var zoomOutButton = element(by.id('viewer-zoom-out-button'));
|
||||
var scalePageButton = element(by.id('viewer-scale-page-button'));
|
||||
var pdfContainer = element(by.id('viewer-pdf-container'));
|
||||
var previousPageButton = element(by.id("viewer-previous-page-button"));
|
||||
var nextPageButton = element(by.id("viewer-next-page-button"));
|
||||
var zoomInButton = element(by.id("viewer-zoom-in-button"));
|
||||
var zoomOutButton = element(by.id("viewer-zoom-out-button"));
|
||||
var scalePageButton = element(by.id("viewer-scale-page-button"));
|
||||
var pdfContainer = element(by.id("viewer-pdf-container"));
|
||||
var fullScreenButton = element(by.css("button[data-automation-id='adf-toolbar-fullscreen']"));
|
||||
var rotateLeft = element(by.css("button[id='viewer-rotate-left-button']"));
|
||||
var rotateRight = element(by.css("button[id='viewer-rotate-right-button']"));
|
||||
@@ -40,6 +41,37 @@ var ViewerToolbarPage = function () {
|
||||
var mediaContainer = element(by.css("adf-media-player[class='adf-media-player ng-star-inserted']"));
|
||||
var allPages = element.all(by.css("div[class='canvasWrapper'] > canvas")).first();
|
||||
var percentage = element(by.css("div[data-automation-id='adf-page-scale'"));
|
||||
var thumbnailsBtn = element(by.css("button[data-automation-id='adf-thumbnails-button']"));
|
||||
var thumbnailsContent = element(by.css("div[data-automation-id='adf-thumbnails-content']"));
|
||||
var thumbnailsClose = element(by.css("button[data-automation-id='adf-thumbnails-close']"));
|
||||
var secondThumbnail = element(by.css("adf-pdf-thumb > img[title='Page 2'"));
|
||||
var lastThumbnailDisplayed = element.all(by.css("adf-pdf-thumb")).last();
|
||||
var passwordDialog = element(by.css("adf-pdf-viewer-password-dialog"));
|
||||
var passwordSubmit = element(by.css("button[data-automation-id='adf-password-dialog-submit']"));
|
||||
var passwordSubmitDisabled = element(by.css("button[data-automation-id='adf-password-dialog-submit'][disabled]"));
|
||||
var passwordInput = element(by.css("input[data-automation-id='adf-password-dialog-input']"));
|
||||
var passwordError = element(by.css("mat-error[data-automation-id='adf-password-dialog-error']"));
|
||||
var infoSideBar = element(by.css("div[class='adf-info-drawer-layout-header']"));
|
||||
var unsupportedFileContainer = element(by.cssContainingText(".label","Document preview could not be loaded"));
|
||||
var pageCanvas = element.all(by.css("div[class='canvasWrapper']")).first();
|
||||
|
||||
this.canvasHeight = function () {
|
||||
var deferred = protractor.promise.defer();
|
||||
pageCanvas.getAttribute("style").then(function (value) {
|
||||
var canvasHeight = value.split("height: ")[1].split("px")[0];
|
||||
deferred.fulfill(canvasHeight);
|
||||
});
|
||||
return deferred.promise;
|
||||
};
|
||||
|
||||
this.canvasWidth = function () {
|
||||
var deferred = protractor.promise.defer();
|
||||
pageCanvas.getAttribute("style").then(function (value) {
|
||||
var canvasWidth = value.split("width: ")[1].split("px")[0];
|
||||
deferred.fulfill(canvasWidth);
|
||||
});
|
||||
return deferred.promise;
|
||||
};
|
||||
|
||||
this.viewFile = function (fileName) {
|
||||
var fileView = element(by.xpath("//div[@class='document-list-container']//span[@title='" + fileName +"']"));
|
||||
@@ -65,6 +97,63 @@ var ViewerToolbarPage = function () {
|
||||
browser.executeScript(jsCode);
|
||||
};
|
||||
|
||||
this.enterPassword = function (password)
|
||||
{
|
||||
Util.waitUntilElementIsVisible(passwordInput);
|
||||
passwordInput.clear();
|
||||
passwordInput.sendKeys(password);
|
||||
};
|
||||
|
||||
this.checkPasswordErrorIsDisplayed = function ()
|
||||
{
|
||||
Util.waitUntilElementIsVisible(passwordError);
|
||||
};
|
||||
|
||||
this.checkPasswordInputIsDisplayed = function ()
|
||||
{
|
||||
Util.waitUntilElementIsVisible(passwordInput);
|
||||
};
|
||||
|
||||
this.checkPasswordSubmitDisabledIsDisplayed = function ()
|
||||
{
|
||||
Util.waitUntilElementIsVisible(passwordSubmitDisabled);
|
||||
};
|
||||
|
||||
this.checkPasswordDialogIsDisplayed = function ()
|
||||
{
|
||||
Util.waitUntilElementIsVisible(passwordDialog);
|
||||
};
|
||||
|
||||
this.checkAllThumbnailsDisplayed = function (nbPages)
|
||||
{
|
||||
var defaultThumbnailHeight = 143;
|
||||
expect(thumbnailsContent.getAttribute("style")).toEqual("height: " + nbPages*defaultThumbnailHeight + "px; transform: translate(-50%, 0px);");
|
||||
};
|
||||
|
||||
this.checkCurrentThumbnailIsSelected = function ()
|
||||
{
|
||||
var selectedThumbnail = element(by.css("adf-pdf-thumb[class='pdf-thumbnails__thumb ng-star-inserted pdf-thumbnails__thumb--selected'] > img"));
|
||||
pageSelectorInput.getAttribute("value").then(function (pageNumber) {
|
||||
expect("Page " + pageNumber).toEqual(selectedThumbnail.getAttribute("title"));
|
||||
});
|
||||
};
|
||||
|
||||
this.checkThumbnailsCloseIsDisplayed = function () {
|
||||
Util.waitUntilElementIsVisible(thumbnailsClose);
|
||||
};
|
||||
|
||||
this.checkThumbnailsBtnIsDisplayed = function () {
|
||||
Util.waitUntilElementIsVisible(thumbnailsBtn);
|
||||
};
|
||||
|
||||
this.checkThumbnailsContentIsDisplayed = function () {
|
||||
Util.waitUntilElementIsVisible(thumbnailsContent);
|
||||
};
|
||||
|
||||
this.checkThumbnailsContentIsNotDisplayed = function () {
|
||||
Util.waitUntilElementIsNotVisible(thumbnailsContent);
|
||||
};
|
||||
|
||||
this.checkCloseButtonIsDisplayed = function () {
|
||||
Util.waitUntilElementIsVisible(closeButton);
|
||||
};
|
||||
@@ -112,9 +201,9 @@ var ViewerToolbarPage = function () {
|
||||
|
||||
this.checkPageSelectorInputIsDisplayed = function (number) {
|
||||
Util.waitUntilElementIsVisible(pageSelectorInput);
|
||||
pageSelectorInput.getAttribute('value').then(function (pageNumber) {
|
||||
pageSelectorInput.getAttribute("value").then(function (pageNumber) {
|
||||
expect(pageNumber).toEqual(number);
|
||||
})
|
||||
});
|
||||
};
|
||||
|
||||
this.checkImgContainerIsDisplayed = function () {
|
||||
@@ -154,13 +243,11 @@ var ViewerToolbarPage = function () {
|
||||
this.checkZoomedIn = function (zoom)
|
||||
{
|
||||
expect(percentage.getText()).toBeGreaterThan(zoom);
|
||||
|
||||
};
|
||||
|
||||
this.checkZoomedOut = function (zoom)
|
||||
{
|
||||
expect(percentage.getText()).toBeLessThan(zoom);
|
||||
|
||||
};
|
||||
|
||||
this.checkRotateLeftButtonIsDisplayed = function () {
|
||||
@@ -182,7 +269,7 @@ var ViewerToolbarPage = function () {
|
||||
|
||||
this.checkRotation = function (text)
|
||||
{
|
||||
rotation = imgContainer.getAttribute('style');
|
||||
var rotation = imgContainer.getAttribute("style");
|
||||
expect(rotation).toEqual(text);
|
||||
};
|
||||
|
||||
@@ -191,6 +278,61 @@ var ViewerToolbarPage = function () {
|
||||
Util.waitUntilElementIsVisible(customBtn);
|
||||
};
|
||||
|
||||
this.checkUnsupportedFileContainerIsDisplayed = function ()
|
||||
{
|
||||
Util.waitUntilElementIsVisible(unsupportedFileContainer);
|
||||
};
|
||||
|
||||
this.checkInfoSideBarIsNotDisplayed = function ()
|
||||
{
|
||||
Util.waitUntilElementIsNotVisible(infoSideBar);
|
||||
};
|
||||
|
||||
this.checkInfoSideBarIsDisplayed = function ()
|
||||
{
|
||||
Util.waitUntilElementIsVisible(infoSideBar);
|
||||
};
|
||||
|
||||
this.checkInfoSideBarIsNotDisplayed = function ()
|
||||
{
|
||||
Util.waitUntilElementIsNotOnPage(infoSideBar);
|
||||
};
|
||||
|
||||
this.clickInfoButton = function ()
|
||||
{
|
||||
Util.waitUntilElementIsVisible(infoButton);
|
||||
infoButton.click();
|
||||
return new CardViewPage();
|
||||
};
|
||||
|
||||
this.clickPasswordSubmit = function ()
|
||||
{
|
||||
Util.waitUntilElementIsVisible(passwordSubmit);
|
||||
passwordSubmit.click();
|
||||
};
|
||||
|
||||
this.clickSecondThumbnail = function ()
|
||||
{
|
||||
Util.waitUntilElementIsClickable(secondThumbnail);
|
||||
secondThumbnail.click();
|
||||
};
|
||||
|
||||
this.clickLastThumbnailDisplayed = function ()
|
||||
{
|
||||
Util.waitUntilElementIsClickable(lastThumbnailDisplayed);
|
||||
lastThumbnailDisplayed.click();
|
||||
};
|
||||
|
||||
this.clickThumbnailsClose = function () {
|
||||
Util.waitUntilElementIsClickable(thumbnailsClose);
|
||||
thumbnailsClose.click();
|
||||
};
|
||||
|
||||
this.clickThumbnailsBtn = function () {
|
||||
Util.waitUntilElementIsClickable(thumbnailsBtn);
|
||||
thumbnailsBtn.click();
|
||||
};
|
||||
|
||||
this.clickScaleImgButton = function ()
|
||||
{
|
||||
Util.waitUntilElementIsClickable(scaleImg);
|
||||
|
BIN
e2e/resources/adf/allFileTypes/a_file_protected.pdf
Normal file
BIN
e2e/resources/adf/allFileTypes/a_file_protected.pdf
Normal file
Binary file not shown.
1
e2e/resources/adf/allFileTypes/file_unsupported.3DS
Executable file
1
e2e/resources/adf/allFileTypes/file_unsupported.3DS
Executable file
@@ -0,0 +1 @@
|
||||
<EFBFBD><EFBFBD>
|
@@ -62,7 +62,7 @@ exports.Files = {
|
||||
id: -19,
|
||||
taskName: "User Task",
|
||||
form_fields: {
|
||||
text_field: "activiti-textfield",
|
||||
text_field: "activiti-textfield",
|
||||
form_fieldId: "textfield",
|
||||
text_field_value: "Hi tester, from Rest call"
|
||||
}
|
||||
@@ -121,6 +121,15 @@ exports.Files = {
|
||||
file_location: "/resources/adf/allFileTypes/pdf_all_properties.pdf",
|
||||
file_name: "pdf_all_properties.pdf"
|
||||
},
|
||||
PDF_PROTECTED: {
|
||||
file_location: "/resources/adf/allFileTypes/a_file_protected.pdf",
|
||||
file_name: "a_file_protected.pdf",
|
||||
first_page_text: "A Journey into Test Frameworks",
|
||||
second_page_text: "After looking into Spock’s GitHub",
|
||||
last_page_text: "and provide feedback. The main advantages being the readability of the te",
|
||||
last_page_number: "8",
|
||||
password: "1q2w3e4r"
|
||||
},
|
||||
LARGE_FILE:{
|
||||
file_location: "/resources/adf/BigFile.zip",
|
||||
file_name: "BigFile.zip"
|
||||
@@ -202,6 +211,10 @@ exports.Files = {
|
||||
file_location: "/resources/adf/allFileTypes/file_unsupported.pages",
|
||||
file_name: "file_unsupported.pages"
|
||||
},
|
||||
UNSUPPORTED:{
|
||||
file_location: "/resources/adf/allFileTypes/file_unsupported.3DS",
|
||||
file_name: "file_unsupported.3DS"
|
||||
},
|
||||
INI:{
|
||||
file_location: "/resources/adf/allFileTypes/desktop.ini",
|
||||
file_name: "desktop.ini"
|
||||
|
@@ -37,7 +37,20 @@ describe('Content Services Viewer', () => {
|
||||
let loginPage = new LoginPage();
|
||||
let zoom;
|
||||
|
||||
let pdfFile = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.PDF.file_name });
|
||||
let pdfFile = new FileModel({
|
||||
'name': resources.Files.ADF_DOCUMENTS.PDF.file_name,
|
||||
'firstPageText': resources.Files.ADF_DOCUMENTS.PDF.first_page_text,
|
||||
'secondPageText': resources.Files.ADF_DOCUMENTS.PDF.second_page_text,
|
||||
'lastPageNumber': resources.Files.ADF_DOCUMENTS.PDF.last_page_number
|
||||
});
|
||||
let protectedFile = new FileModel({
|
||||
'name': resources.Files.ADF_DOCUMENTS.PDF_PROTECTED.file_name,
|
||||
'firstPageText': resources.Files.ADF_DOCUMENTS.PDF_PROTECTED.first_page_text,
|
||||
'secondPageText': resources.Files.ADF_DOCUMENTS.PDF_PROTECTED.second_page_text,
|
||||
'lastPageNumber': resources.Files.ADF_DOCUMENTS.PDF_PROTECTED.last_page_number,
|
||||
'password': resources.Files.ADF_DOCUMENTS.PDF_PROTECTED.password,
|
||||
'location': resources.Files.ADF_DOCUMENTS.PDF_PROTECTED.file_location
|
||||
});
|
||||
let docxFile = new FileModel({
|
||||
'location': resources.Files.ADF_DOCUMENTS.DOCX_SUPPORTED.file_location,
|
||||
'name': resources.Files.ADF_DOCUMENTS.DOCX_SUPPORTED.file_name,
|
||||
@@ -51,9 +64,9 @@ describe('Content Services Viewer', () => {
|
||||
'location': resources.Files.ADF_DOCUMENTS.MP4.file_location,
|
||||
'name': resources.Files.ADF_DOCUMENTS.MP4.file_name
|
||||
});
|
||||
let pagesFile = new FileModel({
|
||||
'location': resources.Files.ADF_DOCUMENTS.PAGES.file_location,
|
||||
'name': resources.Files.ADF_DOCUMENTS.PAGES.file_name
|
||||
let unsupportedFile = new FileModel({
|
||||
'location': resources.Files.ADF_DOCUMENTS.UNSUPPORTED.file_location,
|
||||
'name': resources.Files.ADF_DOCUMENTS.UNSUPPORTED.file_name
|
||||
});
|
||||
let pptFile = new FileModel({
|
||||
'location': resources.Files.ADF_DOCUMENTS.PPT.file_location,
|
||||
@@ -78,6 +91,9 @@ describe('Content Services Viewer', () => {
|
||||
let pdfFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pdfFile.location, pdfFile.name, '-my-');
|
||||
Object.assign(pdfFile, pdfFileUploaded.entry);
|
||||
|
||||
let protectedFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, protectedFile.location, protectedFile.name, '-my-');
|
||||
Object.assign(protectedFile, protectedFileUploaded.entry);
|
||||
|
||||
let docxFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, docxFile.location, docxFile.name, '-my-');
|
||||
Object.assign(docxFile, docxFileUploaded.entry);
|
||||
|
||||
@@ -90,8 +106,8 @@ describe('Content Services Viewer', () => {
|
||||
let pptFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pptFile.location, pptFile.name, '-my-');
|
||||
Object.assign(pptFile, pptFileUploaded.entry);
|
||||
|
||||
let pagesFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, pagesFile.location, pagesFile.name, '-my-');
|
||||
Object.assign(pagesFile, pagesFileUploaded.entry);
|
||||
let unsupportedFileUploaded = await uploadActions.uploadFile(this.alfrescoJsApi, unsupportedFile.location, unsupportedFile.name, '-my-');
|
||||
Object.assign(unsupportedFile, unsupportedFileUploaded.entry);
|
||||
|
||||
loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
@@ -104,19 +120,15 @@ describe('Content Services Viewer', () => {
|
||||
NodesAPI.deleteContent(acsUser, pdfFile.getId(), () => {
|
||||
done();
|
||||
});
|
||||
|
||||
NodesAPI.deleteContent(acsUser, jpgFile.getId(), () => {
|
||||
done();
|
||||
});
|
||||
|
||||
NodesAPI.deleteContent(acsUser, mp4File.getId(), () => {
|
||||
done();
|
||||
});
|
||||
|
||||
NodesAPI.deleteContent(acsUser, pagesFile.getId(), () => {
|
||||
done();
|
||||
});
|
||||
|
||||
NodesAPI.deleteContent(acsUser, pptFile.getId(), () => {
|
||||
done();
|
||||
});
|
||||
@@ -155,14 +167,16 @@ describe('Content Services Viewer', () => {
|
||||
viewerPage.clearPageNumber();
|
||||
viewerPage.checkPageSelectorInputIsDisplayed('');
|
||||
|
||||
zoom = viewerPage.getZoom();
|
||||
viewerPage.clickZoomInButton();
|
||||
viewerPage.checkZoomedIn(zoom);
|
||||
viewerPage.clickZoomOutButton();
|
||||
|
||||
zoom = viewerPage.getZoom();
|
||||
viewerPage.clickZoomOutButton();
|
||||
viewerPage.checkZoomedOut(zoom);
|
||||
|
||||
zoom = viewerPage.getZoom();
|
||||
viewerPage.clickZoomInButton();
|
||||
viewerPage.checkZoomedIn(zoom);
|
||||
|
||||
viewerPage.clickCloseButton();
|
||||
});
|
||||
|
||||
@@ -238,8 +252,6 @@ describe('Content Services Viewer', () => {
|
||||
});
|
||||
|
||||
it('[C260053] Should display first page, toolbar and pagination when opening a .docx file', () => {
|
||||
contentServicesPage.checkAcsContainer();
|
||||
|
||||
viewerPage.viewFile(docxFile.name);
|
||||
|
||||
viewerPage.checkFileContent('1', docxFile.firstPageText);
|
||||
@@ -258,10 +270,10 @@ describe('Content Services Viewer', () => {
|
||||
});
|
||||
|
||||
it('[C260054] Should display "Preview couldn\'t be loaded" and viewer toolbar when opening an unsupported file', () => {
|
||||
viewerPage.viewFile(pagesFile.name);
|
||||
viewerPage.viewFile(unsupportedFile.name);
|
||||
|
||||
viewerPage.checkCloseButtonIsDisplayed();
|
||||
viewerPage.checkFileNameIsDisplayed(pagesFile.name);
|
||||
viewerPage.checkFileNameIsDisplayed(unsupportedFile.name);
|
||||
viewerPage.checkFileThumbnailIsDisplayed();
|
||||
viewerPage.checkDownloadButtonIsDisplayed();
|
||||
viewerPage.checkInfoButtonIsDisplayed();
|
||||
@@ -286,4 +298,68 @@ describe('Content Services Viewer', () => {
|
||||
|
||||
viewerPage.clickCloseButton();
|
||||
});
|
||||
|
||||
it('[C261123] Should be able to preview all pages and navigate to a page when using thumbnails', () => {
|
||||
viewerPage.viewFile(pdfFile.name);
|
||||
|
||||
viewerPage.checkFileContent('1', pdfFile.firstPageText);
|
||||
viewerPage.checkThumbnailsBtnIsDisplayed();
|
||||
viewerPage.clickThumbnailsBtn();
|
||||
|
||||
viewerPage.checkThumbnailsContentIsDisplayed();
|
||||
viewerPage.checkThumbnailsCloseIsDisplayed();
|
||||
viewerPage.checkAllThumbnailsDisplayed(pdfFile.lastPageNumber);
|
||||
|
||||
viewerPage.clickSecondThumbnail();
|
||||
viewerPage.checkFileContent('2', pdfFile.secondPageText);
|
||||
viewerPage.checkCurrentThumbnailIsSelected();
|
||||
|
||||
viewerPage.checkPreviousPageButtonIsDisplayed();
|
||||
viewerPage.clickPreviousPageButton();
|
||||
viewerPage.checkFileContent('1', pdfFile.firstPageText);
|
||||
viewerPage.checkCurrentThumbnailIsSelected();
|
||||
|
||||
viewerPage.clickThumbnailsBtn();
|
||||
viewerPage.checkThumbnailsContentIsNotDisplayed();
|
||||
viewerPage.clickThumbnailsBtn();
|
||||
viewerPage.checkThumbnailsCloseIsDisplayed();
|
||||
viewerPage.clickThumbnailsClose();
|
||||
});
|
||||
|
||||
it('[C268105] Should display current thumbnail when getting to the page following the last visible thumbnail', () => {
|
||||
viewerPage.checkThumbnailsBtnIsDisplayed();
|
||||
viewerPage.clickThumbnailsBtn();
|
||||
viewerPage.clickLastThumbnailDisplayed();
|
||||
viewerPage.checkCurrentThumbnailIsSelected();
|
||||
|
||||
viewerPage.checkNextPageButtonIsDisplayed();
|
||||
viewerPage.clickNextPageButton();
|
||||
viewerPage.checkCurrentThumbnailIsSelected();
|
||||
|
||||
viewerPage.clickCloseButton();
|
||||
});
|
||||
|
||||
it('[C269109] Should not be able to open thumbnail pane before the pdf is loaded', () => {
|
||||
viewerPage.viewFile(pdfFile.name);
|
||||
viewerPage.clickThumbnailsBtn();
|
||||
viewerPage.checkThumbnailsContentIsNotDisplayed();
|
||||
|
||||
viewerPage.clickCloseButton();
|
||||
});
|
||||
|
||||
it('[C268901] Should need a password when opening a protected file', () => {
|
||||
viewerPage.viewFile(protectedFile.name);
|
||||
|
||||
viewerPage.checkPasswordDialogIsDisplayed();
|
||||
viewerPage.checkPasswordSubmitDisabledIsDisplayed();
|
||||
|
||||
viewerPage.enterPassword('random password');
|
||||
viewerPage.clickPasswordSubmit();
|
||||
viewerPage.checkPasswordErrorIsDisplayed();
|
||||
viewerPage.checkPasswordInputIsDisplayed();
|
||||
|
||||
viewerPage.enterPassword(protectedFile.password);
|
||||
viewerPage.clickPasswordSubmit();
|
||||
viewerPage.checkFileContent('1', protectedFile.firstPageText);
|
||||
});
|
||||
});
|
||||
|
@@ -5,13 +5,14 @@
|
||||
<mat-dialog-content>
|
||||
<form (submit)="submit()">
|
||||
<mat-input-container class="adf-full-width">
|
||||
<input matInput
|
||||
type="password"
|
||||
placeholder="{{ 'ADF_VIEWER.PDF_DIALOG.PLACEHOLDER' | translate }}"
|
||||
[formControl]="passwordFormControl" />
|
||||
<input matInput
|
||||
data-automation-id='adf-password-dialog-input'
|
||||
type="password"
|
||||
placeholder="{{ 'ADF_VIEWER.PDF_DIALOG.PLACEHOLDER' | translate }}"
|
||||
[formControl]="passwordFormControl" />
|
||||
</mat-input-container>
|
||||
|
||||
<mat-error *ngIf="isError()">{{ 'ADF_VIEWER.PDF_DIALOG.ERROR' | translate }}</mat-error>
|
||||
<mat-error *ngIf="isError()" data-automation-id='adf-password-dialog-error'>{{ 'ADF_VIEWER.PDF_DIALOG.ERROR' | translate }}</mat-error>
|
||||
</form>
|
||||
</mat-dialog-content>
|
||||
|
||||
@@ -21,9 +22,10 @@
|
||||
<button mat-button mat-dialog-close>{{ 'ADF_VIEWER.PDF_DIALOG.CLOSE' | translate }}</button>
|
||||
|
||||
<button mat-button
|
||||
class="adf-dialog-action-button"
|
||||
[disabled]="!isValid()"
|
||||
(click)="submit()">
|
||||
data-automation-id='adf-password-dialog-submit'
|
||||
class="adf-dialog-action-button"
|
||||
[disabled]="!isValid()"
|
||||
(click)="submit()">
|
||||
{{ 'ADF_VIEWER.PDF_DIALOG.SUBMIT' | translate }}
|
||||
</button>
|
||||
</mat-dialog-actions>
|
||||
</mat-dialog-actions>
|
||||
|
@@ -1,4 +1,5 @@
|
||||
<div class="pdf-thumbnails__content"
|
||||
data-automation-id='adf-thumbnails-content'
|
||||
[style.height.px]="virtualHeight"
|
||||
[style.transform]="'translate(-50%, ' + translateY + 'px)'">
|
||||
<adf-pdf-thumb *ngFor="let page of renderItems; trackBy: trackByFn"
|
||||
|
@@ -3,8 +3,8 @@
|
||||
<div class="adf-pdf-viewer__thumbnails">
|
||||
<div class="thumbnails-template__container">
|
||||
<div class="thumbnails-template__buttons">
|
||||
<button mat-icon-button (click)="toggleThumbnails()">
|
||||
<mat-icon>close</mat-icon>
|
||||
<button mat-icon-button data-automation-id='adf-thumbnails-close' (click)="toggleThumbnails()">
|
||||
<mat-icon>close</mat-icon>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
@@ -37,8 +37,9 @@
|
||||
|
||||
<ng-container *ngIf="allowThumbnails">
|
||||
<button mat-icon-button
|
||||
[disabled]="isPanelDisabled"
|
||||
(click)="toggleThumbnails()">
|
||||
data-automation-id='adf-thumbnails-button'
|
||||
[disabled]="isPanelDisabled"
|
||||
(click)="toggleThumbnails()">
|
||||
<mat-icon>dashboard</mat-icon>
|
||||
</button>
|
||||
<adf-toolbar-divider></adf-toolbar-divider>
|
||||
@@ -65,11 +66,11 @@
|
||||
<div class="adf-pdf-viewer__toolbar-page-selector">
|
||||
<span>{{ 'ADF_VIEWER.PAGE_LABEL.SHOWING' | translate }}</span>
|
||||
<input #page
|
||||
type="text"
|
||||
type="text"
|
||||
data-automation-id="adf-page-selector"
|
||||
pattern="-?[0-9]*(\.[0-9]+)?"
|
||||
value="{{ displayPage }}"
|
||||
(keyup.enter)="inputPage(page.value)">
|
||||
pattern="-?[0-9]*(\.[0-9]+)?"
|
||||
value="{{ displayPage }}"
|
||||
(keyup.enter)="inputPage(page.value)">
|
||||
<span>{{ 'ADF_VIEWER.PAGE_LABEL.OF' | translate }} {{ totalPages }}</span>
|
||||
</div>
|
||||
|
||||
|
Reference in New Issue
Block a user