1
0
mirror of https://github.com/kkapsner/CanvasBlocker synced 2024-06-13 08:29:52 +02:00
CanvasBlocker/test/iframeTest.html

52 lines
3.1 KiB
HTML
Raw Normal View History

2019-05-24 18:31:11 +02:00
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>iFrame Test</title>
<link href="testIcon.svg" type="image/png" rel="icon">
<link href="testIcon.svg" type="image/png" rel="shortcut icon">
</head>
<body>
<script src="iframeTest.js"></script>
<iframe></iframe><script>
const iframe = window[0];
log("TEST:", "iframe in html:", compare(test(iframe), reference));
2019-05-24 18:31:11 +02:00
iframe.addEventListener("load", function(){
log("TEST:", "iframe after loading:", compare(test(iframe), reference));
2019-05-24 18:31:11 +02:00
});
document.write("<iframe></iframe><script>log(\"TEST:\", \"iframe and script in document.write:\", compare(test(window[1]), reference));<\/script>");
log("TEST:", "iframe in document.write:", compare(test(window[1]), reference));
2019-05-24 18:31:11 +02:00
document.write("<iframe></iframe>");
document.write("<script>log(\"TEST:\", \"iframe and script in separate document.write:\", compare(test(window[2]), reference));<\/script>");
"<iframe></iframe><script>log(\"TEST:\", \"iframe and script in fragmented document.write:\", compare(test(window[3]), reference));<\/script>".split(/(?=<)/).forEach(function(part){
2019-05-24 18:31:11 +02:00
document.write(part);
});
document.writeln("<iframe></iframe><script>log(\"TEST:\", \"iframe and script in document.writeln:\", compare(test(window[4]), reference));<\/script>");
document.write("<script src=\"iframeTest.js\"><\/script><iframe></iframe><script>log(\"TEST:\", \"script with src, iframe and script in document.write:\", compare(test(window[5]), reference));<\/script>");
"<ifr|ame></ifr|ame>".split("|").forEach(function(part){
document.write(part);
});
document.write("<script>log(\"TEST:\", \"ifr|ame split:\", compare(test(window[6]), reference));<\/script>");
2019-05-24 18:31:11 +02:00
window.addEventListener("load", function(){
// document.open();
"<ifr|ame></ifr|ame>".split("|").forEach(function(part){
document.write(part);
});
document.write("<script>log(\"TEST:\", \"reopened document: ifr|ame split:\", compare(test(window[0]), reference));<\/script>");
document.write("<script src=\"iframeTest.js\"><\/script><iframe></iframe><script>log(\"TEST:\", \"reopened document: script with src, iframe and script in document.write:\", compare(test(window[1]), reference, true));<\/script>");
2019-05-24 18:31:11 +02:00
// document.close();
});
window.setTimeout(function(){
document.body.innerHTML = "<iframe></iframe>";
console.log("TEST:", "innerHTML after 1000ms:", compare(test(window[0]), reference));
2019-09-04 00:30:20 +02:00
document.body.innerHTML = "<h1>Iframe protection</h1>Open console (Ctrl + Shift + K) to see results. Depending on your Browser version you might have to check the \"Persist Logs\" flag and reload the page.<br><h2>Expected result</h2><ul><li>the displayed hashes should not be your native hash (run test with CB disabled to get it)</li><li>all the displayed hashes should be the same (exception if there is a change to a wyciwyg page)</li><li>all lines with \"TEST:\" should have a \"match\" at the end</li></ul>";
var title = document.createElement("title");
title.textContent = "iFrame test";
document.getElementsByTagName("head")[0].appendChild(title);
2019-05-24 18:31:11 +02:00
}, 1000);
</script>
</body>
</html>