Я пишу функцию, чтобы попытаться удалить тег <noscript>
из строки html.
Я написал свою функцию ниже:
function removeNoScript(str){
var start = str.search("<noscript>");
var end = str.search("</noscript>") + "</noscript>".length;
var result = str.replace(str.substring(start,end),"");
return result;
}
let result = removeNoScript("<p>first word</p><noscript>This shows up</noscript><p>second word</p>");
console.log(result)
Это прекрасно работает, однако, когда я запускаю модульный тест для этого с chai и mocha (ниже):
it("removes <noscript> in-between markup", () => {
removeScripts(
"<p>first word</p><noscript>This shows up</noscript><p>second word</p>"
).should.equal("<p>first word</p><p>second word</p>");
});
Я получаю эторезультат: 
Эта же функция работает в JSBin. Я вышел из системы, ответ - есть идеи, почему она работает на JSBin, но Mocha / Chai возвращает ошибку?
PS: В случае, если это поможет, это снимок кода, который я написал в редакторе (игнорируйте комментарий о <script>
, потому что я планирую удалить его далее): 