2015-11-06 16 views
-1

我創建一個工廠方法,其中i是回一個節點模塊獲取節點模塊的實例,同時測試驅動科迪爾

變種DAL1 =要求的一個實例(」 ../ DAL/DAL1' );

var dal2 = require('../ dal/dal2');

exports.createDAL(角色){

開關(角色){

case "XYZ": return dal1; 
case "ABC": return dal2 

} };

使用Mocha作爲TDD框架工作,當我得到返回的對象時,我將returnObject.constructor.name的值作爲對象而不是dal1或dal2。任何指針?

回答

0

所以我繼續使用節點模塊'util'。我能得到的,而不只是「對象」

我創建了一個DAL對象的預期值

//dal.js 

function dal(){ 

} 

dal.prototype.BLAH = function(){ 
//logic here 
} 

module.exports = dal 

//dal1.js 

var inherits = require('util').inherits; 

function dal1(){ 

dal1.call(this); 
} 

inherits(dal1,dal); 

module.exports = dal1; 

//similarly dal2.js 

//finally in factory 
var dal1 = require('./dal1'); 

var dal2 = require('./dal2'); 

switch(role){ 

case 'XYZ': return new dal1(); 

case 'ABC' : return new dal2(); 

} 
相關問題