1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- const sinon = require('sinon');
- const proxyquire = require('proxyquire').noCallThru();
- const storage = {
- del: sinon.stub(),
- ttl: sinon.stub()
- };
- function request(id) {
- return {
- params: { id }
- };
- }
- function response() {
- return {
- sendStatus: sinon.stub()
- };
- }
- const delRoute = proxyquire('../../server/routes/delete', {
- '../storage': storage
- });
- describe('/api/delete', function() {
- afterEach(function() {
- storage.del.reset();
- });
- it('calls storage.del with the id parameter', async function() {
- const req = request('x');
- const res = response();
- await delRoute(req, res);
- sinon.assert.calledWith(storage.del, 'x');
- sinon.assert.calledWith(res.sendStatus, 200);
- });
- it('sends a 404 on failure', async function() {
- storage.del.returns(Promise.reject(new Error()));
- const res = response();
- await delRoute(request('x'), res);
- sinon.assert.calledWith(res.sendStatus, 404);
- });
- });
|