diff options
Diffstat (limited to 'present/test/test-iframe-backgrounds.html')
| -rw-r--r-- | present/test/test-iframe-backgrounds.html | 100 | 
1 files changed, 100 insertions, 0 deletions
| diff --git a/present/test/test-iframe-backgrounds.html b/present/test/test-iframe-backgrounds.html new file mode 100644 index 0000000..7df99a1 --- /dev/null +++ b/present/test/test-iframe-backgrounds.html @@ -0,0 +1,100 @@ +<!doctype html> +<html lang="en"> + +	<head> +		<meta charset="utf-8"> + +		<title>reveal.js - Test Iframe Backgrounds</title> + +		<link rel="stylesheet" href="../dist/reveal.css"> +		<link rel="stylesheet" href="../node_modules/qunit/qunit/qunit.css"> +		<script src="../node_modules/qunit/qunit/qunit.js"></script> +	</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="https://revealjs.com">1</section> +				<section data-background-iframe="https://revealjs.com">2</section> +				<section data-background-iframe="https://revealjs.com" data-preload>3</section> +				<section data-background-iframe="https://revealjs.com">4</section> +				<section data-background-iframe="https://revealjs.com">5</section> +				<section data-background-iframe="https://revealjs.com">6</section> + +			</div> + +		</div> + +		<script src="../dist/reveal.js"></script> +		<script> + +			QUnit.config.testTimeout = 30000; + +			Reveal.initialize({ viewDistance: 3 }).then( () => { + +				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' ); + + +				}); + +			} ); +		</script> + +	</body> +</html> | 
