[ADF-4716][ADF-3247] Tests for checking saved date format (#4935)

* e2e tests for saving the date format fine and checking that still able to save the dynamic table with non-required DateTime field.

* remove empty line spaces.
This commit is contained in:
Geeta Mandakini Ayyalasomayajula 2019-07-16 17:20:35 +01:00 committed by Eugenio Romano
parent 677de028a2
commit 715d3b13cc
2 changed files with 26 additions and 6 deletions

View File

@ -15,7 +15,7 @@
* limitations under the License.
*/
import { LoginPage, Widget, DatePickerPage } from '@alfresco/adf-testing';
import { LoginPage, Widget, DatePickerPage, DateUtil } from '@alfresco/adf-testing';
import { ProcessFiltersPage } from '../pages/adf/process-services/processFiltersPage';
import { ProcessServiceTabBarPage } from '../pages/adf/process-services/processServiceTabBarPage';
import { NavigationBarPage } from '../pages/adf/navigationBarPage';
@ -69,10 +69,12 @@ describe('Dynamic Table', () => {
const randomText = {
date: '12/12/2012',
wrongDate: 'HELLO WORLD',
dateTime: 'Test',
error: `Invalid 'columnDate' format.`
wrongDateTime: 'Test',
dateTime: '15/07/2019 23:55',
error: `Invalid 'columnDate' format.`,
requiredError: `Field 'columnDate' is required.`
};
const currentDate = DateUtil.formatDate('DD-MM-YYYY');
const rowPosition = 0;
beforeAll(async (done) => {
@ -107,14 +109,13 @@ describe('Dynamic Table', () => {
widget.dynamicTable().clickAddButton();
widget.dynamicTable().clickColumnDateTime();
expect(widget.dynamicTable().addRandomStringOnDateTime(randomText.dateTime)).toBe('');
expect(widget.dynamicTable().addRandomStringOnDateTime(randomText.wrongDateTime)).toBe('');
});
it('[C286279] Should be able to save row with Date field', () => {
widget.dynamicTable().clickAddButton();
widget.dynamicTable().addRandomStringOnDate(randomText.wrongDate);
widget.dynamicTable().clickSaveButton();
expect(widget.dynamicTable().checkErrorMessage()).toBe(randomText.error);
widget.dynamicTable().clickDateWidget();
@ -122,6 +123,21 @@ describe('Dynamic Table', () => {
.checkDatePickerIsNotDisplayed();
widget.dynamicTable().clickSaveButton();
widget.dynamicTable().getTableRow(rowPosition);
expect(widget.dynamicTable().getTableCellText(rowPosition, 1)).toBe(currentDate);
});
it('[C311456] Should be able to delete date that is not mandatory and save the Dynamic Table', () => {
widget.dynamicTable().clickAddButton();
widget.dynamicTable().clickSaveButton();
expect(widget.dynamicTable().checkErrorMessage()).toBe(randomText.requiredError);
widget.dynamicTable().clickDateWidget();
datePicker.selectTodayDate()
.checkDatePickerIsNotDisplayed();
widget.dynamicTable().clickSaveButton();
widget.dynamicTable().getTableRow(rowPosition);
expect(widget.dynamicTable().getTableCellText(rowPosition, 1)).toBe(currentDate);
expect(widget.dynamicTable().getTableCellText(rowPosition, 2)).toBe('');
});
});

View File

@ -120,6 +120,10 @@ export class DynamicTableWidget {
return BrowserVisibility.waitUntilElementIsVisible(this.tableRow.get(rowNumber));
}
getTableCellText(rowNumber: number, columnNumber: number) {
return BrowserActions.getText(this.tableRow.get(rowNumber).element(by.xpath(`td[${columnNumber}]`)));
}
checkItemIsPresent(item) {
const row = element(by.cssContainingText('table tbody tr td span', item));
const present = BrowserVisibility.waitUntilElementIsVisible(row);