30 lines
655 B
JavaScript
30 lines
655 B
JavaScript
|
const { Given, When, Then } = require('cucumber')
|
||
|
const assert = require('assert')
|
||
|
|
||
|
Given('the numbers:', function (dataTable) {
|
||
|
this.numbers = dataTable.rows()[0]
|
||
|
})
|
||
|
|
||
|
When('I sum them', function () {
|
||
|
this.sum = this.numbers
|
||
|
.map(x => parseInt(x))
|
||
|
.reduce((x, acc) => acc + x, 0)
|
||
|
})
|
||
|
|
||
|
Then('I get {int}', function (int) {
|
||
|
assert.equal(this.sum, int)
|
||
|
})
|
||
|
|
||
|
Given('a list of proper names:', function (dataTable) {
|
||
|
this.names = dataTable.raw()
|
||
|
.map(x => x[0])
|
||
|
})
|
||
|
|
||
|
When('I concatenate them together', function () {
|
||
|
this.name = this.names.join(' ')
|
||
|
})
|
||
|
|
||
|
Then('the name is {string}', function (string) {
|
||
|
assert.equal(this.name, string)
|
||
|
})
|