【发布时间】:2013-10-18 15:42:12
【问题描述】:
我的测试代码是
var strategy = require('../lib');
var should = require("should");
describe('passport-twitter', function() {
it('should export Strategy constructor directly from package', function() {
console.log('strategy is',strategy);
strategy.should.have.type('function');
});
it('should export Strategy constructor', function() {
strategy.Strategy.should.have.type('function');
});
});
当我运行这个测试时,它给了我错误
1) passport-twitter should export Strategy constructor directly from package:
TypeError: Object #<Object> has no method 'type'
at Context.<anonymous> (/home/ritesh/projects/passport-topcoder/test/module.test.js:7:26)
at Test.Runnable.run (/usr/local/lib/node_modules/mocha/lib/runnable.js:211:32)
at Runner.runTest (/usr/local/lib/node_modules/mocha/lib/runner.js:358:10)
at /usr/local/lib/node_modules/mocha/lib/runner.js:404:12
at next (/usr/local/lib/node_modules/mocha/lib/runner.js:284:14)
at /usr/local/lib/node_modules/mocha/lib/runner.js:293:7
at next (/usr/local/lib/node_modules/mocha/lib/runner.js:237:23)
at Object._onImmediate (/usr/local/lib/node_modules/mocha/lib/runner.js:261:5)
at processImmediate [as _immediateCallback] (timers.js:330:15)
2) passport-twitter should export Strategy constructor:
TypeError: Object #<Object> has no method 'type'
at Context.<anonymous> (/home/ritesh/projects/passport-topcoder/test/module.test.js:11:35)
at Test.Runnable.run (/usr/local/lib/node_modules/mocha/lib/runnable.js:211:32)
at Runner.runTest (/usr/local/lib/node_modules/mocha/lib/runner.js:358:10)
at /usr/local/lib/node_modules/mocha/lib/runner.js:404:12
at next (/usr/local/lib/node_modules/mocha/lib/runner.js:284:14)
at /usr/local/lib/node_modules/mocha/lib/runner.js:293:7
at next (/usr/local/lib/node_modules/mocha/lib/runner.js:237:23)
at Object._onImmediate (/usr/local/lib/node_modules/mocha/lib/runner.js:261:5)
at processImmediate [as _immediateCallback] (timers.js:330:15)
但是在文档中指定了类型方法。如何摆脱这个错误。请帮助一下。
当我尝试运行时而不是这个
啊
var strategy = require('..');
var should = require("should");
describe('passport-twitter', function() {
it('should export', function() {
console.log('strategy is',strategy);
'xxxx'.should.have.type('function');
});
});
我仍然收到错误
1) passport-twitter should export:
TypeError: Object #<Object> has no method 'type'
at Context.<anonymous> (/home/ritesh/projects/passport-topcoder/test/module.test.js:7:23)
at Test.Runnable.run (/usr/local/lib/node_modules/mocha/lib/runnable.js:211:32)
at Runner.runTest (/usr/local/lib/node_modules/mocha/lib/runner.js:358:10)
at /usr/local/lib/node_modules/mocha/lib/runner.js:404:12
at next (/usr/local/lib/node_modules/mocha/lib/runner.js:284:14)
at /usr/local/lib/node_modules/mocha/lib/runner.js:293:7
at next (/usr/local/lib/node_modules/mocha/lib/runner.js:237:23)
at Object._onImmediate (/usr/local/lib/node_modules/mocha/lib/runner.js:261:5)
at processImmediate [as _immediateCallback] (timers.js:330:15)
【问题讨论】:
-
不清楚你需要什么策略变量
-
在控制台日志中的策略是 { version: '1.0.0', Strategy: { [Function: Strategy] super_: { [Function: OAuth2Strategy] super_: [Function: Strategy] } } } 我们是得到这个。
-
即使它在我更新时给我同样的字符串错误
标签: node.js npm mocha.js should.js