我正在使用茉莉花在Angular中構建指令測試。我有一個小例子測試,看起來像這樣:茉莉花的角度測試無法比較html節點
it("should compare html node", inject(function ($compile, $rootScope) {
var elm = angular.element('<input>');
elm = $compile(elm)($scope);
$scope.$digest();
console.log('btn', elm); // output: '<input class="ng-scope">'
expect(elm).toBe('<input class="ng-scope">');
expect(elm[0]).toBe('<input class="ng-scope">'); // these also fail
expect(elm.html()).toBe('<input class="ng-scope">'); // ""
}));
所以我得到的預期輸出到控制檯,但茉莉一個錯誤Expected { length: 1, 0: HTMLNode } to be '<input class="ng-scope">'
我也使用elm[0]
這給了同樣的錯誤嘗試抱怨和elm.html()
但這只是返回一個空字符串。如何正確比較HTML節點和字符串?
NB我知道這是一個不切實際的測試,但我只想演示我當前的問題。
也許試試elm [0] .outerHTML – hassassin 2015-02-07 00:06:08
哇!這實際上起作用。不過,我可以在API中找到它(https://docs.angularjs.org/api/ng/function/angular.element)。如果你想讓它成爲一個答案,我會接受。謝謝。 – 2015-02-10 18:46:17