2015-07-22 8 views
0

Вот мой тествопросы тестирования hapijs плагин

'use strict'; 

var assert = require('assert'); 
var sinon = require('sinon'); 
var proxyquire = require('proxyquire'); 
var Lab = require('lab'); 

var lab = exports.lab = Lab.script(); 

lab.experiment("src.mysql", function() { 

    var server = { 
     settings: { 
      app: { 
       mysql: { 
        connectionLimit: 10, 
        host: "none", 
        user: "me", 
        password: "nope", 
        database: "db" 

       } 
      } 
     }, 
     expose: sinon.stub() 
    }; 
    var mysql = sinon.stub(); 
    var next = sinon.stub(); 
    var plugin = proxyquire('../../src/mysql', { 
     mysql: mysql 
    }); 

    lab.test("successful loads", function(done) { 
     plugin.register(server, {}, next, function(err) { 
      assert(err === 'hello'); 
     }); 

     done(); 
    }); 
}); 

Я не получаю сообщение об ошибке, но тест проходит, который является ложным срабатыванием. Не уверен, что я делаю неправильно

ответ

2

В последней версии hapi 8.x.x используется новый метод загрузки плагинов, вы должны вызвать server.register с аргументами, описанными здесь http://hapijs.com/api#serverregisterplugins-options-callback.

+0

Я обновил свой вопрос с помощью новейшего теста. Все еще не получаю ожидаемых результатов – dennismonsewicz

+0

Вы не используете api правильно, объект сервера, который вы регистрируете, не является объектом плагина hapi. –

+0

Можете ли вы принять мой ответ? –