Testing
Actions
const actions = {
addTodo: (state, payload) => {
if (!payload.title) throw new Error('titleMissing')
return [{
type: 'TodoAdded',
title: payload.title,
at: Date.now(),
}]
}
}
module.exports = actions// stub Date.now
Date.now = () => 123
const test = require('tape')
const actions = require('../actions')
test('addTodo', assert => {
assert.deepEquals(
actions.addTodo({}, { title: 'foobar' }),
[{
type: 'TodoAdded',
title: 'foobar',
at: 123
}],
'generates a TodoAdded event'
)
assert.throws(
() => actions.addTodo({}, { foo: 'bar' }),
/titleMissing/,
'throws if title is missing'
)
})Reducer
Last updated
Was this helpful?