Advertisement
Guest User

Untitled

a guest
Jan 17th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. ### Example Controller
  2. ```js
  3. import { Request, Response } from 'express';
  4. import MessageSender form '../Services/MessageSender';
  5.  
  6. /**
  7. * Example controller that provides a healthcheck endpoint
  8. */
  9. module Example {
  10.  
  11. 'use strict';
  12.  
  13. /*
  14. * Return an empty 200 response
  15. */
  16. export function someMethod (req: Request, res: Response) {
  17. const messageSender = this._messageSender || new MessageSender();
  18.  
  19. messageSender.SendMessage("hello world!")
  20. .then(() => res.end);
  21. }
  22.  
  23. }
  24.  
  25. export = Example;
  26. ```
  27.  
  28. # Example Controller Tests
  29. ```js
  30. import sinon from 'sinon';
  31. import sinonStubPromise from 'sinon-stub-promise';
  32. import { someMethod } from './Example';
  33.  
  34. sinonStubPromise(sinon);
  35.  
  36. describe('Example Controller', () => {
  37. describe('someMethod', () => {
  38. it('should send a message', () => {
  39. const sendMessagePromise = sinon.stub().returnsPromise();
  40.  
  41. const messageSenderMock = {
  42. sendMessage: (message) => {
  43. sendMessagePromise.resolves({sid: 'MSXXXXXXXXXXXXXXXXXXXXXXXXX', body: message});
  44. }
  45. };
  46.  
  47.  
  48. someMethod._messageSender = messageSenderMock;
  49.  
  50. someMethod({}, {});
  51.  
  52. expect(sendMessagePromise.resolved).to.eql({sid: 'MSXXXXXXXXXXXXXXXXXXXXXXXXX', body: 'hello world!'});
  53. });
  54. })
  55. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement