如何为单元测试提供模拟过滤器

时间:2015-05-05 19:23:32

标签: angularjs karma-jasmine

我有一个具有这行代码的控制器

 var formattedDate= $filter('date')(dateColName,short);

我正在尝试单元测试这个控制器,我不清楚如何在我的代码中模拟日期过滤器。

1 个答案:

答案 0 :(得分:21)

您需要添加'过滤器'在Angular中模拟过滤器时到过滤器名称的末尾,因为Angular存储像服务一样过滤,但添加了'过滤器'到最后。试试这个例子:

var mockFilter = function() {
    return 'whatyouwantittoreturn';
};

beforeEach(function() {
    module(function($provide) {
        $provide.value('dateFilter', mockFilter );
    });
});
相关问题