66 lines
2.8 KiB
HTML
66 lines
2.8 KiB
HTML
<!DOCTYPE html><!-- webkit-test-runner [ IntersectionObserverEnabled=true ] -->
|
|
<head>
|
|
<title>IntersectionObserverEntry interface tests.</title>
|
|
<link rel="author" title="Simon Fraser" href="mailto:simon.fraser@apple.com" />
|
|
<link rel="help" href="https://wicg.github.io/IntersectionObserver/">
|
|
<script src="../resources/testharness.js"></script>
|
|
<script src="../resources/testharnessreport.js"></script>
|
|
</head>
|
|
<body>
|
|
<div id="log"></div>
|
|
<script>
|
|
|
|
var entryInit = {
|
|
time: 9999,
|
|
rootBounds: { x: 10, y: 12.5, width: 130, height: 140 },
|
|
boundingClientRect: { x: 110, y: 112.7, width: 1130, height: 1140 },
|
|
intersectionRect: { x: 210, y: 212, width: 2130, height: 2140 },
|
|
isIntersecting: true,
|
|
intersectionRatio: 0.35,
|
|
target: document.body
|
|
};
|
|
|
|
test(function() {
|
|
assert_class_string(new IntersectionObserverEntry(entryInit), 'IntersectionObserverEntry');
|
|
},'Constructor0');
|
|
test(function() {
|
|
var entry = new IntersectionObserverEntry(entryInit);
|
|
assert_equals(entry.time, 9999);
|
|
},'ConstructorTime');
|
|
test(function() {
|
|
var entry = new IntersectionObserverEntry(entryInit);
|
|
assert_equals(JSON.stringify(entry.rootBounds), '{"x":10,"y":12.5,"width":130,"height":140,"top":12.5,"right":140,"bottom":152.5,"left":10}');
|
|
assert_class_string(entry.rootBounds, 'DOMRectReadOnly');
|
|
},'ConstructorRootBounds');
|
|
test(function() {
|
|
entryInit.rootBounds = null;
|
|
var entry = new IntersectionObserverEntry(entryInit);
|
|
assert_equals(entry.rootBounds, null);
|
|
},'ConstructorNullRootBounds');
|
|
test(function() {
|
|
var entry = new IntersectionObserverEntry(entryInit);
|
|
assert_class_string(entry.boundingClientRect, 'DOMRectReadOnly');
|
|
assert_equals(JSON.stringify(entry.boundingClientRect), '{"x":110,"y":112.7,"width":1130,"height":1140,"top":112.7,"right":1240,"bottom":1252.7,"left":110}');
|
|
},'ConstructorBoundingClientRect');
|
|
test(function() {
|
|
var entry = new IntersectionObserverEntry(entryInit);
|
|
assert_class_string(entry.intersectionRect, 'DOMRectReadOnly');
|
|
assert_equals(JSON.stringify(entry.intersectionRect), '{"x":210,"y":212,"width":2130,"height":2140,"top":212,"right":2340,"bottom":2352,"left":210}');
|
|
},'ConstructorIntersectionRect');
|
|
test(function() {
|
|
var entry = new IntersectionObserverEntry(entryInit);
|
|
assert_true(entry.isIntersecting);
|
|
},'ConstructorIsIntersecting');
|
|
test(function() {
|
|
var entry = new IntersectionObserverEntry(entryInit);
|
|
assert_equals(entry.intersectionRatio, 0.35);
|
|
},'ConstructorIntersectionRatio');
|
|
test(function() {
|
|
var entry = new IntersectionObserverEntry(entryInit);
|
|
assert_equals(entry.target, document.body);
|
|
},'ConstructorTarget');
|
|
|
|
</script>
|
|
</body>
|
|
</html>
|