https://github.com/web-platform-tests/wpt
Raw File
Tip revision: aceba7094d3d8145b85544ecca7c44de5f4b4f3a authored by plehegar on 16 May 2018, 11:21:12 UTC
Fixed moderators
Tip revision: aceba70
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 width { rootMargin: "auto" }');

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