我想用nodeunit测试我的库,我在里面使用了File对象,在网站上一切正常(FileAPI在那里实现了),但当我试图用nodeunit测试它时,我得到了一个错误:
Fatal error: File is not defined
我假设我必须添加以下内容:
var FileAPI = require('file-api');
var File = FileAPI.File;在代码的乞求下,但是当我将这个库包含到网站时,我不需要它,该如何处理?要使用节点单元,我必须在末尾添加module.exports,这也是必要的吗?(github上的代码示例)
更重要的是,当我尝试测试以下代码时:https://github.com/GeoSmartCity-CIP/gsc-client/blob/feature/upload-data-file/src/upload/upload.js
使用此测试:
var gsc = require('../../src/upload/upload');
var FileAPI = require('file-api');
var File = FileAPI.File;
var exports = exports || {};
exports.isFileTypeCorrect = function(test) {
var file = new File('test.geojson');
var asd = new gsc.upload.Data(file);
test.ok(asd.isFileTypeCorrect(), 'this assertion should pass');
test.done();
};我收到Fatal error: Cannot read property 'substr' of undefined错误,有什么问题吗?编辑: substr的问题可能是来自isShapefileCorrect函数,但仍然不知道为什么?
发布于 2016-03-11 22:09:04
var asd = new gsc.upload.Data(file);不是异步函数吗?那么可能应该在upload回调中调用asd.isFileTypeCorrect()。您还可以将isFileTypeCorrect函数定义为模块导出,并在其内部调用其自身。这不是一个无限循环吗?
https://stackoverflow.com/questions/35941890
复制相似问题