$('.dial li').waypoint( function(direction) {
- var $active = $(this);
- var property, value;
-
- /* The waypoint is triggered at the top of each list item representing a dial section. When triggering in the down direction we want to use the dial section the waypoint is attached to. But in the up direction we want to use the previous dial section. */
- if (direction === "up") {
- $active = $active.prev();
- }
-
- /* If we triggered in the up direction and the result from 'prev' came back with an empty set of elements, it means we were on the first element in the list, and we should just use the original element. */
- if (!$active.length) {
- $active = $(this);
- }
-
- /* The property the dial controls is a data attribute on the ul. */
- property = $active.closest('.dial').data('property');
-
- /* The value for that property is a data attribute on each li. */
- value = $active.data('value');
-
- $('#example-target').css(property, value);
-}, {
- context: 'ul' // Make the scroll context the nearest ul.
-});
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut mi eros, commodo vel porttitor vitae, facilisis eu quam. Suspendisse elementum nibh vel velit bibendum vitae accumsan sem pellentesque. Aliquam quis nisl in felis elementum facilisis. Suspendisse potenti. Suspendisse vel ligula erat, mollis sagittis tortor. Vestibulum lobortis rutrum sapien, id sodales leo hendrerit in. Nullam at risus et lectus mattis elementum. Aliquam porta dignissim leo id iaculis. Donec id magna turpis. Morbi convallis lacus gravida velit condimentum suscipit. Nunc dui ipsum, congue sit amet euismod in, aliquet quis mauris. Mauris quis libero a diam egestas gravida. Phasellus bibendum, sem quis vulputate consectetur, quam nulla feugiat sem, eu sodales mi velit a tellus.
-
-
Sed posuere pellentesque consequat. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Ut non faucibus lorem. Curabitur condimentum viverra lorem, eu suscipit mi vehicula ac. Mauris mattis, purus at vehicula ultricies, dolor quam tempus eros, in eleifend neque nulla at urna. Duis consequat faucibus pellentesque. Nulla facilisi. Maecenas id pellentesque sapien. Sed lobortis lectus vel nibh semper placerat. Pellentesque non diam lectus.
-
-
Suspendisse pellentesque tempor est a cursus. Aliquam molestie, neque vitae ullamcorper dictum, velit mi varius justo, id blandit mauris dui a felis. Curabitur tortor arcu, ornare in tempor sit amet, varius ac elit. Nullam eleifend cursus consectetur.
-
-
I’m an ad! (ID:8675309)
-
-
Proin enim odio, vulputate non lacinia ut, iaculis et nisl. Sed bibendum, nulla vitae vestibulum tempor, urna nisi ullamcorper tortor, ut lacinia elit sapien sit amet metus. Duis congue sollicitudin elit, egestas porta ante pharetra id. Fusce dictum fermentum eros vitae interdum. In a justo nunc. Phasellus vel mi ante. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vivamus ac turpis in mauris posuere eleifend.
Nulla ultrices pulvinar quam, et hendrerit turpis rutrum nec. Maecenas tortor ligula, ultricies eget sagittis fringilla, malesuada eu risus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur tempor, eros et aliquet congue, nunc nunc accumsan leo, sit amet ultrices magna sapien sit amet libero. Nunc iaculis diam non odio imperdiet nec aliquam sapien aliquet. Donec vulputate mi nec metus vehicula nec pretium orci accumsan. Cras non ante metus, eu interdum nulla. Morbi porttitor commodo varius. Integer vel nisi sit amet enim pellentesque convallis.
-
-
Sed vitae libero sem. Morbi vel tincidunt libero. Quisque suscipit adipiscing mauris eget vestibulum. Mauris euismod ante nec felis varius ultricies. Nam lacinia blandit hendrerit. Sed mattis tortor vitae tellus sodales tincidunt. Nulla tellus eros, fringilla nec posuere tincidunt, semper a odio. Mauris justo neque, placerat ac dictum lobortis, tempor vel arcu. Quisque a mi at lacus vestibulum placerat a eu leo. Sed pharetra metus vitae nisi molestie aliquam. Curabitur feugiat aliquet lorem et suscipit.
-
-
I’m an ad! (ID:5551234)
-
-
Fusce tincidunt tincidunt elit vitae pulvinar. Ut id magna ut massa faucibus vehicula. Nunc rutrum eros quis nunc hendrerit porta. Nullam porttitor eleifend mauris, eget interdum velit rutrum egestas. Sed iaculis eros at mauris ultricies fermentum. Duis nec nunc ut leo cursus luctus eget ac nisl. Sed condimentum euismod nulla, ut auctor lectus fringilla sit amet. Proin ac magna eros, nec euismod nibh. Integer tellus velit, accumsan ut vulputate quis, vehicula sit amet urna. Aliquam ornare libero vitae ipsum pellentesque quis consequat mi varius. Aliquam a urna a nunc tristique volutpat. Nulla eu mi sit amet dolor dapibus bibendum. Aenean commodo, enim non tristique ultrices, nisi dolor rhoncus metus, ac porta tortor felis at quam. Donec a dui felis. Etiam id aliquam tortor.
-
-
Suspendisse a rutrum purus.
-
-
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Donec in quam metus, sed pharetra nisi. Nunc lacinia arcu eget eros molestie blandit.
-
-
Ut at sem ut nibh molestie tempus. Nunc volutpat malesuada massa, vel auctor odio consequat consectetur. Suspendisse scelerisque nunc non quam suscipit vestibulum. Aliquam eu turpis sem, non ultrices tellus. Pellentesque vel velit lectus, a imperdiet arcu. Vivamus et turpis in libero consectetur gravida non id massa. Morbi ut urna mi. Phasellus pellentesque congue porttitor.
-
-
Vivamus eu dolor urna, vel malesuada orci. Vivamus pellentesque tellus non tortor scelerisque consequat. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Pellentesque lacinia nibh consequat purus lobortis pretium. Sed lobortis fringilla auctor. Aliquam erat volutpat. Maecenas mollis lorem quis mauris pharetra non posuere dui luctus.
-
-
Fusce tempor magna et metus rutrum volutpat. In pellentesque enim nec augue pretium egestas. Pellentesque viverra mauris eget enim rutrum sagittis vulputate ligula lobortis. Integer bibendum porttitor turpis at adipiscing. Nulla vulputate, ligula id adipiscing pharetra, lectus magna varius elit.
-
-
A feugiat nisi nulla ut lorem. Etiam eu dui vitae erat molestie dignissim lacinia ac quam. Cras bibendum consequat risus sed tristique. Morbi mattis ultrices eros id iaculis. Maecenas vel euismod tellus. Aenean aliquet rhoncus quam ut gravida. Sed faucibus metus tellus, vitae suscipit neque. Morbi et odio vitae sem tempor eleifend. Praesent sagittis, magna sit amet commodo convallis, nibh lectus blandit sapien, vel congue lorem purus vitae magna. Curabitur velit metus, lacinia eu rhoncus at, facilisis eget est. Curabitur metus augue, ultricies id vehicula eget, tempor dignissim ipsum.
-
-
-
-
I’m an ad! (ID:21)
-
-
Related Posts
-
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
Lorem
-
-
-
A feugiat nisi nulla ut lorem. Etiam eu dui vitae erat molestie dignissim lacinia ac quam. Cras bibendum consequat risus sed tristique. Morbi mattis ultrices eros id iaculis. Maecenas vel euismod tellus. Aenean aliquet rhoncus quam ut gravida. Sed faucibus metus tellus, vitae suscipit neque. Morbi et odio vitae sem tempor eleifend. Praesent sagittis, magna sit amet commodo convallis, nibh lectus blandit sapien, vel congue lorem purus vitae magna. Curabitur velit metus, lacinia eu rhoncus at, facilisis eget est. Curabitur metus augue, ultricies id vehicula eget, tempor dignissim ipsum.
-
-
I’m an ad! (ID:12345)
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/shortcuts/infinite-scroll/waypoints-infinite.js b/lib/waypoints-infinite.js
similarity index 100%
rename from shortcuts/infinite-scroll/waypoints-infinite.js
rename to lib/waypoints-infinite.js
diff --git a/shortcuts/sticky-elements/waypoints-sticky.js b/lib/waypoints-sticky.js
similarity index 100%
rename from shortcuts/sticky-elements/waypoints-sticky.js
rename to lib/waypoints-sticky.js
diff --git a/waypoints.js b/lib/waypoints.js
similarity index 100%
rename from waypoints.js
rename to lib/waypoints.js
diff --git a/shortcuts/infinite-scroll/waypoints-infinite.min.js b/shortcuts/infinite-scroll/waypoints-infinite.min.js
deleted file mode 100644
index 006f4f02..00000000
--- a/shortcuts/infinite-scroll/waypoints-infinite.min.js
+++ /dev/null
@@ -1,8 +0,0 @@
-// Generated by CoffeeScript 1.6.2
-/*
-Infinite Scroll Shortcut for jQuery Waypoints - v2.0.5
-Copyright (c) 2011-2014 Caleb Troughton
-Licensed under the MIT license.
-https://github.com/imakewebthings/jquery-waypoints/blob/master/licenses.txt
-*/
-(function(){(function(n,e){if(typeof define==="function"&&define.amd){return define(["jquery","waypoints"],e)}else{return e(n.jQuery)}})(window,function(n){var e;e={container:"auto",items:".infinite-item",more:".infinite-more-link",offset:"bottom-in-view",loadingClass:"infinite-loading",onBeforePageLoad:n.noop,onAfterPageLoad:n.noop};return n.waypoints("extendFn","infinite",function(t){var i,o;o=n.extend({},n.fn.waypoint.defaults,e,t);if(n(o.more).length===0){return this}i=o.container==="auto"?this:n(o.container);o.handler=function(e){var t;if(e==="down"||e==="right"){t=n(this);o.onBeforePageLoad();t.waypoint("destroy");i.addClass(o.loadingClass);return n.get(n(o.more).attr("href"),function(e){var r,a,f,s;r=n(n.parseHTML(e));a=n(o.more);f=r.find(o.more);i.append(r.find(o.items));i.removeClass(o.loadingClass);if(f.length){a.replaceWith(f);s=function(){return t.waypoint(o)};setTimeout(s,0)}else{a.remove()}return o.onAfterPageLoad()})}};return this.waypoint(o)})})}).call(this);
\ No newline at end of file
diff --git a/shortcuts/sticky-elements/waypoints-sticky.min.js b/shortcuts/sticky-elements/waypoints-sticky.min.js
deleted file mode 100644
index c3d01d36..00000000
--- a/shortcuts/sticky-elements/waypoints-sticky.min.js
+++ /dev/null
@@ -1,8 +0,0 @@
-// Generated by CoffeeScript 1.6.2
-/*
-Sticky Elements Shortcut for jQuery Waypoints - v2.0.5
-Copyright (c) 2011-2014 Caleb Troughton
-Licensed under the MIT license.
-https://github.com/imakewebthings/jquery-waypoints/blob/master/licenses.txt
-*/
-(function(){(function(t,n){if(typeof define==="function"&&define.amd){return define(["jquery","waypoints"],n)}else{return n(t.jQuery)}})(window,function(t){var n,i;n={wrapper:'',stuckClass:"stuck",direction:"down right"};i=function(t,n){var i;t.wrap(n.wrapper);i=t.parent();return i.data("isWaypointStickyWrapper",true)};t.waypoints("extendFn","sticky",function(r){var e,a,s;a=t.extend({},t.fn.waypoint.defaults,n,r);e=i(this,a);s=a.handler;a.handler=function(n){var i,r;i=t(this).children(":first");r=a.direction.indexOf(n)!==-1;i.toggleClass(a.stuckClass,r);e.height(r?i.outerHeight():"");if(s!=null){return s.call(this,n)}};e.waypoint(a);return this.data("stuckClass",a.stuckClass)});return t.waypoints("extendFn","unsticky",function(){var t;t=this.parent();if(!t.data("isWaypointStickyWrapper")){return this}t.waypoint("destroy");this.unwrap();return this.removeClass(this.data("stuckClass"))})})}).call(this);
\ No newline at end of file
diff --git a/shortcuts/infinite-scroll/index.html b/src/shortcuts/infinite-scroll/index.html
similarity index 100%
rename from shortcuts/infinite-scroll/index.html
rename to src/shortcuts/infinite-scroll/index.html
diff --git a/shortcuts/infinite-scroll/waypoints-infinite.coffee b/src/shortcuts/infinite-scroll/waypoints-infinite.coffee
similarity index 100%
rename from shortcuts/infinite-scroll/waypoints-infinite.coffee
rename to src/shortcuts/infinite-scroll/waypoints-infinite.coffee
diff --git a/shortcuts/sticky-elements/index.html b/src/shortcuts/sticky-elements/index.html
similarity index 100%
rename from shortcuts/sticky-elements/index.html
rename to src/shortcuts/sticky-elements/index.html
diff --git a/shortcuts/sticky-elements/waypoints-sticky.coffee b/src/shortcuts/sticky-elements/waypoints-sticky.coffee
similarity index 100%
rename from shortcuts/sticky-elements/waypoints-sticky.coffee
rename to src/shortcuts/sticky-elements/waypoints-sticky.coffee
diff --git a/waypoints.coffee b/src/waypoints.coffee
similarity index 100%
rename from waypoints.coffee
rename to src/waypoints.coffee
diff --git a/waypoints.min.js b/waypoints.min.js
deleted file mode 100644
index b9098f82..00000000
--- a/waypoints.min.js
+++ /dev/null
@@ -1,8 +0,0 @@
-// Generated by CoffeeScript 1.6.2
-/*!
-jQuery Waypoints - v2.0.5
-Copyright (c) 2011-2014 Caleb Troughton
-Licensed under the MIT license.
-https://github.com/imakewebthings/jquery-waypoints/blob/master/licenses.txt
-*/
-(function(){var t=[].indexOf||function(t){for(var e=0,n=this.length;e=0;s={horizontal:{},vertical:{}};f=1;c={};u="waypoints-context-id";p="resize.waypoints";y="scroll.waypoints";v=1;w="waypoints-waypoint-ids";g="waypoint";m="waypoints";o=function(){function t(t){var e=this;this.$element=t;this.element=t[0];this.didResize=false;this.didScroll=false;this.id="context"+f++;this.oldScroll={x:t.scrollLeft(),y:t.scrollTop()};this.waypoints={horizontal:{},vertical:{}};this.element[u]=this.id;c[this.id]=this;t.bind(y,function(){var t;if(!(e.didScroll||a)){e.didScroll=true;t=function(){e.doScroll();return e.didScroll=false};return r.setTimeout(t,n[m].settings.scrollThrottle)}});t.bind(p,function(){var t;if(!e.didResize){e.didResize=true;t=function(){n[m]("refresh");return e.didResize=false};return r.setTimeout(t,n[m].settings.resizeThrottle)}})}t.prototype.doScroll=function(){var t,e=this;t={horizontal:{newScroll:this.$element.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.$element.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}};if(a&&(!t.vertical.oldScroll||!t.vertical.newScroll)){n[m]("refresh")}n.each(t,function(t,r){var i,o,l;l=[];o=r.newScroll>r.oldScroll;i=o?r.forward:r.backward;n.each(e.waypoints[t],function(t,e){var n,i;if(r.oldScroll<(n=e.offset)&&n<=r.newScroll){return l.push(e)}else if(r.newScroll<(i=e.offset)&&i<=r.oldScroll){return l.push(e)}});l.sort(function(t,e){return t.offset-e.offset});if(!o){l.reverse()}return n.each(l,function(t,e){if(e.options.continuous||t===l.length-1){return e.trigger([i])}})});return this.oldScroll={x:t.horizontal.newScroll,y:t.vertical.newScroll}};t.prototype.refresh=function(){var t,e,r,i=this;r=n.isWindow(this.element);e=this.$element.offset();this.doScroll();t={horizontal:{contextOffset:r?0:e.left,contextScroll:r?0:this.oldScroll.x,contextDimension:this.$element.width(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:r?0:e.top,contextScroll:r?0:this.oldScroll.y,contextDimension:r?n[m]("viewportHeight"):this.$element.height(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};return n.each(t,function(t,e){return n.each(i.waypoints[t],function(t,r){var i,o,l,s,f;i=r.options.offset;l=r.offset;o=n.isWindow(r.element)?0:r.$element.offset()[e.offsetProp];if(n.isFunction(i)){i=i.apply(r.element)}else if(typeof i==="string"){i=parseFloat(i);if(r.options.offset.indexOf("%")>-1){i=Math.ceil(e.contextDimension*i/100)}}r.offset=o-e.contextOffset+e.contextScroll-i;if(r.options.onlyOnScroll&&l!=null||!r.enabled){return}if(l!==null&&l<(s=e.oldScroll)&&s<=r.offset){return r.trigger([e.backward])}else if(l!==null&&l>(f=e.oldScroll)&&f>=r.offset){return r.trigger([e.forward])}else if(l===null&&e.oldScroll>=r.offset){return r.trigger([e.forward])}})})};t.prototype.checkEmpty=function(){if(n.isEmptyObject(this.waypoints.horizontal)&&n.isEmptyObject(this.waypoints.vertical)){this.$element.unbind([p,y].join(" "));return delete c[this.id]}};return t}();l=function(){function t(t,e,r){var i,o;if(r.offset==="bottom-in-view"){r.offset=function(){var t;t=n[m]("viewportHeight");if(!n.isWindow(e.element)){t=e.$element.height()}return t-n(this).outerHeight()}}this.$element=t;this.element=t[0];this.axis=r.horizontal?"horizontal":"vertical";this.callback=r.handler;this.context=e;this.enabled=r.enabled;this.id="waypoints"+v++;this.offset=null;this.options=r;e.waypoints[this.axis][this.id]=this;s[this.axis][this.id]=this;i=(o=this.element[w])!=null?o:[];i.push(this.id);this.element[w]=i}t.prototype.trigger=function(t){if(!this.enabled){return}if(this.callback!=null){this.callback.apply(this.element,t)}if(this.options.triggerOnce){return this.destroy()}};t.prototype.disable=function(){return this.enabled=false};t.prototype.enable=function(){this.context.refresh();return this.enabled=true};t.prototype.destroy=function(){delete s[this.axis][this.id];delete this.context.waypoints[this.axis][this.id];return this.context.checkEmpty()};t.getWaypointsByElement=function(t){var e,r;r=t[w];if(!r){return[]}e=n.extend({},s.horizontal,s.vertical);return n.map(r,function(t){return e[t]})};return t}();d={init:function(t,e){var r;e=n.extend({},n.fn[g].defaults,e);if((r=e.handler)==null){e.handler=t}this.each(function(){var t,r,i,s;t=n(this);i=(s=e.context)!=null?s:n.fn[g].defaults.context;if(!n.isWindow(i)){i=t.closest(i)}i=n(i);r=c[i[0][u]];if(!r){r=new o(i)}return new l(t,r,e)});n[m]("refresh");return this},disable:function(){return d._invoke.call(this,"disable")},enable:function(){return d._invoke.call(this,"enable")},destroy:function(){return d._invoke.call(this,"destroy")},prev:function(t,e){return d._traverse.call(this,t,e,function(t,e,n){if(e>0){return t.push(n[e-1])}})},next:function(t,e){return d._traverse.call(this,t,e,function(t,e,n){if(e<=t.oldScroll.y})},below:function(t){if(t==null){t=r}return h._filter(t,"vertical",function(t,e){return e.offset>t.oldScroll.y})},left:function(t){if(t==null){t=r}return h._filter(t,"horizontal",function(t,e){return e.offset<=t.oldScroll.x})},right:function(t){if(t==null){t=r}return h._filter(t,"horizontal",function(t,e){return e.offset>t.oldScroll.x})},enable:function(){return h._invoke("enable")},disable:function(){return h._invoke("disable")},destroy:function(){return h._invoke("destroy")},extendFn:function(t,e){return d[t]=e},_invoke:function(t){var e;e=n.extend({},s.vertical,s.horizontal);return n.each(e,function(e,n){n[t]();return true})},_filter:function(t,e,r){var i,o;i=c[n(t)[0][u]];if(!i){return[]}o=[];n.each(i.waypoints[e],function(t,e){if(r(i,e)){return o.push(e)}});o.sort(function(t,e){return t.offset-e.offset});return n.map(o,function(t){return t.element})}};n[m]=function(){var t,n;n=arguments[0],t=2<=arguments.length?e.call(arguments,1):[];if(h[n]){return h[n].apply(null,t)}else{return h.aggregate.call(null,n)}};n[m].settings={resizeThrottle:100,scrollThrottle:30};return i.on("load.waypoints",function(){return n[m]("refresh")})})}).call(this);
\ No newline at end of file
From b4076e6f4b318e52a843646543b6f5bd9fb088f2 Mon Sep 17 00:00:00 2001
From: imakewebthings
Date: Sat, 17 May 2014 13:09:52 -0700
Subject: [PATCH 02/98] Move to testem without CoffeeScript
---
.gitignore | 3 +-
bower.json | 9 +
gulpfile.js | 12 +
package.json | 9 +-
test/fixtures/standard.html | 86 ++--
test/index.html | 58 ++-
test/settings.js | 1 +
test/waypoints-spec.js | 828 ++++++++++++++++++++++++++++++++++++
testem.json | 18 +
9 files changed, 957 insertions(+), 67 deletions(-)
create mode 100644 bower.json
create mode 100644 gulpfile.js
create mode 100644 test/settings.js
create mode 100644 test/waypoints-spec.js
create mode 100644 testem.json
diff --git a/.gitignore b/.gitignore
index 23246a9e..9e539ac7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,4 +2,5 @@
.DS_Store
/style.scss
*.gz
-node_modules
\ No newline at end of file
+node_modules
+bower_components
diff --git a/bower.json b/bower.json
new file mode 100644
index 00000000..1b5d872a
--- /dev/null
+++ b/bower.json
@@ -0,0 +1,9 @@
+{
+ "name": "waypoints",
+ "private": true,
+ "devDependencies": {
+ "jquery": "~1.11.1",
+ "lodash": "~2.4.1",
+ "jasmine-jquery": "~1.7.0"
+ }
+}
diff --git a/gulpfile.js b/gulpfile.js
new file mode 100644
index 00000000..610b2eaa
--- /dev/null
+++ b/gulpfile.js
@@ -0,0 +1,12 @@
+var gulp = require('gulp')
+var mochaPhantomJS = require('gulp-mocha-phantomjs')
+
+gulp.task('test', function() {
+ return gulp.src('test/index.html').pipe(mochaPhantomJS({
+ reporter: 'tap'
+ }))
+})
+
+gulp.task('watch-test', function() {
+ gulp.watch(['lib/**', 'test/**'], ['test'])
+})
diff --git a/package.json b/package.json
index e184938a..ead9dd04 100644
--- a/package.json
+++ b/package.json
@@ -3,6 +3,10 @@
"version": "2.0.5",
"author": "Caleb Troughton ",
"description": "A jQuery plugin that makes it easy to execute a function whenever you scroll to an element.",
+ "scripts": {
+ "test": "testem ci",
+ "tdd": "testem"
+ },
"repository": {
"type": "git",
"url": "https://github.com/imakewebthings/jquery-waypoints.git"
@@ -12,8 +16,7 @@
"scroll"
],
"devDependencies": {
- "coffee-script": "1.6.2",
- "uglify-js" : "2.2.5"
- },
+ "gulp": "^3.6.2"
+ },
"license": "MIT"
}
diff --git a/test/fixtures/standard.html b/test/fixtures/standard.html
index 7dbdb829..ec52c039 100644
--- a/test/fixtures/standard.html
+++ b/test/fixtures/standard.html
@@ -1,79 +1,79 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
+
diff --git a/test/index.html b/test/index.html
index 496ef7e4..046df371 100644
--- a/test/index.html
+++ b/test/index.html
@@ -1,26 +1,44 @@
-
+
- Jasmine Test Runner
-
-
-
-
-
-
-
+
+
+
+Waypoints Test Runner (Mocha)
+
+
+
-
-
-
-
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+