summaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authorHakim El Hattab2020-01-27 13:51:24 +0100
committerGitHub2020-01-27 13:51:24 +0100
commit9693816480e1d040f6c945ff7678610957c775ce (patch)
tree5c9921cbadf2aac1f31f4c801ed4110e4707f22e /test
parent6979383e4b2eb24841cd3c6eca66a55be90dd28c (diff)
parent731f6819acf8d7b4b28459f932ad27f63b856e4f (diff)
Merge branch 'dev' into patch-1
Diffstat (limited to 'test')
-rw-r--r--test/test-iframe-backgrounds.html104
-rw-r--r--test/test.js16
2 files changed, 120 insertions, 0 deletions
diff --git a/test/test-iframe-backgrounds.html b/test/test-iframe-backgrounds.html
new file mode 100644
index 0000000..15888bc
--- /dev/null
+++ b/test/test-iframe-backgrounds.html
@@ -0,0 +1,104 @@
+<!doctype html>
+<html lang="en">
+
+ <head>
+ <meta charset="utf-8">
+
+ <title>reveal.js - Test Iframe Backgrounds</title>
+
+ <link rel="stylesheet" href="../css/reveal.css">
+ <link rel="stylesheet" href="qunit-2.5.0.css">
+ </head>
+
+ <body style="overflow: auto;">
+
+ <div id="qunit"></div>
+ <div id="qunit-fixture"></div>
+
+ <div class="reveal" style="display: none;">
+
+ <div class="slides">
+
+ <section data-background-iframe="#1">1</section>
+ <section data-background-iframe="#2">2</section>
+ <section data-background-iframe="#3" data-preload>3</section>
+ <section data-background-iframe="#4">4</section>
+ <section data-background-iframe="#5">5</section>
+ <section data-background-iframe="#6">6</section>
+
+ </div>
+
+ </div>
+
+ <script src="../js/reveal.js"></script>
+ <script src="qunit-2.5.0.js"></script>
+
+ <script>
+
+
+ Reveal.addEventListener( 'ready', function() {
+
+ function getIframe( index ) {
+ return document.querySelectorAll( '.slide-background' )[index].querySelector( 'iframe' );
+ }
+
+ QUnit.module( 'Iframe' );
+
+ QUnit.test( 'Using default settings', function( assert ) {
+
+ Reveal.slide(0);
+ assert.strictEqual( getIframe(1).hasAttribute( 'src' ), false, 'not preloaded when within viewDistance' );
+
+ Reveal.slide(1);
+ assert.strictEqual( getIframe(1).hasAttribute( 'src' ), true, 'loaded when slide becomes visible' );
+
+ Reveal.slide(0);
+ assert.strictEqual( getIframe(1).hasAttribute( 'src' ), false, 'unloaded when slide becomes invisible' );
+
+ });
+
+ QUnit.test( 'Using data-preload', function( assert ) {
+
+ Reveal.slide(1);
+ assert.strictEqual( getIframe(2).hasAttribute( 'src' ), true, 'preloaded within viewDistance' );
+ assert.strictEqual( getIframe(1).hasAttribute( 'src' ), true, 'loaded when slide becomes visible' );
+
+ Reveal.slide(0);
+ assert.strictEqual( getIframe(3).hasAttribute( 'src' ), false, 'unloads outside of viewDistance' );
+
+ });
+
+ QUnit.test( 'Using preloadIframes: true', function( assert ) {
+
+ Reveal.configure({ preloadIframes: true });
+
+ Reveal.slide(1);
+ assert.strictEqual( getIframe(0).hasAttribute( 'src' ), true, 'preloaded within viewDistance' );
+ assert.strictEqual( getIframe(1).hasAttribute( 'src' ), true, 'preloaded within viewDistance' );
+ assert.strictEqual( getIframe(2).hasAttribute( 'src' ), true, 'preloaded within viewDistance' );
+
+ });
+
+ QUnit.test( 'Using preloadIframes: false', function( assert ) {
+
+ Reveal.configure({ preloadIframes: false });
+
+ Reveal.slide(0);
+ assert.strictEqual( getIframe(1).hasAttribute( 'src' ), false, 'not preloaded within viewDistance' );
+ assert.strictEqual( getIframe(2).hasAttribute( 'src' ), false, 'not preloaded within viewDistance' );
+
+ Reveal.slide(1);
+ assert.strictEqual( getIframe(1).hasAttribute( 'src' ), true, 'loaded when slide becomes visible' );
+
+
+ });
+
+ } );
+
+ Reveal.initialize({
+ viewDistance: 3
+ });
+ </script>
+
+ </body>
+</html>
diff --git a/test/test.js b/test/test.js
index 2738403..14bb690 100644
--- a/test/test.js
+++ b/test/test.js
@@ -250,6 +250,22 @@ Reveal.addEventListener( 'ready', function() {
assert.deepEqual( Reveal.getIndices(), { h: 2, v: 0, f: 1 }, 'Reveal.slide( 2, 0, 1 )' );
});
+ QUnit.test( 'data-fragment is set on slide <section>', function( assert ) {
+ Reveal.slide( 2, 0, -1 );
+ assert.deepEqual( Reveal.getCurrentSlide().getAttribute( 'data-fragment' ), '-1' );
+
+ Reveal.slide( 2, 0, 2 );
+ assert.deepEqual( Reveal.getCurrentSlide().getAttribute( 'data-fragment' ), '2' );
+
+ Reveal.slide( 2, 0, 0 );
+ assert.deepEqual( Reveal.getCurrentSlide().getAttribute( 'data-fragment' ), '0' );
+
+ var fragmentSlide = Reveal.getCurrentSlide();
+
+ Reveal.slide( 3, 0 );
+ assert.deepEqual( fragmentSlide.getAttribute( 'data-fragment' ), '0', 'data-fragment persists when jumping to another slide' );
+ });
+
QUnit.test( 'Hiding all fragments', function( assert ) {
var fragmentSlide = document.querySelector( '#fragment-slides>section:nth-child(1)' );