Hakim El Hattab
11 years ago
4 changed files with 2621 additions and 0 deletions
@ -0,0 +1,244 @@ |
|||||
|
/** |
||||
|
* QUnit v1.12.0 - A JavaScript Unit Testing Framework |
||||
|
* |
||||
|
* http://qunitjs.com |
||||
|
* |
||||
|
* Copyright 2012 jQuery Foundation and other contributors |
||||
|
* Released under the MIT license. |
||||
|
* http://jquery.org/license |
||||
|
*/ |
||||
|
|
||||
|
/** Font Family and Sizes */ |
||||
|
|
||||
|
#qunit-tests, #qunit-header, #qunit-banner, #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult { |
||||
|
font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif; |
||||
|
} |
||||
|
|
||||
|
#qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult, #qunit-tests li { font-size: small; } |
||||
|
#qunit-tests { font-size: smaller; } |
||||
|
|
||||
|
|
||||
|
/** Resets */ |
||||
|
|
||||
|
#qunit-tests, #qunit-header, #qunit-banner, #qunit-userAgent, #qunit-testresult, #qunit-modulefilter { |
||||
|
margin: 0; |
||||
|
padding: 0; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
/** Header */ |
||||
|
|
||||
|
#qunit-header { |
||||
|
padding: 0.5em 0 0.5em 1em; |
||||
|
|
||||
|
color: #8699a4; |
||||
|
background-color: #0d3349; |
||||
|
|
||||
|
font-size: 1.5em; |
||||
|
line-height: 1em; |
||||
|
font-weight: normal; |
||||
|
|
||||
|
border-radius: 5px 5px 0 0; |
||||
|
-moz-border-radius: 5px 5px 0 0; |
||||
|
-webkit-border-top-right-radius: 5px; |
||||
|
-webkit-border-top-left-radius: 5px; |
||||
|
} |
||||
|
|
||||
|
#qunit-header a { |
||||
|
text-decoration: none; |
||||
|
color: #c2ccd1; |
||||
|
} |
||||
|
|
||||
|
#qunit-header a:hover, |
||||
|
#qunit-header a:focus { |
||||
|
color: #fff; |
||||
|
} |
||||
|
|
||||
|
#qunit-testrunner-toolbar label { |
||||
|
display: inline-block; |
||||
|
padding: 0 .5em 0 .1em; |
||||
|
} |
||||
|
|
||||
|
#qunit-banner { |
||||
|
height: 5px; |
||||
|
} |
||||
|
|
||||
|
#qunit-testrunner-toolbar { |
||||
|
padding: 0.5em 0 0.5em 2em; |
||||
|
color: #5E740B; |
||||
|
background-color: #eee; |
||||
|
overflow: hidden; |
||||
|
} |
||||
|
|
||||
|
#qunit-userAgent { |
||||
|
padding: 0.5em 0 0.5em 2.5em; |
||||
|
background-color: #2b81af; |
||||
|
color: #fff; |
||||
|
text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px; |
||||
|
} |
||||
|
|
||||
|
#qunit-modulefilter-container { |
||||
|
float: right; |
||||
|
} |
||||
|
|
||||
|
/** Tests: Pass/Fail */ |
||||
|
|
||||
|
#qunit-tests { |
||||
|
list-style-position: inside; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests li { |
||||
|
padding: 0.4em 0.5em 0.4em 2.5em; |
||||
|
border-bottom: 1px solid #fff; |
||||
|
list-style-position: inside; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests.hidepass li.pass, #qunit-tests.hidepass li.running { |
||||
|
display: none; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests li strong { |
||||
|
cursor: pointer; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests li a { |
||||
|
padding: 0.5em; |
||||
|
color: #c2ccd1; |
||||
|
text-decoration: none; |
||||
|
} |
||||
|
#qunit-tests li a:hover, |
||||
|
#qunit-tests li a:focus { |
||||
|
color: #000; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests li .runtime { |
||||
|
float: right; |
||||
|
font-size: smaller; |
||||
|
} |
||||
|
|
||||
|
.qunit-assert-list { |
||||
|
margin-top: 0.5em; |
||||
|
padding: 0.5em; |
||||
|
|
||||
|
background-color: #fff; |
||||
|
|
||||
|
border-radius: 5px; |
||||
|
-moz-border-radius: 5px; |
||||
|
-webkit-border-radius: 5px; |
||||
|
} |
||||
|
|
||||
|
.qunit-collapsed { |
||||
|
display: none; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests table { |
||||
|
border-collapse: collapse; |
||||
|
margin-top: .2em; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests th { |
||||
|
text-align: right; |
||||
|
vertical-align: top; |
||||
|
padding: 0 .5em 0 0; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests td { |
||||
|
vertical-align: top; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests pre { |
||||
|
margin: 0; |
||||
|
white-space: pre-wrap; |
||||
|
word-wrap: break-word; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests del { |
||||
|
background-color: #e0f2be; |
||||
|
color: #374e0c; |
||||
|
text-decoration: none; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests ins { |
||||
|
background-color: #ffcaca; |
||||
|
color: #500; |
||||
|
text-decoration: none; |
||||
|
} |
||||
|
|
||||
|
/*** Test Counts */ |
||||
|
|
||||
|
#qunit-tests b.counts { color: black; } |
||||
|
#qunit-tests b.passed { color: #5E740B; } |
||||
|
#qunit-tests b.failed { color: #710909; } |
||||
|
|
||||
|
#qunit-tests li li { |
||||
|
padding: 5px; |
||||
|
background-color: #fff; |
||||
|
border-bottom: none; |
||||
|
list-style-position: inside; |
||||
|
} |
||||
|
|
||||
|
/*** Passing Styles */ |
||||
|
|
||||
|
#qunit-tests li li.pass { |
||||
|
color: #3c510c; |
||||
|
background-color: #fff; |
||||
|
border-left: 10px solid #C6E746; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests .pass { color: #528CE0; background-color: #D2E0E6; } |
||||
|
#qunit-tests .pass .test-name { color: #366097; } |
||||
|
|
||||
|
#qunit-tests .pass .test-actual, |
||||
|
#qunit-tests .pass .test-expected { color: #999999; } |
||||
|
|
||||
|
#qunit-banner.qunit-pass { background-color: #C6E746; } |
||||
|
|
||||
|
/*** Failing Styles */ |
||||
|
|
||||
|
#qunit-tests li li.fail { |
||||
|
color: #710909; |
||||
|
background-color: #fff; |
||||
|
border-left: 10px solid #EE5757; |
||||
|
white-space: pre; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests > li:last-child { |
||||
|
border-radius: 0 0 5px 5px; |
||||
|
-moz-border-radius: 0 0 5px 5px; |
||||
|
-webkit-border-bottom-right-radius: 5px; |
||||
|
-webkit-border-bottom-left-radius: 5px; |
||||
|
} |
||||
|
|
||||
|
#qunit-tests .fail { color: #000000; background-color: #EE5757; } |
||||
|
#qunit-tests .fail .test-name, |
||||
|
#qunit-tests .fail .module-name { color: #000000; } |
||||
|
|
||||
|
#qunit-tests .fail .test-actual { color: #EE5757; } |
||||
|
#qunit-tests .fail .test-expected { color: green; } |
||||
|
|
||||
|
#qunit-banner.qunit-fail { background-color: #EE5757; } |
||||
|
|
||||
|
|
||||
|
/** Result */ |
||||
|
|
||||
|
#qunit-testresult { |
||||
|
padding: 0.5em 0.5em 0.5em 2.5em; |
||||
|
|
||||
|
color: #2b81af; |
||||
|
background-color: #D2E0E6; |
||||
|
|
||||
|
border-bottom: 1px solid white; |
||||
|
} |
||||
|
#qunit-testresult .module-name { |
||||
|
font-weight: bold; |
||||
|
} |
||||
|
|
||||
|
/** Fixture */ |
||||
|
|
||||
|
#qunit-fixture { |
||||
|
position: absolute; |
||||
|
top: -10000px; |
||||
|
left: -10000px; |
||||
|
width: 1000px; |
||||
|
height: 1000px; |
||||
|
} |
File diff suppressed because it is too large
@ -0,0 +1,62 @@ |
|||||
|
<!doctype html> |
||||
|
<html lang="en"> |
||||
|
|
||||
|
<head> |
||||
|
<meta charset="utf-8"> |
||||
|
|
||||
|
<title>reveal.js - Tests</title> |
||||
|
|
||||
|
<link rel="stylesheet" href="../css/reveal.min.css"> |
||||
|
<link rel="stylesheet" href="qunit-1.12.0.css"> |
||||
|
</head> |
||||
|
|
||||
|
<body> |
||||
|
|
||||
|
<div id="qunit"></div> |
||||
|
<div id="qunit-fixture"></div> |
||||
|
|
||||
|
<div class="reveal" style="display: none;"> |
||||
|
|
||||
|
<div class="slides"> |
||||
|
|
||||
|
<section> |
||||
|
<h1>1</h1> |
||||
|
</section> |
||||
|
|
||||
|
<section> |
||||
|
<section> |
||||
|
<h1>2.1</h1> |
||||
|
</section> |
||||
|
<section> |
||||
|
<h1>2.2</h1> |
||||
|
</section> |
||||
|
<section> |
||||
|
<h1>2.3</h1> |
||||
|
</section> |
||||
|
</section> |
||||
|
|
||||
|
<section> |
||||
|
<h1>4</h1> |
||||
|
<ul> |
||||
|
<li class="fragment">4.1</li> |
||||
|
<li class="fragment">4.2</li> |
||||
|
<li class="fragment">4.3</li> |
||||
|
</ul> |
||||
|
</section> |
||||
|
|
||||
|
<section> |
||||
|
<h1>4</h1> |
||||
|
</section> |
||||
|
|
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
|
||||
|
<script src="../lib/js/head.min.js"></script> |
||||
|
<script src="../js/reveal.min.js"></script> |
||||
|
<script src="qunit-1.12.0.js"></script> |
||||
|
|
||||
|
<script src="test.js"></script> |
||||
|
|
||||
|
</body> |
||||
|
</html> |
@ -0,0 +1,103 @@ |
|||||
|
|
||||
|
|
||||
|
Reveal.addEventListener( 'ready', function() { |
||||
|
|
||||
|
QUnit.module( 'API' ); |
||||
|
|
||||
|
test( 'Reveal.isReady', function() { |
||||
|
ok( Reveal.isReady() === true, 'returns true' ); |
||||
|
}); |
||||
|
|
||||
|
test( 'Reveal.isOverview', function() { |
||||
|
ok( Reveal.isOverview() === false, 'returns false' ); |
||||
|
|
||||
|
Reveal.toggleOverview(); |
||||
|
ok( Reveal.isOverview() === true, 'returns true after toggling on' ); |
||||
|
|
||||
|
Reveal.toggleOverview(); |
||||
|
ok( Reveal.isOverview() === false, 'returns false after toggling off' ); |
||||
|
}); |
||||
|
|
||||
|
test( 'Reveal.isPaused', function() { |
||||
|
ok( Reveal.isPaused() === false, 'returns false' ); |
||||
|
|
||||
|
Reveal.togglePause(); |
||||
|
ok( Reveal.isPaused() === true, 'returns true after pausing' ); |
||||
|
|
||||
|
Reveal.togglePause(); |
||||
|
ok( Reveal.isPaused() === false, 'returns false after resuming' ); |
||||
|
}); |
||||
|
|
||||
|
test( 'Reveal.isFirstSlide', function() { |
||||
|
Reveal.slide( 0 ); |
||||
|
ok( Reveal.isFirstSlide() === true, 'returns true' ); |
||||
|
|
||||
|
Reveal.slide( 1 ); |
||||
|
ok( Reveal.isFirstSlide() === false, 'returns false after navigation' ); |
||||
|
|
||||
|
Reveal.slide( 0 ); |
||||
|
ok( Reveal.isFirstSlide() === true, 'returns true after navigation' ); |
||||
|
}); |
||||
|
|
||||
|
test( 'Reveal.isLastSlide', function() { |
||||
|
Reveal.slide( 0 ); |
||||
|
ok( Reveal.isLastSlide() === false, 'returns false' ); |
||||
|
|
||||
|
Reveal.slide( document.querySelectorAll( '.reveal .slides>section' ).length - 1 ); |
||||
|
ok( Reveal.isLastSlide() === true, 'returns true after navigation' ); |
||||
|
|
||||
|
Reveal.slide( 0 ); |
||||
|
ok( Reveal.isLastSlide() === false, 'returns false after navigation' ); |
||||
|
}); |
||||
|
|
||||
|
test( 'Reveal.getIndices', function() { |
||||
|
var indices = Reveal.getIndices(); |
||||
|
|
||||
|
ok( typeof indices.hasOwnProperty( 'h' ), 'h exists' ); |
||||
|
ok( typeof indices.hasOwnProperty( 'v' ), 'v exists' ); |
||||
|
ok( typeof indices.hasOwnProperty( 'f' ), 'f exists' ); |
||||
|
|
||||
|
Reveal.slide( 1 ); |
||||
|
ok( Reveal.getIndices().h === 1 && Reveal.getIndices().v === 0, 'h 1, v 0' ); |
||||
|
|
||||
|
Reveal.slide( 1, 2 ); |
||||
|
ok( Reveal.getIndices().h === 1 && Reveal.getIndices().v === 2, 'h 1, v 2' ); |
||||
|
|
||||
|
Reveal.slide( 0 ); |
||||
|
}); |
||||
|
|
||||
|
test( 'Reveal.getScale', function() { |
||||
|
ok( typeof Reveal.getScale() === 'number', 'has scale' ); |
||||
|
}); |
||||
|
|
||||
|
test( 'Reveal.getConfig', function() { |
||||
|
ok( typeof Reveal.getConfig() === 'object', 'has config' ); |
||||
|
}); |
||||
|
|
||||
|
|
||||
|
QUnit.module( 'Events' ); |
||||
|
|
||||
|
asyncTest( 'slidechanged', function() { |
||||
|
expect( 1 ); |
||||
|
|
||||
|
var _onSlideChanged = function( event ) { |
||||
|
ok( true, 'event fired' ); |
||||
|
start(); |
||||
|
} |
||||
|
|
||||
|
Reveal.addEventListener( 'slidechanged', _onSlideChanged ); |
||||
|
|
||||
|
// Should trigger the event
|
||||
|
Reveal.slide( 1 ); |
||||
|
|
||||
|
// Should not trigger an event since it's the same #
|
||||
|
Reveal.slide( 1 ); |
||||
|
|
||||
|
Reveal.removeEventListener( 'slidechanged', _onSlideChanged ); |
||||
|
|
||||
|
}); |
||||
|
|
||||
|
} ); |
||||
|
|
||||
|
Reveal.initialize(); |
||||
|
|
Loading…
Reference in new issue