<!doctype html>
<html lang="en">

	<head>
		<meta charset="utf-8">

		<title>reveal.js - Test PDF exports</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>
					<h1>1</h1>
					<img data-src="">
				</section>

				<section>
					<section>
						<h1>2.1</h1>
					</section>
					<section>
						<h1>2.2</h1>
					</section>
					<section>
						<h1>2.3</h1>
					</section>
				</section>

				<section id="fragment-slides">
					<section>
						<h1>3.1</h1>
						<ul>
							<li class="fragment">4.1</li>
							<li class="fragment">4.2</li>
							<li class="fragment">4.3</li>
						</ul>
					</section>

					<section>
						<h1>3.2</h1>
						<ul>
							<li class="fragment" data-fragment-index="0">4.1</li>
							<li class="fragment" data-fragment-index="0">4.2</li>
						</ul>
					</section>

					<section>
						<h1>3.3</h1>
						<ul>
							<li class="fragment" data-fragment-index="1">3.3.1</li>
							<li class="fragment" data-fragment-index="4">3.3.2</li>
							<li class="fragment" data-fragment-index="4">3.3.3</li>
						</ul>
					</section>
				</section>

				<section>
					<h1>4</h1>
				</section>

			</div>

		</div>

		<script src="../dist/reveal.js"></script>
		<script>
			QUnit.config.testTimeout = 30000;
			QUnit.config.autostart = false;

			Reveal.initialize({ pdf: true }).then( function() {

				QUnit.start();

				// Only one test for now, we're mainly ensuring that there
				// are no execution errors when running PDF mode

				QUnit.test( 'Reveal.isReady', function( assert ) {
					assert.strictEqual( Reveal.isReady(), true, 'returns true' );
				});

			} );

		</script>

	</body>
</html>
