0
我开始使用javascript进行开发,并且仍然存在一些问题来区分概念(js,node,buster,...),所以请原谅我,如果问题不在正确的范围内。使用节点时未定义的输入参数
我正在尝试开发一个js应用程序,并且希望有一个测试驱动的方法。
下面是一个简单的对象,我在我的js文件夹中定义:
var Friend = (function(name, email){
console.log(name)
if (typeof(name) != "string") throw "Expected a string for name"
this.name = name;
this.email = email;
}());
module.exports = Friend(name, email);
而且在我的测试文件夹,我想用friend_test.js
var buster = require("buster");
var Friend = require('/../js/friend');
buster.testCase("A normal Friend", {
"should have a name and a mail": function(){
var my_friend = new Friend("Georges", "[email protected]");
assert.equals(my_friend.name, "Georges");
assert.equals(my_friend.email, "[email protected]");
}
});
我这里关注的是测试它如果我运行我的测试,名称和电子邮件在朋友中不知道,就像输入参数未通过一样:
$ node test/friend-test.js
undefined
undefined
friend.js:4
if (typeof(name) != "string") throw "Expected a string for name"
^
Expected a string for name
我做错了什么?
THX,