25 lines
1.1 KiB
TypeScript
25 lines
1.1 KiB
TypeScript
|
import Cucumber = require("cucumber");
|
||
|
import seleniumWebdriver = require("selenium-webdriver");
|
||
|
import Assert = require("assert");
|
||
|
import Fs = require("fs");
|
||
|
import CustomWorld = require("../support/world");
|
||
|
|
||
|
Cucumber.defineSupportCode(function ({ Given, When, Then }) {
|
||
|
Then("I get a notification of type {stringInDoubleQuotes} with message {stringInDoubleQuotes}",
|
||
|
function (notificationType: string, notificationMessage: string) {
|
||
|
const that = this;
|
||
|
const notificationEl = this.driver.findElement(seleniumWebdriver.By.className("notification"));
|
||
|
return this.driver.wait(seleniumWebdriver.until.elementIsVisible(notificationEl), 2000)
|
||
|
.then(function () {
|
||
|
return notificationEl.getText();
|
||
|
})
|
||
|
.then(function (txt: string) {
|
||
|
Assert.equal(notificationMessage, txt);
|
||
|
return notificationEl.getAttribute("class");
|
||
|
})
|
||
|
.then(function(classes: string) {
|
||
|
Assert(classes.indexOf(notificationType) > -1, "Class '" + notificationType + "' not found in notification element.");
|
||
|
});
|
||
|
});
|
||
|
|
||
|
});
|