如何为单元测试提供模拟过滤器
How to provide mock filters for unit testing
我有一个控制器有这行代码
var formattedDate= $filter('date')(dateColName,short);
我正在尝试对该控制器进行单元测试,但我不清楚如何在我的代码中模拟日期过滤器。
在 Angular 中模拟过滤器时,您需要将 'Filter' 添加到过滤器名称的末尾,因为 Angular 像服务一样存储过滤器,但添加 'Filter'到最后。例如试试这个:
var mockFilter = function() {
return 'whatyouwantittoreturn';
};
beforeEach(function() {
module(function($provide) {
$provide.value('dateFilter', mockFilter );
});
});
我有一个控制器有这行代码
var formattedDate= $filter('date')(dateColName,short);
我正在尝试对该控制器进行单元测试,但我不清楚如何在我的代码中模拟日期过滤器。
在 Angular 中模拟过滤器时,您需要将 'Filter' 添加到过滤器名称的末尾,因为 Angular 像服务一样存储过滤器,但添加 'Filter'到最后。例如试试这个:
var mockFilter = function() {
return 'whatyouwantittoreturn';
};
beforeEach(function() {
module(function($provide) {
$provide.value('dateFilter', mockFilter );
});
});