我想用外部模板测试AngularJs视图。我发现的几乎所有示例都演示了如下代码:
var element = angular.element('<div>something goes here... </div>');
element = $compile(element)(scope)
但我的HTML比这复杂一点,所以我希望测试从文件中读取它。我在哪里可以找到一个例子?
答案 0 :(得分:0)
我在这里发现了一篇很棒的帖子:http://www.zealake.com/2014/01/01/unit-test-your-angularjs-views。
以下是我自己代码的片段:
beforeEach inject ($controller, $rootScope, $templateCache, $compile) ->
scope = $rootScope.$new()
# CaseCtrl = $controller 'CaseCtrl',
# $scope: scope
template = $templateCache.get TEMPLATE_URL
if !template
template = $ajax(TEMPLATE_URL, { async: false}).responseText;
$templateCache.put TEMPLATE_URL, template
element = angular.element template
element = $compile(element) scope
scope.$apply()
it 'should ...', ->
expect($(element).html()).toBe 'This is the case view.'