github.com/ouraigua/jenkins-library@v0.0.0-20231028010029-fbeaf2f3aa9b/integration/testdata/TestGaugeIntegration/gauge-js/tests/step_implementation.js (about) 1 /* globals gauge*/ 2 3 "use strict"; 4 5 var assert = require("assert"); 6 7 var vowels = ["a", "e", "i", "o", "u"]; 8 9 var numberOfVowels = function (word) { 10 var vowelArr = word.split("").filter(function (elem) { return vowels.indexOf(elem) > -1; }); 11 return vowelArr.length; 12 }; 13 14 // -------------------------- 15 // Gauge step implementations 16 // -------------------------- 17 18 step("Vowels in English language are <vowels>.", function(vowelsGiven) { 19 assert.equal(vowelsGiven, vowels.join("")); 20 }); 21 22 step("The word <word> has <number> vowels.", function(word, number) { 23 assert.equal(number, numberOfVowels(word)); 24 }); 25 26 step("Almost all words have vowels <table>", function(table) { 27 table.rows.forEach(function (row) { 28 assert.equal(numberOfVowels(row.cells[0]), parseInt(row.cells[1])); 29 }); 30 }); 31 32 // --------------- 33 // Execution Hooks 34 // --------------- 35 36 beforeScenario(function () { 37 assert.equal(vowels.join(""), "aeiou"); 38 }); 39 40 beforeScenario(function () { 41 assert.equal(vowels[0], "a"); 42 }, { tags: [ "single word" ]});