【发布时间】:2017-05-09 17:11:47
【问题描述】:
我最近编写了几个单元测试,我想知道是否有一种方法可以制作 html 字符串(绑定模板)以从 javascript 函数中吸引指令(或组件)。这是一个例子。
我有一些指令,我正在像这样测试它
function test($rootScope, $compile) {
var scope = $rootScope.$new();
var elem = $compile(angular.element(
'<app-foo-bar attr1="val1" attr2="val2"></app-foo-bar>'
))(scope);
scope.$apply();
}
声明一个元素字符串似乎有点尴尬,尤其是在有十几个属性的情况下。如果有一个函数可以从这样的对象生成 html 字符串,那么单元测试将非常方便。
genHtmlString('fooBar', {
attr1: 'val1',
attr2: 'val2'
});
输出当然是
<app-foo-bar attr1="val1" attr2="val2"></app-foo-bar>
这对我来说似乎是一个常见问题,但我找不到任何有助于编写这样一个函数的 angular、karma 或 jasmine 函数。
【问题讨论】:
标签: javascript angularjs angularjs-directive jasmine karma-runner