All files / botbuilder-unit/spec errorsSpec.js

87.1% Statements 27/31
100% Branches 0/0
80% Functions 12/15
87.1% Lines 27/31
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 731x 1x   1x 1x 1x 1x         1x   1x         1x         1x 1x     1x 1x 1x     1x     1x   1x     1x           1x     1x 1x 1x     1x     1x   1x     1x             1x      
const botFactory = require('./lib/botFactory');
const unit = require('../');
 
describe('Errors Test', function () {
  it('Will raise an error if messages do not match', function (done) {
    let bot = botFactory();
    let script = [
      {user: 'hi'},
      {bot: 'hi!'}
    ];
 
    bot.dialog('/test', [
      function (session) {
        session.endDialog('Hello world!')
      }
    ])
 
 
    unit(bot, script,{
      title : 'Will raise an error if messages do not match'
    }).then(function () {
 
    }, function (err ) {
      expect(err).toBe('Received text <Hello world!> does not match <hi!>');
      done();
    });
  });
  it('Check that bot callback returns a promise',(done) => {
    let bot = botFactory();
    let script = [
      {user: 'hi'},
      {bot: ( ) => {
        return null;
      }}
    ];
    bot.dialog('/test', [
      function (session) {
        session.endDialog('Hello world!')
      }
    ]);
    unit(bot, script,{
      title : 'Check that bot callback returns a promise'
    }).then(function () {
      fail('Impossible case');
      done();
    }, function (err ) {
      done();
    });
  });
  it('Check that bot callback could raise an error', (done) => {
    let bot = botFactory();
    let script = [
      {user: 'hi'},
      {bot: ( ) => {
        return Promise.reject(new Error('Internal error'));
      }}
    ];
    bot.dialog('/test', [
      function (session) {
        session.endDialog('Hello world!')
      }
    ]);
    unit(bot, script,{
      title : 'Check that bot callback returns a promise'
    }).then(function () {
      fail('Impossible case');
      done();
    }, function (err ) {
      //expect(err.message.toString()).toBe('Internal error');
      done();
    });
  })
})