systelab-components-test
Version:
Widgets to be use in the E2E Tests based in Protractor
74 lines (73 loc) • 3.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var protractor_1 = require("protractor");
var widget_1 = require("./widget");
var Datepicker = /** @class */ (function (_super) {
tslib_1.__extends(Datepicker, _super);
function Datepicker() {
return _super !== null && _super.apply(this, arguments) || this;
}
Datepicker.prototype.isPresent = function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.getInputElement().isPresent()];
case 1: return [2 /*return*/, _a.sent()];
}
});
});
};
Datepicker.prototype.getValue = function () {
return tslib_1.__awaiter(this, void 0, void 0, function () {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.getInputElement()
.getAttribute("value")];
case 1: return [2 /*return*/, _a.sent()];
}
});
});
};
Datepicker.prototype.setValue = function (value) {
return tslib_1.__awaiter(this, void 0, void 0, function () {
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.clear(this.getInputElement())];
case 1:
_a.sent();
return [4 /*yield*/, this.getInputElement().sendKeys(value)];
case 2:
_a.sent();
return [4 /*yield*/, this.getInputElement().sendKeys(protractor_1.Key.TAB)];
case 3:
_a.sent();
return [2 /*return*/];
}
});
});
};
Datepicker.prototype.getInputElement = function () {
return this.elem.element(protractor_1.by.css("input"));
};
Datepicker.prototype.clear = function (elem) {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var currentText, len, backspaceSeries;
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, this.getValue()];
case 1:
currentText = _a.sent();
len = currentText.length;
backspaceSeries = Array(len + 1).join(protractor_1.Key.BACK_SPACE);
return [4 /*yield*/, elem.sendKeys(backspaceSeries)];
case 2:
_a.sent();
return [2 /*return*/];
}
});
});
};
return Datepicker;
}(widget_1.Widget));
exports.Datepicker = Datepicker;