mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
tests for XSS injection in tooltips
This commit is contained in:
parent
a6d50d1ff7
commit
9f4e814dbc
25
test/javascripts/lib/tooltip-test.js.es6
Normal file
25
test/javascripts/lib/tooltip-test.js.es6
Normal file
@ -0,0 +1,25 @@
|
||||
import { registerTooltip } from "discourse/lib/tooltip";
|
||||
|
||||
// prettier-ignore
|
||||
QUnit.module("lib:tooltip", {
|
||||
beforeEach() {
|
||||
fixture().html(
|
||||
"<a class='test-link' data-tooltip='XSS<s onmouseover\=alert(document.domain)>XSS'>test</a>"
|
||||
);
|
||||
}
|
||||
});
|
||||
|
||||
QUnit.test("it prevents XSS injection", assert => {
|
||||
const $testLink = fixture(".test-link");
|
||||
registerTooltip($testLink);
|
||||
$testLink.click();
|
||||
|
||||
andThen(() => {
|
||||
assert.equal(
|
||||
fixture(".tooltip-content")
|
||||
.html()
|
||||
.trim(),
|
||||
"XSS<s onmouseover=alert(document.domain)>XSS"
|
||||
);
|
||||
});
|
||||
});
|
Loading…
Reference in New Issue
Block a user