https://github.com/web-platform-tests/wpt
Raw File
Tip revision: e4248bd6a97720b5a9e35e3d0ebb92a42c8c4af3 authored by Geoffrey Sneddon on 11 April 2018, 07:26:51 UTC
Add backwards compatibility for external_host and host_ip
Tip revision: e4248bd
observer-exceptions.html
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>

<script>
test(function () {
  assert_throws(RangeError(), function() {
    new IntersectionObserver(e => {}, {threshold: [1.1]})
  })
}, "IntersectionObserver constructor with { threshold: [1.1] }");

test(function () {
  assert_throws(TypeError(), function() {
    new IntersectionObserver(e => {}, {threshold: ["foo"]})
  })
}, 'IntersectionObserver constructor with { threshold: ["foo"] }');

test(function () {
  assert_throws("SYNTAX_ERR", function() {
    new IntersectionObserver(e => {}, {rootMargin: "1"})
  })
}, 'IntersectionObserver constructor witth { rootMargin: "1" }');

test(function () {
  assert_throws("SYNTAX_ERR", function() {
    new IntersectionObserver(e => {}, {rootMargin: "2em"})
  })
}, 'IntersectionObserver constructor with { rootMargin: "2em" }');

test(function () {
  assert_throws("SYNTAX_ERR", function() {
    new IntersectionObserver(e => {}, {rootMargin: "auto"})
  })
}, 'IntersectionObserver constructor with { rootMargin: "auto" }');

test(function () {
  assert_throws("SYNTAX_ERR", function() {
    new IntersectionObserver(e => {}, {rootMargin: "calc(1px + 2px)"})
  })
}, 'IntersectionObserver constructor with { rootMargin: "calc(1px + 2px)" }');

test(function () {
  assert_throws("SYNTAX_ERR", function() {
    new IntersectionObserver(e => {}, {rootMargin: "1px !important"})
  })
}, 'IntersectionObserver constructor with { rootMargin: "1px !important" }');

test(function () {
  assert_throws("SYNTAX_ERR", function() {
    new IntersectionObserver(e => {}, {rootMargin: "1px 1px 1px 1px 1px"})
  })
}, 'IntersectionObserver constructor with { rootMargin: "1px 1px 1px 1px 1px" }');

test(function () {
  assert_throws(TypeError(), function() {
    let observer = new IntersectionObserver(c => {}, {});
    observer.observe("foo");
  })
}, 'IntersectionObserver.observe("foo")');
</script>
back to top