由于图标,无法在 karma/jasmine/PhantomJS 测试中比较 HTML 字符串
Cannot compare HTML string in karma/jasmine/PhantomJS test because of icon
我有测试(应该)检查我的工厂渲染的元素 html 是否正确。但是,这个元素包含 material 图标,在本次测试中似乎无法比较它的 HTML。
简化测试用例:
describe( 'Compile: ', function () {
it( 'compare two html strings and should be equal', function () {
var mockEl = $( '<i class="material-icons"></i>' )
;
expect( mockEl[0].outerHTML ).toBe(
'<i class="material-icons"></i>'
);
} );
} );
结果我测试抛出错误:
Expected <i class="material-icons"></i>' to be '<i class="material-icons"></i>'.
这是图标 jQuery 对象 text
在 Chrome 控制台中的样子:
尝试使用 unicode 值比较它,如下所示
expect( mockEl[0].outerHTML ).toBe(
'<i class="material-icons">\ue24b</i>'
);
我有测试(应该)检查我的工厂渲染的元素 html 是否正确。但是,这个元素包含 material 图标,在本次测试中似乎无法比较它的 HTML。
简化测试用例:
describe( 'Compile: ', function () {
it( 'compare two html strings and should be equal', function () {
var mockEl = $( '<i class="material-icons"></i>' )
;
expect( mockEl[0].outerHTML ).toBe(
'<i class="material-icons"></i>'
);
} );
} );
结果我测试抛出错误:
Expected <i class="material-icons"></i>' to be '<i class="material-icons"></i>'.
这是图标 jQuery 对象 text
在 Chrome 控制台中的样子:
尝试使用 unicode 值比较它,如下所示
expect( mockEl[0].outerHTML ).toBe(
'<i class="material-icons">\ue24b</i>'
);