From b1e8cb0fea8d3c46ab2dc3d4b405028f74c47666 Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Sun, 16 Mar 2014 07:34:59 -0500
Subject: [PATCH 01/39] tweaked travis.yml
---
.travis.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index 2a45d4373..da5ee4283 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -7,5 +7,5 @@ node_js:
- 0.8
branches:
- only:
- - dev
\ No newline at end of file
+ only:
+ - master
\ No newline at end of file
From 042b04883f48675d40a904de96bc645bce3175ab Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Sun, 16 Mar 2014 07:38:17 -0500
Subject: [PATCH 02/39] adding grunt-cli to travis build
---
.travis.yml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/.travis.yml b/.travis.yml
index da5ee4283..e8dfeb2f0 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,6 +6,9 @@ node_js:
- 0.9
- 0.8
+before_script:
+ - npm install -g grunt-cli
+
branches:
only:
- master
\ No newline at end of file
From cd74c95d9c403a3e6f2165761fd72bfb9781a9b8 Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Sun, 16 Mar 2014 07:54:23 -0500
Subject: [PATCH 03/39] getting close with travis
---
.travis.yml | 3 +++
Gruntfile.js | 5 +++++
test/{text.html => tests.html} | 0
3 files changed, 8 insertions(+)
rename test/{text.html => tests.html} (100%)
diff --git a/.travis.yml b/.travis.yml
index e8dfeb2f0..7c5c97c46 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,6 +6,9 @@ node_js:
- 0.9
- 0.8
+before_install:
+ - phantomjs --version
+
before_script:
- npm install -g grunt-cli
diff --git a/Gruntfile.js b/Gruntfile.js
index eba8d3bb0..a57a044e5 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -66,6 +66,11 @@ module.exports = function(grunt) {
}
},
qunit: {
+ all:{
+ options:{
+ urls: ['./test/tests.html']
+ }
+ }
files: ["./test/tests.js"]
}
});
diff --git a/test/text.html b/test/tests.html
similarity index 100%
rename from test/text.html
rename to test/tests.html
From 87dab82e63e838a1e52b0fc7a22f628b509cc827 Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Sun, 16 Mar 2014 07:56:41 -0500
Subject: [PATCH 04/39] typo
---
Gruntfile.js | 1 -
1 file changed, 1 deletion(-)
diff --git a/Gruntfile.js b/Gruntfile.js
index a57a044e5..86c0ab950 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -71,7 +71,6 @@ module.exports = function(grunt) {
urls: ['./test/tests.html']
}
}
- files: ["./test/tests.js"]
}
});
From a69b0c6708366d8c6f6b1054651f648951c4419b Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Sun, 16 Mar 2014 08:05:54 -0500
Subject: [PATCH 05/39] added the build status badge to the readme
also updated the roadmap
---
README.md | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/README.md b/README.md
index be6a9642e..452ce4fd6 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,5 @@
+[![Build Status](https://travis-ci.org/pattern-lab/patternlab-node.png?branch=master)](https://travis-ci.org/pattern-lab/patternlab-node)
+
## About the Node Version of Pattern Lab
The Node version of Pattern Lab is, at its core, a static site generator. It combines platform-agnostic assets, like the [Mustache](http://mustache.github.io/)-based patterns and the JavaScript-based viewer, with a Node-based "builder" that transforms and dynamically builds the Pattern Lab site. By making it a static site generator, the Node version of Pattern Lab strongly separates patterns, data, and presentation from build logic. The Node version is a work in progress, the [PHP version](https://github.com/pattern-lab/patternlab-php) should be seen as a reference for other developers to improve upon as they build their own Pattern Lab Builders in their language of choice.
@@ -23,9 +25,9 @@ To have patternlab-node watch for changes to either a mustache template, data, o
Patternlab Node has reached [minimum viable product](http://en.wikipedia.org/wiki/Minimum_viable_product) status. The main branch will always have the most up to date version of patternlab-node. Watch the dev branch for what it coming next!
#### Roadmap
-* Full Patternlab site support. (This is the uber cool navigation found at [demo.pattern-lab.info](http://demo.pattern-lab.info)).
-* More Documentation
-* Tests
+* DRY & Testing.
+* Lineage
+* Documentation
**THE FOLLOWING IS FROM THE PATTERNLAB-PHP PROJECT. A LOT STILL APPLIES TO PATTERNLAB-NODE, BUT IT HAS NOT BEEN ADAPTED YET. USE AT YOUR OWN PERIL**
From 33a842e986a4b3f3a90ff6946b8dacb8c2f127dc Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Sun, 16 Mar 2014 08:07:07 -0500
Subject: [PATCH 06/39] moved the badge
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 452ce4fd6..65ef4d724 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-[![Build Status](https://travis-ci.org/pattern-lab/patternlab-node.png?branch=master)](https://travis-ci.org/pattern-lab/patternlab-node)
+
## About the Node Version of Pattern Lab
@@ -6,7 +6,7 @@ The Node version of Pattern Lab is, at its core, a static site generator. It com
## Under Active Development
-The Node version of Pattern Lab is under active development by [@bmuenzenmeyer](https://twitter.com/bmuenzenmeyer). Contributions welcome!
+The Node version of Pattern Lab is under active development by [@bmuenzenmeyer](https://twitter.com/bmuenzenmeyer). [![Build Status](https://travis-ci.org/pattern-lab/patternlab-node.png?branch=master)](https://travis-ci.org/pattern-lab/patternlab-node) Contributions welcome!
### Getting Started
From 8edfe791da159158f8b879f4578cdb596f17db8c Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Sun, 16 Mar 2014 08:08:56 -0500
Subject: [PATCH 07/39] last move
---
README.md | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/README.md b/README.md
index 65ef4d724..052f2a202 100644
--- a/README.md
+++ b/README.md
@@ -1,12 +1,10 @@
-
-
## About the Node Version of Pattern Lab
The Node version of Pattern Lab is, at its core, a static site generator. It combines platform-agnostic assets, like the [Mustache](http://mustache.github.io/)-based patterns and the JavaScript-based viewer, with a Node-based "builder" that transforms and dynamically builds the Pattern Lab site. By making it a static site generator, the Node version of Pattern Lab strongly separates patterns, data, and presentation from build logic. The Node version is a work in progress, the [PHP version](https://github.com/pattern-lab/patternlab-php) should be seen as a reference for other developers to improve upon as they build their own Pattern Lab Builders in their language of choice.
## Under Active Development
-The Node version of Pattern Lab is under active development by [@bmuenzenmeyer](https://twitter.com/bmuenzenmeyer). [![Build Status](https://travis-ci.org/pattern-lab/patternlab-node.png?branch=master)](https://travis-ci.org/pattern-lab/patternlab-node) Contributions welcome!
+[![Build Status](https://travis-ci.org/pattern-lab/patternlab-node.png?branch=master)](https://travis-ci.org/pattern-lab/patternlab-node) The Node version of Pattern Lab is under active development by [@bmuenzenmeyer](https://twitter.com/bmuenzenmeyer). Contributions welcome!
### Getting Started
From 907738738a4c028d9f02ae22e05434be7713bd9f Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Mon, 17 Mar 2014 22:32:23 -0500
Subject: [PATCH 08/39] remove view all code
fixes #2
---
builder/patternlab.js | 34 ----------------------------------
1 file changed, 34 deletions(-)
diff --git a/builder/patternlab.js b/builder/patternlab.js
index 7baedf008..7100c1f2f 100644
--- a/builder/patternlab.js
+++ b/builder/patternlab.js
@@ -286,40 +286,6 @@ module.exports = function(grunt) {
}
- //check to see if this bucket has a View All yet. If not, add it.
- // var navItem = bucket.navItems[navItemIndex];
- // if(navItem){
- // var hasViewAll = navItem.navSubItemsIndex.indexOf('View All');
- // if(hasViewAll === -1){
- // console.log('add a view all pattern');
-
- // var navSubItem = new oNavSubItem('View All');
- // navSubItem.patternPath = pattern.flatPatternPath + '/index.html'; //this is likely wrong
- // navSubItem.patternPartial = 'viewall-' + bucketName + '-' + pattern.patternSubGroup;
-
- // //add the navSubItem
- // console.log(navSubItem);
- // navItem.navSubItems.push(navSubItem);
- // navItem.navSubItemsIndex.push('View All');
- // }
- // }
- }
-
- //VIEW ALL LOGIC CAN LOOP THROUGH PATTERNS TOO
- //only add if it's an atom, molecule, or organism
- // if(pattern.patternGroup === 'atoms' || pattern.patternGroup === 'molecules' || pattern.patternGroup === 'organisms'){
- // if(patternlab.viewAllPaths[pattern.patternGroup]){
-
- // //add the pattern sub-group
- // patternlab.viewAllPaths[pattern.patternGroup][pattern.patternSubGroup] = pattern.flatPatternPath;
- // }
- // else{
- // //add the new group then the subgroup
- // patternlab.viewAllPaths[pattern.patternGroup] = {};
- // patternlab.viewAllPaths[pattern.patternGroup][pattern.patternSubGroup] = pattern.flatPatternPath;
- // }
- // }
-
};
//the patternlab site requires a lot of partials to be rendered.
From dd6c651af052acd7fac1e2b606b1efb92a2b10ad Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Sat, 19 Apr 2014 15:13:13 -0500
Subject: [PATCH 09/39] contributing file
---
CHANGELOG | 6 ++++++
CONTRIBUTING.md | 8 ++++++++
Gruntfile.js | 5 ++++-
README.md | 13 ++++---------
builder/patternlab.js | 15 ++++++++++-----
package.json | 5 +++--
6 files changed, 35 insertions(+), 17 deletions(-)
create mode 100644 CONTRIBUTING.md
diff --git a/CHANGELOG b/CHANGELOG
index 36748fa97..12fea0c27 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,11 @@
THIS CHANGELOG IS AN ATTEMPT TO DOCUMENT CHANGES TO THIS PROJECT.
+PL-node-v0.1.1
+ - FIX: Removed View All Pattern SubItem Link Logic, no longer in reference implementation
+ - ADD: Flag for generating debug file
+ - ADD: Travis CI test support!
+ - ADD: Contributing file
+
PL-node-v0.1.0
- FIX: Links to patterns did not work when visited from a server
- FIX: Patterns with hyphens in the name were breaking the iframe messaging
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 000000000..fc94f2124
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,8 @@
+#Contributing to Patternlab - Node
+If you'd like to contribute to patternlab - node, please do so! There is always a lot of ground to cover, with patternlab - php being so feature-rich.
+
+No pull request is too small.
+
+##Guidelines
+1. Please keep your pull requests concise
+2. _ALWAYS_ submit it against the [dev branch](https://github.com/pattern-lab/patternlab-node/tree/dev). If this does not occur, I will first, try to redirect you gently, second, port over your contribution manually if time allows, and/or third, close your pull request.
\ No newline at end of file
diff --git a/Gruntfile.js b/Gruntfile.js
index 86c0ab950..99b5969ef 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -3,7 +3,10 @@ module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
- clean: ['./public/patterns'],
+ clean: {
+ options: { force: true },
+ files: ['./public/patterns']
+ },
concat: {
options: {
stripBanners: true,
diff --git a/README.md b/README.md
index 052f2a202..a156c6782 100644
--- a/README.md
+++ b/README.md
@@ -2,10 +2,6 @@
The Node version of Pattern Lab is, at its core, a static site generator. It combines platform-agnostic assets, like the [Mustache](http://mustache.github.io/)-based patterns and the JavaScript-based viewer, with a Node-based "builder" that transforms and dynamically builds the Pattern Lab site. By making it a static site generator, the Node version of Pattern Lab strongly separates patterns, data, and presentation from build logic. The Node version is a work in progress, the [PHP version](https://github.com/pattern-lab/patternlab-php) should be seen as a reference for other developers to improve upon as they build their own Pattern Lab Builders in their language of choice.
-## Under Active Development
-
-[![Build Status](https://travis-ci.org/pattern-lab/patternlab-node.png?branch=master)](https://travis-ci.org/pattern-lab/patternlab-node) The Node version of Pattern Lab is under active development by [@bmuenzenmeyer](https://twitter.com/bmuenzenmeyer). Contributions welcome!
-
### Getting Started
To run patternlab-node, just do the following from the command line at the root of patternlab-node:
@@ -18,15 +14,14 @@ This creates all patterns, the styleguide, and the patternlab site. `patternlab.
To have patternlab-node watch for changes to either a mustache template, data, or stylesheets, run `grunt watch`. The `Gruntfile` governs what is watched. It should be easy to add scss or whatever preprocessor you fancy.
+### Under Active Development
+
+[![Build Status](https://travis-ci.org/pattern-lab/patternlab-node.png?branch=master)](https://travis-ci.org/pattern-lab/patternlab-node) The Node version of Pattern Lab is under active development by [@bmuenzenmeyer](https://twitter.com/bmuenzenmeyer). Contributions welcome, but please take a moment to read the [guidelines](https://github.com/pattern-lab/patternlab-node/blob/master/CONTRIBUTING.md).
+
#### Watching Progress
Patternlab Node has reached [minimum viable product](http://en.wikipedia.org/wiki/Minimum_viable_product) status. The main branch will always have the most up to date version of patternlab-node. Watch the dev branch for what it coming next!
-#### Roadmap
-* DRY & Testing.
-* Lineage
-* Documentation
-
**THE FOLLOWING IS FROM THE PATTERNLAB-PHP PROJECT. A LOT STILL APPLIES TO PATTERNLAB-NODE, BUT IT HAS NOT BEEN ADAPTED YET. USE AT YOUR OWN PERIL**
diff --git a/builder/patternlab.js b/builder/patternlab.js
index 7100c1f2f..9d29c0a5f 100644
--- a/builder/patternlab.js
+++ b/builder/patternlab.js
@@ -1,5 +1,5 @@
/*
- * patternlab-node - v0.1.0 - 2014-01-21
+ * patternlab-node - v0.1.1 - 2014-04-18
*
* Brian Muenzenmeyer, and the web community.
* Licensed under the MIT license.
@@ -57,7 +57,9 @@ var mustache = require('./lib/Mustache/mustache.js');
module.exports = function(grunt) {
grunt.registerTask('patternlab', 'create design systems with atomic design', function(arg) {
+
var patternlab = {};
+ patternlab.package = grunt.file.readJSON('package.json');
patternlab.data = grunt.file.readJSON('./source/_data/data.json');
patternlab.listitems = grunt.file.readJSON('./source/_data/listitems.json');
patternlab.header = grunt.file.read('./source/_patternlab-files/pattern-header-footer/header.html');
@@ -286,6 +288,8 @@ module.exports = function(grunt) {
}
+ }
+
};
//the patternlab site requires a lot of partials to be rendered.
@@ -323,9 +327,10 @@ module.exports = function(grunt) {
});
grunt.file.write('./public/index.html', patternlabSiteHtml);
- //debug
- var outputFilename = './patternlab.json';
- grunt.file.write(outputFilename, JSON.stringify(patternlab, null, 3));
-
+ //debug file can be written by setting flag on package.json
+ if(patternlab.package.debug){
+ var outputFilename = './patternlab.json';
+ grunt.file.write(outputFilename, JSON.stringify(patternlab, null, 3));
+ }
});
};
\ No newline at end of file
diff --git a/package.json b/package.json
index 154533263..677a0466a 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "patternlab-node",
"description": "Pattern Lab is a collection of tools to help you create atomic design systems. This is the node command line interface (CLI).",
- "version": "0.1.0",
+ "version": "0.1.1",
"devDependencies": {
"grunt": "~0.4.0",
"grunt-contrib-watch": "~0.2.0",
@@ -27,5 +27,6 @@
},
"engines": {
"node": ">=0.8"
- }
+ },
+ "debug": false
}
From d7e4ec24e333caee81abae95ed392c5d1da6c7dc Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Mon, 5 May 2014 23:04:01 -0500
Subject: [PATCH 10/39] updated readme
mentions to spec
---
README.md | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/README.md b/README.md
index a156c6782..35cc5eb14 100644
--- a/README.md
+++ b/README.md
@@ -10,17 +10,22 @@ To run patternlab-node, just do the following from the command line at the root
2. `npm install -g grunt-cli`
3. `grunt`
-This creates all patterns, the styleguide, and the patternlab site. `patternlab.json` is a file created for debugging purposes. It tells you all the secrets in tidy json.
+This creates all patterns, the styleguide, and the pattern lab site. `patternlab.json` is a file created for debugging purposes. It tells you all the secrets in tidy json.
To have patternlab-node watch for changes to either a mustache template, data, or stylesheets, run `grunt watch`. The `Gruntfile` governs what is watched. It should be easy to add scss or whatever preprocessor you fancy.
### Under Active Development
-[![Build Status](https://travis-ci.org/pattern-lab/patternlab-node.png?branch=master)](https://travis-ci.org/pattern-lab/patternlab-node) The Node version of Pattern Lab is under active development by [@bmuenzenmeyer](https://twitter.com/bmuenzenmeyer). Contributions welcome, but please take a moment to read the [guidelines](https://github.com/pattern-lab/patternlab-node/blob/master/CONTRIBUTING.md).
+[![Build Status](https://travis-ci.org/pattern-lab/patternlab-node.png?branch=master)](https://travis-ci.org/pattern-lab/patternlab-node) The Node version of Pattern Lab is under active development by [@bmuenzenmeyer](https://twitter.com/bmuenzenmeyer) and contributors. Pull requests welcome, but please take a moment to read the [guidelines](https://github.com/pattern-lab/patternlab-node/blob/master/CONTRIBUTING.md).
-#### Watching Progress
+#### Forward, To the Specification!
+
+Dave Olsen has published the [specification](https://github.com/pattern-lab/the-spec/blob/draft/SPEC.md) for Pattern Lab ports. Development will be oriented toward compliance with this as the spec and the port mature together.
+
+#### Is Pattern Lab a Platform or a Build Tool?
+
+A lot of good conversation has revolved around whether Pattern Lab is a platform or a tool in the toolbox, part of a larger solution. It's my goal to #1) adhere to the specification and #2) meet the needs of both use cases.
-Patternlab Node has reached [minimum viable product](http://en.wikipedia.org/wiki/Minimum_viable_product) status. The main branch will always have the most up to date version of patternlab-node. Watch the dev branch for what it coming next!
**THE FOLLOWING IS FROM THE PATTERNLAB-PHP PROJECT. A LOT STILL APPLIES TO PATTERNLAB-NODE, BUT IT HAS NOT BEEN ADAPTED YET. USE AT YOUR OWN PERIL**
From ee79775d24ede114f7b212d57e09e794f752b343 Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Mon, 5 May 2014 23:07:46 -0500
Subject: [PATCH 11/39] added repository to package.json
fixes #32
---
CHANGELOG | 2 ++
package.json | 4 ++++
2 files changed, 6 insertions(+)
diff --git a/CHANGELOG b/CHANGELOG
index 12fea0c27..7312afffc 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -5,6 +5,8 @@ PL-node-v0.1.1
- ADD: Flag for generating debug file
- ADD: Travis CI test support!
- ADD: Contributing file
+ - ADD: Repository to package.json
+ - THX: thank you @tbranyen for tip on repository
PL-node-v0.1.0
- FIX: Links to patterns did not work when visited from a server
diff --git a/package.json b/package.json
index 677a0466a..56cffd6d8 100644
--- a/package.json
+++ b/package.json
@@ -20,6 +20,10 @@
"Grunt",
"Javascript"
],
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/pattern-lab/patternlab-node.git"
+ },
"author": "Brian Muenzenmeyer",
"license": "MIT",
"scripts": {
From 461eda8295b9fa3599e7e13050eec67182b0ca32 Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Mon, 5 May 2014 23:12:09 -0500
Subject: [PATCH 12/39] changed dependencies
should support NPM this way. need to reconcile with Travis
---
CHANGELOG | 3 ++-
package.json | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/CHANGELOG b/CHANGELOG
index 7312afffc..aa08b7cfc 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -6,7 +6,8 @@ PL-node-v0.1.1
- ADD: Travis CI test support!
- ADD: Contributing file
- ADD: Repository to package.json
- - THX: thank you @tbranyen for tip on repository
+ - CHG: Changed devDependencies to dependencies
+ - THX: thank you @tbranyen for tip on repository, dependencies, and NPM
PL-node-v0.1.0
- FIX: Links to patterns did not work when visited from a server
diff --git a/package.json b/package.json
index 56cffd6d8..eacd39f42 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
"name": "patternlab-node",
"description": "Pattern Lab is a collection of tools to help you create atomic design systems. This is the node command line interface (CLI).",
"version": "0.1.1",
- "devDependencies": {
+ "dependencies": {
"grunt": "~0.4.0",
"grunt-contrib-watch": "~0.2.0",
"grunt-contrib-sass": "~0.2.2",
From feec29fc9c8d3f997c0878a76062f65d4321d7ed Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Mon, 5 May 2014 23:14:25 -0500
Subject: [PATCH 13/39] removed scripts files
not supported feature yet
---
scripts/README | 6 ------
scripts/generateSite.command | 3 ---
scripts/startAutoReloadServer.command | 3 ---
scripts/startPageFollowServer.command | 3 ---
scripts/startWatcher.command | 3 ---
5 files changed, 18 deletions(-)
delete mode 100644 scripts/README
delete mode 100644 scripts/generateSite.command
delete mode 100644 scripts/startAutoReloadServer.command
delete mode 100644 scripts/startPageFollowServer.command
delete mode 100644 scripts/startWatcher.command
diff --git a/scripts/README b/scripts/README
deleted file mode 100644
index 95dca5ed7..000000000
--- a/scripts/README
+++ /dev/null
@@ -1,6 +0,0 @@
-These are Mac OS X-compatible files to open up select command line scripts. Simply double-click on a file and it should run
-the appropriate shell command. If you receive a permissions error you will need to use the command line to fix it.
-Simply go to the command line, cd to the scripts/php directory and type chmod +x [filename]. Replace [filename] with the
-appropriate filenames.
-
-That's confusing.
\ No newline at end of file
diff --git a/scripts/generateSite.command b/scripts/generateSite.command
deleted file mode 100644
index acd0220e4..000000000
--- a/scripts/generateSite.command
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-DIR="$( cd "$( dirname "$0" )" && pwd )"
-php $DIR/../builder/builder.php -g
\ No newline at end of file
diff --git a/scripts/startAutoReloadServer.command b/scripts/startAutoReloadServer.command
deleted file mode 100644
index 8dfc8676e..000000000
--- a/scripts/startAutoReloadServer.command
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-DIR="$( cd "$( dirname "$0" )" && pwd )"
-php $DIR/../listeners/contentSyncBroadcasterServer.php
\ No newline at end of file
diff --git a/scripts/startPageFollowServer.command b/scripts/startPageFollowServer.command
deleted file mode 100644
index 8bfa8a9db..000000000
--- a/scripts/startPageFollowServer.command
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-DIR="$( cd "$( dirname "$0" )" && pwd )"
-php $DIR/../listeners/navSyncBroadcasterServer.php
\ No newline at end of file
diff --git a/scripts/startWatcher.command b/scripts/startWatcher.command
deleted file mode 100644
index c1a8b937e..000000000
--- a/scripts/startWatcher.command
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-DIR="$( cd "$( dirname "$0" )" && pwd )"
-php $DIR/../builder/builder.php -w
\ No newline at end of file
From 8e7422b4fa6bb89a6ab459429ae5537e364aeb07 Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Mon, 5 May 2014 23:22:33 -0500
Subject: [PATCH 14/39] reverted dependencies for now.
pl is a development tool. it cannot run in a production mode since it
needs to be built at least once...
---
CHANGELOG | 3 +--
builder/patternlab.js | 2 +-
package.json | 2 +-
3 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/CHANGELOG b/CHANGELOG
index aa08b7cfc..1bc2456a1 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -6,8 +6,7 @@ PL-node-v0.1.1
- ADD: Travis CI test support!
- ADD: Contributing file
- ADD: Repository to package.json
- - CHG: Changed devDependencies to dependencies
- - THX: thank you @tbranyen for tip on repository, dependencies, and NPM
+ - THX: thank you @tbranyen for tip on repository, and NPM
PL-node-v0.1.0
- FIX: Links to patterns did not work when visited from a server
diff --git a/builder/patternlab.js b/builder/patternlab.js
index 9d29c0a5f..0e7f8b72e 100644
--- a/builder/patternlab.js
+++ b/builder/patternlab.js
@@ -1,5 +1,5 @@
/*
- * patternlab-node - v0.1.1 - 2014-04-18
+ * patternlab-node - v0.1.1 - 2014-05-05
*
* Brian Muenzenmeyer, and the web community.
* Licensed under the MIT license.
diff --git a/package.json b/package.json
index eacd39f42..56cffd6d8 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
"name": "patternlab-node",
"description": "Pattern Lab is a collection of tools to help you create atomic design systems. This is the node command line interface (CLI).",
"version": "0.1.1",
- "dependencies": {
+ "devDependencies": {
"grunt": "~0.4.0",
"grunt-contrib-watch": "~0.2.0",
"grunt-contrib-sass": "~0.2.2",
From 8752d9e66cf4d07db65f4e6375232993052c28a8 Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Mon, 5 May 2014 23:34:58 -0500
Subject: [PATCH 15/39] removed mustache as a local dependency
using npm. fixes #29
---
builder/lib/Mustache/.gitignore | 10 -
builder/lib/Mustache/.gitmodules | 3 -
builder/lib/Mustache/.jshintrc | 5 -
builder/lib/Mustache/.travis.yml | 4 -
builder/lib/Mustache/CHANGES | 43 --
builder/lib/Mustache/LICENSE | 10 -
builder/lib/Mustache/README.md | 405 -------------
builder/lib/Mustache/Rakefile | 68 ---
builder/lib/Mustache/mustache.js | 536 ------------------
builder/lib/Mustache/mustache.js.nuspec | 14 -
builder/lib/Mustache/package.json | 21 -
.../Mustache/test/_files/ampersand_escape.js | 3 -
.../test/_files/ampersand_escape.mustache | 1 -
.../Mustache/test/_files/ampersand_escape.txt | 1 -
.../lib/Mustache/test/_files/apostrophe.js | 4 -
.../Mustache/test/_files/apostrophe.mustache | 1 -
.../lib/Mustache/test/_files/apostrophe.txt | 1 -
.../Mustache/test/_files/array_of_strings.js | 3 -
.../test/_files/array_of_strings.mustache | 1 -
.../Mustache/test/_files/array_of_strings.txt | 1 -
.../lib/Mustache/test/_files/backslashes.js | 3 -
.../Mustache/test/_files/backslashes.mustache | 7 -
.../lib/Mustache/test/_files/backslashes.txt | 7 -
.../test/_files/bug_11_eating_whitespace.js | 3 -
.../_files/bug_11_eating_whitespace.mustache | 1 -
.../test/_files/bug_11_eating_whitespace.txt | 1 -
.../test/_files/changing_delimiters.js | 4 -
.../test/_files/changing_delimiters.mustache | 1 -
.../test/_files/changing_delimiters.txt | 1 -
.../lib/Mustache/test/_files/check_falsy.js | 7 -
.../Mustache/test/_files/check_falsy.mustache | 1 -
.../lib/Mustache/test/_files/check_falsy.txt | 1 -
builder/lib/Mustache/test/_files/comments.js | 5 -
.../Mustache/test/_files/comments.mustache | 1 -
builder/lib/Mustache/test/_files/comments.txt | 1 -
builder/lib/Mustache/test/_files/complex.js | 19 -
.../lib/Mustache/test/_files/complex.mustache | 16 -
builder/lib/Mustache/test/_files/complex.txt | 6 -
.../Mustache/test/_files/context_lookup.js | 8 -
.../test/_files/context_lookup.mustache | 1 -
.../Mustache/test/_files/context_lookup.txt | 1 -
.../lib/Mustache/test/_files/delimiters.js | 6 -
.../Mustache/test/_files/delimiters.mustache | 7 -
.../lib/Mustache/test/_files/delimiters.txt | 5 -
.../test/_files/disappearing_whitespace.js | 4 -
.../_files/disappearing_whitespace.mustache | 1 -
.../test/_files/disappearing_whitespace.txt | 1 -
.../lib/Mustache/test/_files/dot_notation.js | 23 -
.../test/_files/dot_notation.mustache | 9 -
.../lib/Mustache/test/_files/dot_notation.txt | 9 -
.../lib/Mustache/test/_files/double_render.js | 5 -
.../test/_files/double_render.mustache | 1 -
.../Mustache/test/_files/double_render.txt | 1 -
.../lib/Mustache/test/_files/empty_list.js | 3 -
.../Mustache/test/_files/empty_list.mustache | 4 -
.../lib/Mustache/test/_files/empty_list.txt | 1 -
.../Mustache/test/_files/empty_sections.js | 1 -
.../test/_files/empty_sections.mustache | 1 -
.../Mustache/test/_files/empty_sections.txt | 1 -
.../lib/Mustache/test/_files/empty_string.js | 6 -
.../test/_files/empty_string.mustache | 1 -
.../lib/Mustache/test/_files/empty_string.txt | 1 -
.../Mustache/test/_files/empty_template.js | 1 -
.../test/_files/empty_template.mustache | 1 -
.../Mustache/test/_files/empty_template.txt | 1 -
.../Mustache/test/_files/error_not_found.js | 3 -
.../test/_files/error_not_found.mustache | 1 -
.../Mustache/test/_files/error_not_found.txt | 0
builder/lib/Mustache/test/_files/escaped.js | 6 -
.../lib/Mustache/test/_files/escaped.mustache | 2 -
builder/lib/Mustache/test/_files/escaped.txt | 2 -
builder/lib/Mustache/test/_files/falsy.js | 8 -
.../lib/Mustache/test/_files/falsy.mustache | 12 -
builder/lib/Mustache/test/_files/falsy.txt | 12 -
.../test/_files/grandparent_context.js | 19 -
.../test/_files/grandparent_context.mustache | 10 -
.../test/_files/grandparent_context.txt | 17 -
.../test/_files/higher_order_sections.js | 9 -
.../_files/higher_order_sections.mustache | 1 -
.../test/_files/higher_order_sections.txt | 1 -
.../lib/Mustache/test/_files/included_tag.js | 3 -
.../test/_files/included_tag.mustache | 1 -
.../lib/Mustache/test/_files/included_tag.txt | 1 -
.../Mustache/test/_files/inverted_section.js | 3 -
.../test/_files/inverted_section.mustache | 3 -
.../Mustache/test/_files/inverted_section.txt | 3 -
.../test/_files/keys_with_questionmarks.js | 5 -
.../_files/keys_with_questionmarks.mustache | 3 -
.../test/_files/keys_with_questionmarks.txt | 1 -
.../test/_files/malicious_template.js | 1 -
.../test/_files/malicious_template.mustache | 5 -
.../test/_files/malicious_template.txt | 2 -
.../Mustache/test/_files/multiline_comment.js | 1 -
.../test/_files/multiline_comment.mustache | 6 -
.../test/_files/multiline_comment.txt | 1 -
.../_files/nested_higher_order_sections.js | 8 -
.../nested_higher_order_sections.mustache | 1 -
.../_files/nested_higher_order_sections.txt | 1 -
.../Mustache/test/_files/nested_iterating.js | 8 -
.../test/_files/nested_iterating.mustache | 1 -
.../Mustache/test/_files/nested_iterating.txt | 1 -
builder/lib/Mustache/test/_files/nesting.js | 7 -
.../lib/Mustache/test/_files/nesting.mustache | 5 -
builder/lib/Mustache/test/_files/nesting.txt | 3 -
.../Mustache/test/_files/nesting_same_name.js | 8 -
.../test/_files/nesting_same_name.mustache | 1 -
.../test/_files/nesting_same_name.txt | 1 -
.../lib/Mustache/test/_files/null_string.js | 10 -
.../Mustache/test/_files/null_string.mustache | 6 -
.../lib/Mustache/test/_files/null_string.txt | 6 -
builder/lib/Mustache/test/_files/null_view.js | 4 -
.../Mustache/test/_files/null_view.mustache | 1 -
.../lib/Mustache/test/_files/null_view.txt | 1 -
.../lib/Mustache/test/_files/partial_array.js | 3 -
.../test/_files/partial_array.mustache | 1 -
.../test/_files/partial_array.partial | 4 -
.../Mustache/test/_files/partial_array.txt | 5 -
.../test/_files/partial_array_of_partials.js | 8 -
.../_files/partial_array_of_partials.mustache | 4 -
.../_files/partial_array_of_partials.partial | 1 -
.../test/_files/partial_array_of_partials.txt | 5 -
.../partial_array_of_partials_implicit.js | 3 -
...artial_array_of_partials_implicit.mustache | 4 -
...partial_array_of_partials_implicit.partial | 1 -
.../partial_array_of_partials_implicit.txt | 5 -
.../lib/Mustache/test/_files/partial_empty.js | 3 -
.../test/_files/partial_empty.mustache | 2 -
.../test/_files/partial_empty.partial | 0
.../Mustache/test/_files/partial_empty.txt | 1 -
.../Mustache/test/_files/partial_template.js | 6 -
.../test/_files/partial_template.mustache | 2 -
.../test/_files/partial_template.partial | 1 -
.../Mustache/test/_files/partial_template.txt | 2 -
.../lib/Mustache/test/_files/partial_view.js | 14 -
.../test/_files/partial_view.mustache | 3 -
.../Mustache/test/_files/partial_view.partial | 5 -
.../lib/Mustache/test/_files/partial_view.txt | 5 -
.../test/_files/partial_whitespace.js | 14 -
.../test/_files/partial_whitespace.mustache | 3 -
.../test/_files/partial_whitespace.partial | 5 -
.../test/_files/partial_whitespace.txt | 5 -
.../test/_files/recursion_with_same_names.js | 8 -
.../_files/recursion_with_same_names.mustache | 7 -
.../test/_files/recursion_with_same_names.txt | 7 -
.../test/_files/reuse_of_enumerables.js | 6 -
.../test/_files/reuse_of_enumerables.mustache | 8 -
.../test/_files/reuse_of_enumerables.txt | 8 -
.../test/_files/section_as_context.js | 10 -
.../test/_files/section_as_context.mustache | 9 -
.../test/_files/section_as_context.txt | 6 -
builder/lib/Mustache/test/_files/simple.js | 8 -
.../lib/Mustache/test/_files/simple.mustache | 5 -
builder/lib/Mustache/test/_files/simple.txt | 3 -
.../Mustache/test/_files/string_as_context.js | 4 -
.../test/_files/string_as_context.mustache | 5 -
.../test/_files/string_as_context.txt | 5 -
.../lib/Mustache/test/_files/two_in_a_row.js | 4 -
.../test/_files/two_in_a_row.mustache | 1 -
.../lib/Mustache/test/_files/two_in_a_row.txt | 1 -
.../lib/Mustache/test/_files/two_sections.js | 1 -
.../test/_files/two_sections.mustache | 4 -
.../lib/Mustache/test/_files/two_sections.txt | 0
builder/lib/Mustache/test/_files/unescaped.js | 5 -
.../Mustache/test/_files/unescaped.mustache | 1 -
.../lib/Mustache/test/_files/unescaped.txt | 1 -
.../lib/Mustache/test/_files/whitespace.js | 4 -
.../Mustache/test/_files/whitespace.mustache | 4 -
.../lib/Mustache/test/_files/whitespace.txt | 4 -
builder/lib/Mustache/test/context-test.js | 51 --
builder/lib/Mustache/test/helper.js | 2 -
.../lib/Mustache/test/mustache-spec-test.js | 89 ---
builder/lib/Mustache/test/parse-test.js | 106 ----
builder/lib/Mustache/test/render-test.js | 68 ---
builder/lib/Mustache/test/scanner-test.js | 78 ---
builder/lib/Mustache/test/writer-test.js | 43 --
.../Mustache/wrappers/dojo/mustache.js.post | 4 -
.../Mustache/wrappers/dojo/mustache.js.pre | 9 -
.../Mustache/wrappers/jquery/mustache.js.post | 13 -
.../Mustache/wrappers/jquery/mustache.js.pre | 9 -
.../wrappers/mootools/mustache.js.post | 5 -
.../wrappers/mootools/mustache.js.pre | 2 -
.../wrappers/qooxdoo/mustache.js.post | 9 -
.../Mustache/wrappers/qooxdoo/mustache.js.pre | 164 ------
builder/patternlab.js | 2 +-
package.json | 1 +
185 files changed, 2 insertions(+), 2436 deletions(-)
delete mode 100644 builder/lib/Mustache/.gitignore
delete mode 100644 builder/lib/Mustache/.gitmodules
delete mode 100644 builder/lib/Mustache/.jshintrc
delete mode 100644 builder/lib/Mustache/.travis.yml
delete mode 100644 builder/lib/Mustache/CHANGES
delete mode 100644 builder/lib/Mustache/LICENSE
delete mode 100644 builder/lib/Mustache/README.md
delete mode 100644 builder/lib/Mustache/Rakefile
delete mode 100644 builder/lib/Mustache/mustache.js
delete mode 100644 builder/lib/Mustache/mustache.js.nuspec
delete mode 100644 builder/lib/Mustache/package.json
delete mode 100644 builder/lib/Mustache/test/_files/ampersand_escape.js
delete mode 100644 builder/lib/Mustache/test/_files/ampersand_escape.mustache
delete mode 100644 builder/lib/Mustache/test/_files/ampersand_escape.txt
delete mode 100644 builder/lib/Mustache/test/_files/apostrophe.js
delete mode 100644 builder/lib/Mustache/test/_files/apostrophe.mustache
delete mode 100644 builder/lib/Mustache/test/_files/apostrophe.txt
delete mode 100644 builder/lib/Mustache/test/_files/array_of_strings.js
delete mode 100644 builder/lib/Mustache/test/_files/array_of_strings.mustache
delete mode 100644 builder/lib/Mustache/test/_files/array_of_strings.txt
delete mode 100644 builder/lib/Mustache/test/_files/backslashes.js
delete mode 100644 builder/lib/Mustache/test/_files/backslashes.mustache
delete mode 100644 builder/lib/Mustache/test/_files/backslashes.txt
delete mode 100644 builder/lib/Mustache/test/_files/bug_11_eating_whitespace.js
delete mode 100644 builder/lib/Mustache/test/_files/bug_11_eating_whitespace.mustache
delete mode 100644 builder/lib/Mustache/test/_files/bug_11_eating_whitespace.txt
delete mode 100644 builder/lib/Mustache/test/_files/changing_delimiters.js
delete mode 100644 builder/lib/Mustache/test/_files/changing_delimiters.mustache
delete mode 100644 builder/lib/Mustache/test/_files/changing_delimiters.txt
delete mode 100644 builder/lib/Mustache/test/_files/check_falsy.js
delete mode 100644 builder/lib/Mustache/test/_files/check_falsy.mustache
delete mode 100644 builder/lib/Mustache/test/_files/check_falsy.txt
delete mode 100644 builder/lib/Mustache/test/_files/comments.js
delete mode 100644 builder/lib/Mustache/test/_files/comments.mustache
delete mode 100644 builder/lib/Mustache/test/_files/comments.txt
delete mode 100644 builder/lib/Mustache/test/_files/complex.js
delete mode 100644 builder/lib/Mustache/test/_files/complex.mustache
delete mode 100644 builder/lib/Mustache/test/_files/complex.txt
delete mode 100644 builder/lib/Mustache/test/_files/context_lookup.js
delete mode 100644 builder/lib/Mustache/test/_files/context_lookup.mustache
delete mode 100644 builder/lib/Mustache/test/_files/context_lookup.txt
delete mode 100644 builder/lib/Mustache/test/_files/delimiters.js
delete mode 100644 builder/lib/Mustache/test/_files/delimiters.mustache
delete mode 100644 builder/lib/Mustache/test/_files/delimiters.txt
delete mode 100644 builder/lib/Mustache/test/_files/disappearing_whitespace.js
delete mode 100644 builder/lib/Mustache/test/_files/disappearing_whitespace.mustache
delete mode 100644 builder/lib/Mustache/test/_files/disappearing_whitespace.txt
delete mode 100644 builder/lib/Mustache/test/_files/dot_notation.js
delete mode 100644 builder/lib/Mustache/test/_files/dot_notation.mustache
delete mode 100644 builder/lib/Mustache/test/_files/dot_notation.txt
delete mode 100644 builder/lib/Mustache/test/_files/double_render.js
delete mode 100644 builder/lib/Mustache/test/_files/double_render.mustache
delete mode 100644 builder/lib/Mustache/test/_files/double_render.txt
delete mode 100644 builder/lib/Mustache/test/_files/empty_list.js
delete mode 100644 builder/lib/Mustache/test/_files/empty_list.mustache
delete mode 100644 builder/lib/Mustache/test/_files/empty_list.txt
delete mode 100644 builder/lib/Mustache/test/_files/empty_sections.js
delete mode 100644 builder/lib/Mustache/test/_files/empty_sections.mustache
delete mode 100644 builder/lib/Mustache/test/_files/empty_sections.txt
delete mode 100644 builder/lib/Mustache/test/_files/empty_string.js
delete mode 100644 builder/lib/Mustache/test/_files/empty_string.mustache
delete mode 100644 builder/lib/Mustache/test/_files/empty_string.txt
delete mode 100644 builder/lib/Mustache/test/_files/empty_template.js
delete mode 100644 builder/lib/Mustache/test/_files/empty_template.mustache
delete mode 100644 builder/lib/Mustache/test/_files/empty_template.txt
delete mode 100644 builder/lib/Mustache/test/_files/error_not_found.js
delete mode 100644 builder/lib/Mustache/test/_files/error_not_found.mustache
delete mode 100644 builder/lib/Mustache/test/_files/error_not_found.txt
delete mode 100644 builder/lib/Mustache/test/_files/escaped.js
delete mode 100644 builder/lib/Mustache/test/_files/escaped.mustache
delete mode 100644 builder/lib/Mustache/test/_files/escaped.txt
delete mode 100644 builder/lib/Mustache/test/_files/falsy.js
delete mode 100644 builder/lib/Mustache/test/_files/falsy.mustache
delete mode 100644 builder/lib/Mustache/test/_files/falsy.txt
delete mode 100644 builder/lib/Mustache/test/_files/grandparent_context.js
delete mode 100644 builder/lib/Mustache/test/_files/grandparent_context.mustache
delete mode 100644 builder/lib/Mustache/test/_files/grandparent_context.txt
delete mode 100644 builder/lib/Mustache/test/_files/higher_order_sections.js
delete mode 100644 builder/lib/Mustache/test/_files/higher_order_sections.mustache
delete mode 100644 builder/lib/Mustache/test/_files/higher_order_sections.txt
delete mode 100644 builder/lib/Mustache/test/_files/included_tag.js
delete mode 100644 builder/lib/Mustache/test/_files/included_tag.mustache
delete mode 100644 builder/lib/Mustache/test/_files/included_tag.txt
delete mode 100644 builder/lib/Mustache/test/_files/inverted_section.js
delete mode 100644 builder/lib/Mustache/test/_files/inverted_section.mustache
delete mode 100644 builder/lib/Mustache/test/_files/inverted_section.txt
delete mode 100644 builder/lib/Mustache/test/_files/keys_with_questionmarks.js
delete mode 100644 builder/lib/Mustache/test/_files/keys_with_questionmarks.mustache
delete mode 100644 builder/lib/Mustache/test/_files/keys_with_questionmarks.txt
delete mode 100644 builder/lib/Mustache/test/_files/malicious_template.js
delete mode 100644 builder/lib/Mustache/test/_files/malicious_template.mustache
delete mode 100644 builder/lib/Mustache/test/_files/malicious_template.txt
delete mode 100644 builder/lib/Mustache/test/_files/multiline_comment.js
delete mode 100644 builder/lib/Mustache/test/_files/multiline_comment.mustache
delete mode 100644 builder/lib/Mustache/test/_files/multiline_comment.txt
delete mode 100644 builder/lib/Mustache/test/_files/nested_higher_order_sections.js
delete mode 100644 builder/lib/Mustache/test/_files/nested_higher_order_sections.mustache
delete mode 100644 builder/lib/Mustache/test/_files/nested_higher_order_sections.txt
delete mode 100644 builder/lib/Mustache/test/_files/nested_iterating.js
delete mode 100644 builder/lib/Mustache/test/_files/nested_iterating.mustache
delete mode 100644 builder/lib/Mustache/test/_files/nested_iterating.txt
delete mode 100644 builder/lib/Mustache/test/_files/nesting.js
delete mode 100644 builder/lib/Mustache/test/_files/nesting.mustache
delete mode 100644 builder/lib/Mustache/test/_files/nesting.txt
delete mode 100644 builder/lib/Mustache/test/_files/nesting_same_name.js
delete mode 100644 builder/lib/Mustache/test/_files/nesting_same_name.mustache
delete mode 100644 builder/lib/Mustache/test/_files/nesting_same_name.txt
delete mode 100644 builder/lib/Mustache/test/_files/null_string.js
delete mode 100644 builder/lib/Mustache/test/_files/null_string.mustache
delete mode 100644 builder/lib/Mustache/test/_files/null_string.txt
delete mode 100644 builder/lib/Mustache/test/_files/null_view.js
delete mode 100644 builder/lib/Mustache/test/_files/null_view.mustache
delete mode 100644 builder/lib/Mustache/test/_files/null_view.txt
delete mode 100644 builder/lib/Mustache/test/_files/partial_array.js
delete mode 100644 builder/lib/Mustache/test/_files/partial_array.mustache
delete mode 100644 builder/lib/Mustache/test/_files/partial_array.partial
delete mode 100644 builder/lib/Mustache/test/_files/partial_array.txt
delete mode 100644 builder/lib/Mustache/test/_files/partial_array_of_partials.js
delete mode 100644 builder/lib/Mustache/test/_files/partial_array_of_partials.mustache
delete mode 100644 builder/lib/Mustache/test/_files/partial_array_of_partials.partial
delete mode 100644 builder/lib/Mustache/test/_files/partial_array_of_partials.txt
delete mode 100644 builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.js
delete mode 100644 builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.mustache
delete mode 100644 builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.partial
delete mode 100644 builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.txt
delete mode 100644 builder/lib/Mustache/test/_files/partial_empty.js
delete mode 100644 builder/lib/Mustache/test/_files/partial_empty.mustache
delete mode 100644 builder/lib/Mustache/test/_files/partial_empty.partial
delete mode 100644 builder/lib/Mustache/test/_files/partial_empty.txt
delete mode 100644 builder/lib/Mustache/test/_files/partial_template.js
delete mode 100644 builder/lib/Mustache/test/_files/partial_template.mustache
delete mode 100644 builder/lib/Mustache/test/_files/partial_template.partial
delete mode 100644 builder/lib/Mustache/test/_files/partial_template.txt
delete mode 100644 builder/lib/Mustache/test/_files/partial_view.js
delete mode 100644 builder/lib/Mustache/test/_files/partial_view.mustache
delete mode 100644 builder/lib/Mustache/test/_files/partial_view.partial
delete mode 100644 builder/lib/Mustache/test/_files/partial_view.txt
delete mode 100644 builder/lib/Mustache/test/_files/partial_whitespace.js
delete mode 100644 builder/lib/Mustache/test/_files/partial_whitespace.mustache
delete mode 100644 builder/lib/Mustache/test/_files/partial_whitespace.partial
delete mode 100644 builder/lib/Mustache/test/_files/partial_whitespace.txt
delete mode 100644 builder/lib/Mustache/test/_files/recursion_with_same_names.js
delete mode 100644 builder/lib/Mustache/test/_files/recursion_with_same_names.mustache
delete mode 100644 builder/lib/Mustache/test/_files/recursion_with_same_names.txt
delete mode 100644 builder/lib/Mustache/test/_files/reuse_of_enumerables.js
delete mode 100644 builder/lib/Mustache/test/_files/reuse_of_enumerables.mustache
delete mode 100644 builder/lib/Mustache/test/_files/reuse_of_enumerables.txt
delete mode 100644 builder/lib/Mustache/test/_files/section_as_context.js
delete mode 100644 builder/lib/Mustache/test/_files/section_as_context.mustache
delete mode 100644 builder/lib/Mustache/test/_files/section_as_context.txt
delete mode 100644 builder/lib/Mustache/test/_files/simple.js
delete mode 100644 builder/lib/Mustache/test/_files/simple.mustache
delete mode 100644 builder/lib/Mustache/test/_files/simple.txt
delete mode 100644 builder/lib/Mustache/test/_files/string_as_context.js
delete mode 100644 builder/lib/Mustache/test/_files/string_as_context.mustache
delete mode 100644 builder/lib/Mustache/test/_files/string_as_context.txt
delete mode 100644 builder/lib/Mustache/test/_files/two_in_a_row.js
delete mode 100644 builder/lib/Mustache/test/_files/two_in_a_row.mustache
delete mode 100644 builder/lib/Mustache/test/_files/two_in_a_row.txt
delete mode 100644 builder/lib/Mustache/test/_files/two_sections.js
delete mode 100644 builder/lib/Mustache/test/_files/two_sections.mustache
delete mode 100644 builder/lib/Mustache/test/_files/two_sections.txt
delete mode 100644 builder/lib/Mustache/test/_files/unescaped.js
delete mode 100644 builder/lib/Mustache/test/_files/unescaped.mustache
delete mode 100644 builder/lib/Mustache/test/_files/unescaped.txt
delete mode 100644 builder/lib/Mustache/test/_files/whitespace.js
delete mode 100644 builder/lib/Mustache/test/_files/whitespace.mustache
delete mode 100644 builder/lib/Mustache/test/_files/whitespace.txt
delete mode 100644 builder/lib/Mustache/test/context-test.js
delete mode 100644 builder/lib/Mustache/test/helper.js
delete mode 100644 builder/lib/Mustache/test/mustache-spec-test.js
delete mode 100644 builder/lib/Mustache/test/parse-test.js
delete mode 100644 builder/lib/Mustache/test/render-test.js
delete mode 100644 builder/lib/Mustache/test/scanner-test.js
delete mode 100644 builder/lib/Mustache/test/writer-test.js
delete mode 100644 builder/lib/Mustache/wrappers/dojo/mustache.js.post
delete mode 100644 builder/lib/Mustache/wrappers/dojo/mustache.js.pre
delete mode 100644 builder/lib/Mustache/wrappers/jquery/mustache.js.post
delete mode 100644 builder/lib/Mustache/wrappers/jquery/mustache.js.pre
delete mode 100644 builder/lib/Mustache/wrappers/mootools/mustache.js.post
delete mode 100644 builder/lib/Mustache/wrappers/mootools/mustache.js.pre
delete mode 100644 builder/lib/Mustache/wrappers/qooxdoo/mustache.js.post
delete mode 100644 builder/lib/Mustache/wrappers/qooxdoo/mustache.js.pre
diff --git a/builder/lib/Mustache/.gitignore b/builder/lib/Mustache/.gitignore
deleted file mode 100644
index 90007769a..000000000
--- a/builder/lib/Mustache/.gitignore
+++ /dev/null
@@ -1,10 +0,0 @@
-.DS_Store
-.rvmrc
-node_modules
-runner.js
-jquery.mustache.js
-qooxdoo.mustache.js
-dojox
-yui3
-requirejs.mustache.js
-
diff --git a/builder/lib/Mustache/.gitmodules b/builder/lib/Mustache/.gitmodules
deleted file mode 100644
index 9e2fdf850..000000000
--- a/builder/lib/Mustache/.gitmodules
+++ /dev/null
@@ -1,3 +0,0 @@
-[submodule "test/spec"]
- path = test/spec
- url = https://github.com/mustache/spec
diff --git a/builder/lib/Mustache/.jshintrc b/builder/lib/Mustache/.jshintrc
deleted file mode 100644
index 28dff7105..000000000
--- a/builder/lib/Mustache/.jshintrc
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "eqnull": true,
- "evil": true
-}
-
diff --git a/builder/lib/Mustache/.travis.yml b/builder/lib/Mustache/.travis.yml
deleted file mode 100644
index 3d839b0ef..000000000
--- a/builder/lib/Mustache/.travis.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
- - 0.6
-
diff --git a/builder/lib/Mustache/CHANGES b/builder/lib/Mustache/CHANGES
deleted file mode 100644
index ad80e95f4..000000000
--- a/builder/lib/Mustache/CHANGES
+++ /dev/null
@@ -1,43 +0,0 @@
-= HEAD
-
- * Don't require the original template to be passed to the rendering function
- when using compiled templates. This is still required when using higher-order
- functions in order to be able to extract the portion of the template
- that was contained by that section. Fixes #262.
- * Performance improvements.
-
-= 0.7.2 / 27 Dec 2012
-
- * Fixed a rendering bug (#274) when using nested higher-order sections.
- * Better error reporting on failed parse.
- * Converted tests to use mocha instead of vows.
-
-= 0.7.1 / 6 Dec 2012
-
- * Handle empty templates gracefully. Fixes #265, #267, and #270.
- * Cache partials by template, not by name. Fixes #257.
- * Added Mustache.compileTokens to compile the output of Mustache.parse. Fixes
- #258.
-
-= 0.7.0 / 10 Sep 2012
-
- * Rename Renderer => Writer.
- * Allow partials to be loaded dynamically using a callback (thanks
- @TiddoLangerak for the suggestion).
- * Fixed a bug with higher-order sections that prevented them from being
- passed the raw text of the section from the original template.
- * More concise token format. Tokens also include start/end indices in the
- original template.
- * High-level API is consistent with the Writer API.
- * Allow partials to be passed to the pre-compiled function (thanks
- @fallenice).
- * Don't use eval (thanks @cweider).
-
-= 0.6.0 / 31 Aug 2012
-
- * Use JavaScript's definition of falsy when determining whether to render an
- inverted section or not. Issue #186.
- * Use Mustache.escape to escape values inside {{}}. This function may be
- reassigned to alter the default escaping behavior. Issue #244.
- * Fixed a bug that clashed with QUnit (thanks @kannix).
- * Added volo support (thanks @guybedford).
diff --git a/builder/lib/Mustache/LICENSE b/builder/lib/Mustache/LICENSE
deleted file mode 100644
index 6626848b3..000000000
--- a/builder/lib/Mustache/LICENSE
+++ /dev/null
@@ -1,10 +0,0 @@
-The MIT License
-
-Copyright (c) 2009 Chris Wanstrath (Ruby)
-Copyright (c) 2010 Jan Lehnardt (JavaScript)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/builder/lib/Mustache/README.md b/builder/lib/Mustache/README.md
deleted file mode 100644
index 95c92788b..000000000
--- a/builder/lib/Mustache/README.md
+++ /dev/null
@@ -1,405 +0,0 @@
-# mustache.js - Logic-less {{mustache}} templates with JavaScript
-
-> What could be more logical awesome than no logic at all?
-
-[mustache.js](http://github.com/janl/mustache.js) is an implementation of the [mustache](http://mustache.github.com/) template system in JavaScript.
-
-[Mustache](http://mustache.github.com/) is a logic-less template syntax. It can be used for HTML, config files, source code - anything. It works by expanding tags in a template using values provided in a hash or object.
-
-We call it "logic-less" because there are no if statements, else clauses, or for loops. Instead there are only tags. Some tags are replaced with a value, some nothing, and others a series of values.
-
-For a language-agnostic overview of mustache's template syntax, see the `mustache(5)` [manpage](http://mustache.github.com/mustache.5.html).
-
-## Where to use mustache.js?
-
-You can use mustache.js to render mustache templates anywhere you can use JavaScript. This includes web browsers, server-side environments such as [node](http://nodejs.org/), and [CouchDB](http://couchdb.apache.org/) views.
-
-mustache.js ships with support for both the [CommonJS](http://www.commonjs.org/) module API and the [Asynchronous Module Definition](https://github.com/amdjs/amdjs-api/wiki/AMD) API, or AMD.
-
-## Who uses mustache.js?
-
-An updated list of mustache.js users is kept [on the Github wiki](http://wiki.github.com/janl/mustache.js/beard-competition). Add yourself or your company if you use mustache.js!
-
-## Usage
-
-Below is quick example how to use mustache.js:
-
- var view = {
- title: "Joe",
- calc: function () {
- return 2 + 4;
- }
- };
-
- var output = Mustache.render("{{title}} spends {{calc}}", view);
-
-In this example, the `Mustache.render` function takes two parameters: 1) the [mustache](http://mustache.github.com/) template and 2) a `view` object that contains the data and code needed to render the template.
-
-## Templates
-
-A [mustache](http://mustache.github.com/) template is a string that contains any number of mustache tags. Tags are indicated by the double mustaches that surround them. `{{person}}` is a tag, as is `{{#person}}`. In both examples we refer to `person` as the tag's key.
-
-There are several types of tags available in mustache.js.
-
-### Variables
-
-The most basic tag type is a simple variable. A `{{name}}` tag renders the value of the `name` key in the current context. If there is no such key, nothing is rendered.
-
-All variables are HTML-escaped by default. If you want to render unescaped HTML, use the triple mustache: `{{{name}}}`. You can also use `&` to unescape a variable.
-
-View:
-
- {
- "name": "Chris",
- "company": "GitHub"
- }
-
-Template:
-
- * {{name}}
- * {{age}}
- * {{company}}
- * {{{company}}}
- * {{&company}}
-
-Output:
-
- * Chris
- *
- * <b>GitHub</b>
- * GitHub
- * GitHub
-
-JavaScript's dot notation may be used to access keys that are properties of objects in a view.
-
-View:
-
- {
- "name": {
- "first": "Michael",
- "last": "Jackson"
- },
- "age": "RIP"
- }
-
-Template:
-
- * {{name.first}} {{name.last}}
- * {{age}}
-
-Output:
-
- * Michael Jackson
- * RIP
-
-### Sections
-
-Sections render blocks of text one or more times, depending on the value of the key in the current context.
-
-A section begins with a pound and ends with a slash. That is, `{{#person}}` begins a `person` section, while `{{/person}}` ends it. The text between the two tags is referred to as that section's "block".
-
-The behavior of the section is determined by the value of the key.
-
-#### False Values or Empty Lists
-
-If the `person` key does not exist, or exists and has a value of `null`, `undefined`, or `false`, or is an empty list, the block will not be rendered.
-
-View:
-
- {
- "person": false
- }
-
-Template:
-
- Shown.
- {{#person}}
- Never shown!
- {{/person}}
-
-Output:
-
- Shown.
-
-#### Non-Empty Lists
-
-If the `person` key exists and is not `null`, `undefined`, or `false`, and is not an empty list the block will be rendered one or more times.
-
-When the value is a list, the block is rendered once for each item in the list. The context of the block is set to the current item in the list for each iteration. In this way we can loop over collections.
-
-View:
-
- {
- "stooges": [
- { "name": "Moe" },
- { "name": "Larry" },
- { "name": "Curly" }
- ]
- }
-
-Template:
-
- {{#stooges}}
- {{name}}
- {{/stooges}}
-
-Output:
-
- Moe
- Larry
- Curly
-
-When looping over an array of strings, a `.` can be used to refer to the current item in the list.
-
-View:
-
- {
- "musketeers": ["Athos", "Aramis", "Porthos", "D'Artagnan"]
- }
-
-Template:
-
- {{#musketeers}}
- * {{.}}
- {{/musketeers}}
-
-Output:
-
- * Athos
- * Aramis
- * Porthos
- * D'Artagnan
-
-If the value of a section variable is a function, it will be called in the context of the current item in the list on each iteration.
-
-View:
-
- {
- "beatles": [
- { "firstName": "John", "lastName": "Lennon" },
- { "firstName": "Paul", "lastName": "McCartney" },
- { "firstName": "George", "lastName": "Harrison" },
- { "firstName": "Ringo", "lastName": "Starr" }
- ],
- "name": function () {
- return this.firstName + " " + this.lastName;
- }
- }
-
-Template:
-
- {{#beatles}}
- * {{name}}
- {{/beatles}}
-
-Output:
-
- * John Lennon
- * Paul McCartney
- * George Harrison
- * Ringo Starr
-
-#### Functions
-
-If the value of a section key is a function, it is called with the section's literal block of text, un-rendered, as its first argument. The second argument is a special rendering function that uses the current view as its view argument. It is called in the context of the current view object.
-
-View:
-
- {
- "name": "Tater",
- "bold": function () {
- return function (text, render) {
- return "" + render(text) + "";
- }
- }
- }
-
-Template:
-
- {{#bold}}Hi {{name}}.{{/bold}}
-
-Output:
-
- Hi Tater.
-
-### Inverted Sections
-
-An inverted section opens with `{{^section}}` instead of `{{#section}}`. The block of an inverted section is rendered only if the value of that section's tag is `null`, `undefined`, `false`, or an empty list.
-
-View:
-
- {
- "repos": []
- }
-
-Template:
-
- {{#repos}}{{name}}{{/repos}}
- {{^repos}}No repos :({{/repos}}
-
-Output:
-
- No repos :(
-
-### Comments
-
-Comments begin with a bang and are ignored. The following template:
-
- Today{{! ignore me }}.
-
-Will render as follows:
-
- Today.
-
-Comments may contain newlines.
-
-### Partials
-
-Partials begin with a greater than sign, like {{> box}}.
-
-Partials are rendered at runtime (as opposed to compile time), so recursive partials are possible. Just avoid infinite loops.
-
-They also inherit the calling context. Whereas in ERB you may have this:
-
- <%= partial :next_more, :start => start, :size => size %>
-
-Mustache requires only this:
-
- {{> next_more}}
-
-Why? Because the `next_more.mustache` file will inherit the `size` and `start` variables from the calling context. In this way you may want to think of partials as includes, or template expansion, even though it's not literally true.
-
-For example, this template and partial:
-
- base.mustache:
- Names
- {{#names}}
- {{> user}}
- {{/names}}
-
- user.mustache:
- {{name}}
-
-Can be thought of as a single, expanded template:
-
- Names
- {{#names}}
- {{name}}
- {{/names}}
-
-In mustache.js an object of partials may be passed as the third argument to `Mustache.render`. The object should be keyed by the name of the partial, and its value should be the partial text.
-
-### Set Delimiter
-
-Set Delimiter tags start with an equals sign and change the tag delimiters from `{{` and `}}` to custom strings.
-
-Consider the following contrived example:
-
- * {{ default_tags }}
- {{=<% %>=}}
- * <% erb_style_tags %>
- <%={{ }}=%>
- * {{ default_tags_again }}
-
-Here we have a list with three items. The first item uses the default tag style, the second uses ERB style as defined by the Set Delimiter tag, and the third returns to the default style after yet another Set Delimiter declaration.
-
-According to [ctemplates](http://google-ctemplate.googlecode.com/svn/trunk/doc/howto.html), this "is useful for languages like TeX, where double-braces may occur in the text and are awkward to use for markup."
-
-Custom delimiters may not contain whitespace or the equals sign.
-
-### Compiled Templates
-
-Mustache templates can be compiled into JavaScript functions using `Mustache.compile` for improved rendering performance.
-
-If you have template views that are rendered multiple times, compiling your template into a JavaScript function will minimise the amount of work required for each re-render.
-
-Pre-compiled templates can also be generated server-side, for delivery to the browser as ready to use JavaScript functions, further reducing the amount of client side processing required for initialising templates.
-
-**Mustache.compile**
-
-Use `Mustache.compile` to compile standard Mustache string templates into reusable Mustache template functions.
-
- var compiledTemplate = Mustache.compile(stringTemplate);
-
-The function returned from `Mustache.compile` can then be called directly, passing in the template data as an argument (with an object of partials as an optional second parameter), to generate the final output.
-
- var templateOutput = compiledTemplate(templateData);
-
-**Mustache.compilePartial**
-
-Template partials can also be compiled using the `Mustache.compilePartial` function. The first parameter of this function, is the name of the partial as it appears within parent templates.
-
- Mustache.compilePartial('partial-name', stringTemplate);
-
-Compiled partials are then available to both `Mustache.render` and `Mustache.compile`.
-
-## Plugins for JavaScript Libraries
-
-mustache.js may be built specifically for several different client libraries, including the following:
-
- - [jQuery](http://jquery.com/)
- - [MooTools](http://mootools.net/)
- - [Dojo](http://www.dojotoolkit.org/)
- - [YUI](http://developer.yahoo.com/yui/)
- - [qooxdoo](http://qooxdoo.org/)
-
-These may be built using [Rake](http://rake.rubyforge.org/) and one of the following commands:
-
- $ rake jquery
- $ rake mootools
- $ rake dojo
- $ rake yui3
- $ rake qooxdoo
-
-## Testing
-
-The mustache.js test suite uses the [mocha](http://visionmedia.github.com/mocha/) testing framework. In order to run the tests you'll need to install [node](http://nodejs.org/). Once that's done you can install mocha using [npm](http://npmjs.org/).
-
- $ npm install -g mocha
-
-You also need to install the sub module containing [Mustache specifications](http://github.com/mustache/spec) in the project root.
-
- $ git submodule init
- $ git submodule update
-
-Then run the tests.
-
- $ mocha test
-
-The test suite consists of both unit and integration tests. If a template isn't rendering correctly for you, you can make a test for it by doing the following:
-
- 1. Create a template file named `mytest.mustache` in the `test/_files`
- directory. Replace `mytest` with the name of your test.
- 2. Create a corresponding view file named `mytest.js` in the same directory.
- This file should contain a JavaScript object literal enclosed in
- parentheses. See any of the other view files for an example.
- 3. Create a file with the expected output in `mytest.txt` in the same
- directory.
-
-Then, you can run the test with:
-
- $ TEST=mytest mocha test/render_test.js
-
-## Thanks
-
-mustache.js wouldn't kick ass if it weren't for these fine souls:
-
- * Chris Wanstrath / defunkt
- * Alexander Lang / langalex
- * Sebastian Cohnen / tisba
- * J Chris Anderson / jchris
- * Tom Robinson / tlrobinson
- * Aaron Quint / quirkey
- * Douglas Crockford
- * Nikita Vasilyev / NV
- * Elise Wood / glytch
- * Damien Mathieu / dmathieu
- * Jakub Kuźma / qoobaa
- * Will Leinweber / will
- * dpree
- * Jason Smith / jhs
- * Aaron Gibralter / agibralter
- * Ross Boucher / boucher
- * Matt Sanford / mzsanford
- * Ben Cherry / bcherry
- * Michael Jackson / mjijackson
diff --git a/builder/lib/Mustache/Rakefile b/builder/lib/Mustache/Rakefile
deleted file mode 100644
index bc3217586..000000000
--- a/builder/lib/Mustache/Rakefile
+++ /dev/null
@@ -1,68 +0,0 @@
-require 'rake'
-require 'rake/clean'
-
-task :default => :test
-
-ROOT = File.expand_path('..', __FILE__)
-MUSTACHE_JS = File.read(File.join(ROOT, 'mustache.js'))
-
-def mustache_version
- match = MUSTACHE_JS.match(/exports\.version = "([^"]+)";/)
- match[1]
-end
-
-def minified_file
- ENV['FILE'] || 'mustache.min.js'
-end
-
-desc "Run all tests, requires vows (see http://vowsjs.org)"
-task :test do
- sh "vows --spec"
-end
-
-desc "Minify to #{minified_file}, requires UglifyJS (see http://marijnhaverbeke.nl/uglifyjs)"
-task :minify do
- sh "uglifyjs mustache.js > #{minified_file}"
-end
-
-desc "Run JSHint, requires jshint (see http://www.jshint.com)"
-task :lint do
- sh "jshint mustache.js"
-end
-
-# Creates a task that uses the various template wrappers to make a wrapped
-# output file. There is some extra complexity because Dojo and YUI use
-# different final locations.
-def templated_build(name, opts={})
- short = name.downcase
- source = File.join("wrappers", short)
- dependencies = ["mustache.js"] + Dir.glob("#{source}/*.tpl.*")
- target_js = opts[:location] ? "mustache.js" : "#{short}.mustache.js"
-
- CLEAN.include(opts[:location] ? opts[:location] : target_js)
-
- desc "Package for #{name}"
- task short.to_sym => dependencies do
- puts "Packaging for #{name}"
-
- mkdir_p opts[:location] if opts[:location]
-
- files = [
- "#{source}/mustache.js.pre",
- 'mustache.js',
- "#{source}/mustache.js.post"
- ]
-
- open("#{opts[:location] || '.'}/#{target_js}", 'w') do |f|
- files.each {|file| f << File.read(file) }
- end
-
- puts "Done, see #{opts[:location] || '.'}/#{target_js}"
- end
-end
-
-templated_build "jQuery"
-templated_build "MooTools"
-templated_build "Dojo", :location => "dojox/string"
-templated_build "YUI3", :location => "yui3/mustache"
-templated_build "qooxdoo"
diff --git a/builder/lib/Mustache/mustache.js b/builder/lib/Mustache/mustache.js
deleted file mode 100644
index bee26f965..000000000
--- a/builder/lib/Mustache/mustache.js
+++ /dev/null
@@ -1,536 +0,0 @@
-/*!
- * mustache.js - Logic-less {{mustache}} templates with JavaScript
- * http://github.com/janl/mustache.js
- */
-
-/*global define: false*/
-
-(function (root, factory) {
- if (typeof exports === "object" && exports) {
- factory(exports); // CommonJS
- } else {
- var mustache = {};
- factory(mustache);
- if (typeof define === "function" && define.amd) {
- define(mustache); // AMD
- } else {
- root.Mustache = mustache; //
diff --git a/builder/lib/Mustache/test/_files/backslashes.txt b/builder/lib/Mustache/test/_files/backslashes.txt
deleted file mode 100644
index 038dd37e4..000000000
--- a/builder/lib/Mustache/test/_files/backslashes.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-* \abc
-* \abc
-* \abc
-
diff --git a/builder/lib/Mustache/test/_files/bug_11_eating_whitespace.js b/builder/lib/Mustache/test/_files/bug_11_eating_whitespace.js
deleted file mode 100644
index e41ccd15d..000000000
--- a/builder/lib/Mustache/test/_files/bug_11_eating_whitespace.js
+++ /dev/null
@@ -1,3 +0,0 @@
-({
- tag: "yo"
-})
diff --git a/builder/lib/Mustache/test/_files/bug_11_eating_whitespace.mustache b/builder/lib/Mustache/test/_files/bug_11_eating_whitespace.mustache
deleted file mode 100644
index 8d5cd921a..000000000
--- a/builder/lib/Mustache/test/_files/bug_11_eating_whitespace.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{tag}} foo
diff --git a/builder/lib/Mustache/test/_files/bug_11_eating_whitespace.txt b/builder/lib/Mustache/test/_files/bug_11_eating_whitespace.txt
deleted file mode 100644
index f5bbc85ce..000000000
--- a/builder/lib/Mustache/test/_files/bug_11_eating_whitespace.txt
+++ /dev/null
@@ -1 +0,0 @@
-yo foo
diff --git a/builder/lib/Mustache/test/_files/changing_delimiters.js b/builder/lib/Mustache/test/_files/changing_delimiters.js
deleted file mode 100644
index b808f4c8b..000000000
--- a/builder/lib/Mustache/test/_files/changing_delimiters.js
+++ /dev/null
@@ -1,4 +0,0 @@
-({
- "foo": "foooooooooooooo",
- "bar": "bar!"
-})
diff --git a/builder/lib/Mustache/test/_files/changing_delimiters.mustache b/builder/lib/Mustache/test/_files/changing_delimiters.mustache
deleted file mode 100644
index 0cd044c93..000000000
--- a/builder/lib/Mustache/test/_files/changing_delimiters.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{=<% %>=}}<% foo %> {{foo}} <%{bar}%> {{{bar}}}
diff --git a/builder/lib/Mustache/test/_files/changing_delimiters.txt b/builder/lib/Mustache/test/_files/changing_delimiters.txt
deleted file mode 100644
index 1b1510dab..000000000
--- a/builder/lib/Mustache/test/_files/changing_delimiters.txt
+++ /dev/null
@@ -1 +0,0 @@
-foooooooooooooo {{foo}} bar! {{{bar}}}
diff --git a/builder/lib/Mustache/test/_files/check_falsy.js b/builder/lib/Mustache/test/_files/check_falsy.js
deleted file mode 100644
index 5a599cab7..000000000
--- a/builder/lib/Mustache/test/_files/check_falsy.js
+++ /dev/null
@@ -1,7 +0,0 @@
-({
- number: function(text, render) {
- return function(text, render) {
- return +render(text);
- }
- }
-})
diff --git a/builder/lib/Mustache/test/_files/check_falsy.mustache b/builder/lib/Mustache/test/_files/check_falsy.mustache
deleted file mode 100644
index 30e2547f4..000000000
--- a/builder/lib/Mustache/test/_files/check_falsy.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{#number}}0{{/number}}
diff --git a/builder/lib/Mustache/test/_files/check_falsy.txt b/builder/lib/Mustache/test/_files/check_falsy.txt
deleted file mode 100644
index 3bb2f51f6..000000000
--- a/builder/lib/Mustache/test/_files/check_falsy.txt
+++ /dev/null
@@ -1 +0,0 @@
-0
diff --git a/builder/lib/Mustache/test/_files/comments.js b/builder/lib/Mustache/test/_files/comments.js
deleted file mode 100644
index f20b8b11c..000000000
--- a/builder/lib/Mustache/test/_files/comments.js
+++ /dev/null
@@ -1,5 +0,0 @@
-({
- title: function () {
- return "A Comedy of Errors";
- }
-})
diff --git a/builder/lib/Mustache/test/_files/comments.mustache b/builder/lib/Mustache/test/_files/comments.mustache
deleted file mode 100644
index 503680186..000000000
--- a/builder/lib/Mustache/test/_files/comments.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{title}}{{! just something interesting... or not... }}
diff --git a/builder/lib/Mustache/test/_files/comments.txt b/builder/lib/Mustache/test/_files/comments.txt
deleted file mode 100644
index 0133517bb..000000000
--- a/builder/lib/Mustache/test/_files/comments.txt
+++ /dev/null
@@ -1 +0,0 @@
-A Comedy of Errors
diff --git a/builder/lib/Mustache/test/_files/complex.js b/builder/lib/Mustache/test/_files/complex.js
deleted file mode 100644
index 68a48093e..000000000
--- a/builder/lib/Mustache/test/_files/complex.js
+++ /dev/null
@@ -1,19 +0,0 @@
-({
- header: function () {
- return "Colors";
- },
- item: [
- {name: "red", current: true, url: "#Red"},
- {name: "green", current: false, url: "#Green"},
- {name: "blue", current: false, url: "#Blue"}
- ],
- link: function () {
- return this["current"] !== true;
- },
- list: function () {
- return this.item.length !== 0;
- },
- empty: function () {
- return this.item.length === 0;
- }
-})
diff --git a/builder/lib/Mustache/test/_files/complex.mustache b/builder/lib/Mustache/test/_files/complex.mustache
deleted file mode 100644
index 869a4f067..000000000
--- a/builder/lib/Mustache/test/_files/complex.mustache
+++ /dev/null
@@ -1,16 +0,0 @@
-{{header}}
-{{#list}}
-
- {{#item}}
- {{#current}}
- - {{name}}
- {{/current}}
- {{#link}}
- - {{name}}
- {{/link}}
- {{/item}}
-
-{{/list}}
-{{#empty}}
- The list is empty.
-{{/empty}}
diff --git a/builder/lib/Mustache/test/_files/complex.txt b/builder/lib/Mustache/test/_files/complex.txt
deleted file mode 100644
index 596d3f693..000000000
--- a/builder/lib/Mustache/test/_files/complex.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-Colors
-
diff --git a/builder/lib/Mustache/test/_files/context_lookup.js b/builder/lib/Mustache/test/_files/context_lookup.js
deleted file mode 100644
index 8ce62999e..000000000
--- a/builder/lib/Mustache/test/_files/context_lookup.js
+++ /dev/null
@@ -1,8 +0,0 @@
-({
- "outer": {
- "id": 1,
- "second": {
- "nothing": 2
- }
- }
-})
diff --git a/builder/lib/Mustache/test/_files/context_lookup.mustache b/builder/lib/Mustache/test/_files/context_lookup.mustache
deleted file mode 100644
index 3c7b76777..000000000
--- a/builder/lib/Mustache/test/_files/context_lookup.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{#outer}}{{#second}}{{id}}{{/second}}{{/outer}}
diff --git a/builder/lib/Mustache/test/_files/context_lookup.txt b/builder/lib/Mustache/test/_files/context_lookup.txt
deleted file mode 100644
index d00491fd7..000000000
--- a/builder/lib/Mustache/test/_files/context_lookup.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/builder/lib/Mustache/test/_files/delimiters.js b/builder/lib/Mustache/test/_files/delimiters.js
deleted file mode 100644
index 365d01e8e..000000000
--- a/builder/lib/Mustache/test/_files/delimiters.js
+++ /dev/null
@@ -1,6 +0,0 @@
-({
- first: "It worked the first time.",
- second: "And it worked the second time.",
- third: "Then, surprisingly, it worked the third time.",
- fourth: "Fourth time also fine!."
-})
diff --git a/builder/lib/Mustache/test/_files/delimiters.mustache b/builder/lib/Mustache/test/_files/delimiters.mustache
deleted file mode 100644
index 7fac8469d..000000000
--- a/builder/lib/Mustache/test/_files/delimiters.mustache
+++ /dev/null
@@ -1,7 +0,0 @@
-{{=<% %>=}}*
-<% first %>
-* <% second %>
-<%=| |=%>
-* | third |
-|={{ }}=|
-* {{ fourth }}
diff --git a/builder/lib/Mustache/test/_files/delimiters.txt b/builder/lib/Mustache/test/_files/delimiters.txt
deleted file mode 100644
index 698a6bbd0..000000000
--- a/builder/lib/Mustache/test/_files/delimiters.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-*
-It worked the first time.
-* And it worked the second time.
-* Then, surprisingly, it worked the third time.
-* Fourth time also fine!.
diff --git a/builder/lib/Mustache/test/_files/disappearing_whitespace.js b/builder/lib/Mustache/test/_files/disappearing_whitespace.js
deleted file mode 100644
index 973dd1c9c..000000000
--- a/builder/lib/Mustache/test/_files/disappearing_whitespace.js
+++ /dev/null
@@ -1,4 +0,0 @@
-({
- bedrooms: true,
- total: 1
-})
diff --git a/builder/lib/Mustache/test/_files/disappearing_whitespace.mustache b/builder/lib/Mustache/test/_files/disappearing_whitespace.mustache
deleted file mode 100644
index 16c16e055..000000000
--- a/builder/lib/Mustache/test/_files/disappearing_whitespace.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{#bedrooms}}{{total}}{{/bedrooms}} BED
diff --git a/builder/lib/Mustache/test/_files/disappearing_whitespace.txt b/builder/lib/Mustache/test/_files/disappearing_whitespace.txt
deleted file mode 100644
index 66e98ef47..000000000
--- a/builder/lib/Mustache/test/_files/disappearing_whitespace.txt
+++ /dev/null
@@ -1 +0,0 @@
-1 BED
diff --git a/builder/lib/Mustache/test/_files/dot_notation.js b/builder/lib/Mustache/test/_files/dot_notation.js
deleted file mode 100644
index de06a03a5..000000000
--- a/builder/lib/Mustache/test/_files/dot_notation.js
+++ /dev/null
@@ -1,23 +0,0 @@
-({
- name: "A Book",
- authors: ["John Power", "Jamie Walsh"],
- price: {
- value: 200,
- vat: function () {
- return this.value * 0.2;
- },
- currency: {
- symbol: '$',
- name: 'USD'
- }
- },
- availability: {
- status: true,
- text: "In Stock"
- },
- // And now, some truthy false values
- truthy: {
- zero: 0,
- notTrue: false
- }
-})
diff --git a/builder/lib/Mustache/test/_files/dot_notation.mustache b/builder/lib/Mustache/test/_files/dot_notation.mustache
deleted file mode 100644
index f89d70ba2..000000000
--- a/builder/lib/Mustache/test/_files/dot_notation.mustache
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{{name}}
-Authors:
{{#authors}}- {{.}}
{{/authors}}
-Price: {{{price.currency.symbol}}}{{price.value}} {{#price.currency}}{{name}} {{availability.text}}{{/price.currency}}
-VAT: {{{price.currency.symbol}}}{{#price}}{{vat}}{{/price}}
-
-Test truthy false values:
-Zero: {{truthy.zero}}
-False: {{truthy.notTrue}}
diff --git a/builder/lib/Mustache/test/_files/dot_notation.txt b/builder/lib/Mustache/test/_files/dot_notation.txt
deleted file mode 100644
index 08afa0529..000000000
--- a/builder/lib/Mustache/test/_files/dot_notation.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-
-A Book
-Authors:
-Price: $200 USD In Stock
-VAT: $40
-
-Test truthy false values:
-Zero: 0
-False: false
diff --git a/builder/lib/Mustache/test/_files/double_render.js b/builder/lib/Mustache/test/_files/double_render.js
deleted file mode 100644
index 28acb2c1a..000000000
--- a/builder/lib/Mustache/test/_files/double_render.js
+++ /dev/null
@@ -1,5 +0,0 @@
-({
- foo: true,
- bar: "{{win}}",
- win: "FAIL"
-})
diff --git a/builder/lib/Mustache/test/_files/double_render.mustache b/builder/lib/Mustache/test/_files/double_render.mustache
deleted file mode 100644
index 4500fd76c..000000000
--- a/builder/lib/Mustache/test/_files/double_render.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{#foo}}{{bar}}{{/foo}}
diff --git a/builder/lib/Mustache/test/_files/double_render.txt b/builder/lib/Mustache/test/_files/double_render.txt
deleted file mode 100644
index b6e652d05..000000000
--- a/builder/lib/Mustache/test/_files/double_render.txt
+++ /dev/null
@@ -1 +0,0 @@
-{{win}}
diff --git a/builder/lib/Mustache/test/_files/empty_list.js b/builder/lib/Mustache/test/_files/empty_list.js
deleted file mode 100644
index c0e115942..000000000
--- a/builder/lib/Mustache/test/_files/empty_list.js
+++ /dev/null
@@ -1,3 +0,0 @@
-({
- jobs: []
-})
diff --git a/builder/lib/Mustache/test/_files/empty_list.mustache b/builder/lib/Mustache/test/_files/empty_list.mustache
deleted file mode 100644
index 4fdf13d00..000000000
--- a/builder/lib/Mustache/test/_files/empty_list.mustache
+++ /dev/null
@@ -1,4 +0,0 @@
-These are the jobs:
-{{#jobs}}
-{{.}}
-{{/jobs}}
diff --git a/builder/lib/Mustache/test/_files/empty_list.txt b/builder/lib/Mustache/test/_files/empty_list.txt
deleted file mode 100644
index d9b4a6729..000000000
--- a/builder/lib/Mustache/test/_files/empty_list.txt
+++ /dev/null
@@ -1 +0,0 @@
-These are the jobs:
diff --git a/builder/lib/Mustache/test/_files/empty_sections.js b/builder/lib/Mustache/test/_files/empty_sections.js
deleted file mode 100644
index b4100a597..000000000
--- a/builder/lib/Mustache/test/_files/empty_sections.js
+++ /dev/null
@@ -1 +0,0 @@
-({})
diff --git a/builder/lib/Mustache/test/_files/empty_sections.mustache b/builder/lib/Mustache/test/_files/empty_sections.mustache
deleted file mode 100644
index b6065dbb6..000000000
--- a/builder/lib/Mustache/test/_files/empty_sections.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{#foo}}{{/foo}}foo{{#bar}}{{/bar}}
diff --git a/builder/lib/Mustache/test/_files/empty_sections.txt b/builder/lib/Mustache/test/_files/empty_sections.txt
deleted file mode 100644
index 257cc5642..000000000
--- a/builder/lib/Mustache/test/_files/empty_sections.txt
+++ /dev/null
@@ -1 +0,0 @@
-foo
diff --git a/builder/lib/Mustache/test/_files/empty_string.js b/builder/lib/Mustache/test/_files/empty_string.js
deleted file mode 100644
index be6e05876..000000000
--- a/builder/lib/Mustache/test/_files/empty_string.js
+++ /dev/null
@@ -1,6 +0,0 @@
-({
- description: "That is all!",
- child: {
- description: ""
- }
-})
diff --git a/builder/lib/Mustache/test/_files/empty_string.mustache b/builder/lib/Mustache/test/_files/empty_string.mustache
deleted file mode 100644
index f568441c0..000000000
--- a/builder/lib/Mustache/test/_files/empty_string.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{description}}{{#child}}{{description}}{{/child}}
diff --git a/builder/lib/Mustache/test/_files/empty_string.txt b/builder/lib/Mustache/test/_files/empty_string.txt
deleted file mode 100644
index 22e2a6e58..000000000
--- a/builder/lib/Mustache/test/_files/empty_string.txt
+++ /dev/null
@@ -1 +0,0 @@
-That is all!
diff --git a/builder/lib/Mustache/test/_files/empty_template.js b/builder/lib/Mustache/test/_files/empty_template.js
deleted file mode 100644
index b4100a597..000000000
--- a/builder/lib/Mustache/test/_files/empty_template.js
+++ /dev/null
@@ -1 +0,0 @@
-({})
diff --git a/builder/lib/Mustache/test/_files/empty_template.mustache b/builder/lib/Mustache/test/_files/empty_template.mustache
deleted file mode 100644
index bb2367a20..000000000
--- a/builder/lib/Mustache/test/_files/empty_template.mustache
+++ /dev/null
@@ -1 +0,0 @@
-Test
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/empty_template.txt b/builder/lib/Mustache/test/_files/empty_template.txt
deleted file mode 100644
index bb2367a20..000000000
--- a/builder/lib/Mustache/test/_files/empty_template.txt
+++ /dev/null
@@ -1 +0,0 @@
-Test
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/error_not_found.js b/builder/lib/Mustache/test/_files/error_not_found.js
deleted file mode 100644
index 10e470918..000000000
--- a/builder/lib/Mustache/test/_files/error_not_found.js
+++ /dev/null
@@ -1,3 +0,0 @@
-({
- bar: 2
-})
diff --git a/builder/lib/Mustache/test/_files/error_not_found.mustache b/builder/lib/Mustache/test/_files/error_not_found.mustache
deleted file mode 100644
index 24369f73a..000000000
--- a/builder/lib/Mustache/test/_files/error_not_found.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{foo}}
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/error_not_found.txt b/builder/lib/Mustache/test/_files/error_not_found.txt
deleted file mode 100644
index e69de29bb..000000000
diff --git a/builder/lib/Mustache/test/_files/escaped.js b/builder/lib/Mustache/test/_files/escaped.js
deleted file mode 100644
index cd77c1f49..000000000
--- a/builder/lib/Mustache/test/_files/escaped.js
+++ /dev/null
@@ -1,6 +0,0 @@
-({
- title: function () {
- return "Bear > Shark";
- },
- entities: "" \"'<>/"
-})
diff --git a/builder/lib/Mustache/test/_files/escaped.mustache b/builder/lib/Mustache/test/_files/escaped.mustache
deleted file mode 100644
index 93e800b31..000000000
--- a/builder/lib/Mustache/test/_files/escaped.mustache
+++ /dev/null
@@ -1,2 +0,0 @@
-{{title}}
-And even {{entities}}, but not {{{entities}}}.
diff --git a/builder/lib/Mustache/test/_files/escaped.txt b/builder/lib/Mustache/test/_files/escaped.txt
deleted file mode 100644
index c1527d510..000000000
--- a/builder/lib/Mustache/test/_files/escaped.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Bear > Shark
-And even " "'<>/, but not " "'<>/.
diff --git a/builder/lib/Mustache/test/_files/falsy.js b/builder/lib/Mustache/test/_files/falsy.js
deleted file mode 100644
index ae9b9bf25..000000000
--- a/builder/lib/Mustache/test/_files/falsy.js
+++ /dev/null
@@ -1,8 +0,0 @@
-({
- "emptyString": "",
- "emptyArray": [],
- "zero": 0,
- "null": null,
- "undefined": undefined,
- "NaN": 0/0
-})
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/falsy.mustache b/builder/lib/Mustache/test/_files/falsy.mustache
deleted file mode 100644
index f3698da64..000000000
--- a/builder/lib/Mustache/test/_files/falsy.mustache
+++ /dev/null
@@ -1,12 +0,0 @@
-{{#emptyString}}empty string{{/emptyString}}
-{{^emptyString}}inverted empty string{{/emptyString}}
-{{#emptyArray}}empty array{{/emptyArray}}
-{{^emptyArray}}inverted empty array{{/emptyArray}}
-{{#zero}}zero{{/zero}}
-{{^zero}}inverted zero{{/zero}}
-{{#null}}null{{/null}}
-{{^null}}inverted null{{/null}}
-{{#undefined}}undefined{{/undefined}}
-{{^undefined}}inverted undefined{{/undefined}}
-{{#NaN}}NaN{{/NaN}}
-{{^NaN}}inverted NaN{{/NaN}}
diff --git a/builder/lib/Mustache/test/_files/falsy.txt b/builder/lib/Mustache/test/_files/falsy.txt
deleted file mode 100644
index 9b7cde39c..000000000
--- a/builder/lib/Mustache/test/_files/falsy.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-
-inverted empty string
-
-inverted empty array
-
-inverted zero
-
-inverted null
-
-inverted undefined
-
-inverted NaN
diff --git a/builder/lib/Mustache/test/_files/grandparent_context.js b/builder/lib/Mustache/test/_files/grandparent_context.js
deleted file mode 100644
index 97dbfd398..000000000
--- a/builder/lib/Mustache/test/_files/grandparent_context.js
+++ /dev/null
@@ -1,19 +0,0 @@
-({
- grand_parent_id: 'grand_parent1',
- parent_contexts: [
- {
- parent_id: 'parent1',
- child_contexts: [
- { child_id: 'parent1-child1' },
- { child_id: 'parent1-child2' }
- ]
- },
- {
- parent_id: 'parent2',
- child_contexts: [
- { child_id: 'parent2-child1' },
- { child_id: 'parent2-child2' }
- ]
- }
- ]
-})
diff --git a/builder/lib/Mustache/test/_files/grandparent_context.mustache b/builder/lib/Mustache/test/_files/grandparent_context.mustache
deleted file mode 100644
index e6c07a221..000000000
--- a/builder/lib/Mustache/test/_files/grandparent_context.mustache
+++ /dev/null
@@ -1,10 +0,0 @@
-{{grand_parent_id}}
-{{#parent_contexts}}
-{{grand_parent_id}}
-{{parent_id}}
-{{#child_contexts}}
-{{grand_parent_id}}
-{{parent_id}}
-{{child_id}}
-{{/child_contexts}}
-{{/parent_contexts}}
diff --git a/builder/lib/Mustache/test/_files/grandparent_context.txt b/builder/lib/Mustache/test/_files/grandparent_context.txt
deleted file mode 100644
index 64996ad4c..000000000
--- a/builder/lib/Mustache/test/_files/grandparent_context.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-grand_parent1
-grand_parent1
-parent1
-grand_parent1
-parent1
-parent1-child1
-grand_parent1
-parent1
-parent1-child2
-grand_parent1
-parent2
-grand_parent1
-parent2
-parent2-child1
-grand_parent1
-parent2
-parent2-child2
diff --git a/builder/lib/Mustache/test/_files/higher_order_sections.js b/builder/lib/Mustache/test/_files/higher_order_sections.js
deleted file mode 100644
index bacb0a44a..000000000
--- a/builder/lib/Mustache/test/_files/higher_order_sections.js
+++ /dev/null
@@ -1,9 +0,0 @@
-({
- name: "Tater",
- helper: "To tinker?",
- bolder: function () {
- return function (text, render) {
- return text + ' => ' + render(text) + ' ' + this.helper;
- }
- }
-})
diff --git a/builder/lib/Mustache/test/_files/higher_order_sections.mustache b/builder/lib/Mustache/test/_files/higher_order_sections.mustache
deleted file mode 100644
index 04f5318df..000000000
--- a/builder/lib/Mustache/test/_files/higher_order_sections.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{#bolder}}Hi {{name}}.{{/bolder}}
diff --git a/builder/lib/Mustache/test/_files/higher_order_sections.txt b/builder/lib/Mustache/test/_files/higher_order_sections.txt
deleted file mode 100644
index be50ad764..000000000
--- a/builder/lib/Mustache/test/_files/higher_order_sections.txt
+++ /dev/null
@@ -1 +0,0 @@
-Hi {{name}}. => Hi Tater. To tinker?
diff --git a/builder/lib/Mustache/test/_files/included_tag.js b/builder/lib/Mustache/test/_files/included_tag.js
deleted file mode 100644
index eb032a42c..000000000
--- a/builder/lib/Mustache/test/_files/included_tag.js
+++ /dev/null
@@ -1,3 +0,0 @@
-({
- html: "I like {{mustache}}"
-})
diff --git a/builder/lib/Mustache/test/_files/included_tag.mustache b/builder/lib/Mustache/test/_files/included_tag.mustache
deleted file mode 100644
index 70631c259..000000000
--- a/builder/lib/Mustache/test/_files/included_tag.mustache
+++ /dev/null
@@ -1 +0,0 @@
-You said "{{{html}}}" today
diff --git a/builder/lib/Mustache/test/_files/included_tag.txt b/builder/lib/Mustache/test/_files/included_tag.txt
deleted file mode 100644
index 1af45567f..000000000
--- a/builder/lib/Mustache/test/_files/included_tag.txt
+++ /dev/null
@@ -1 +0,0 @@
-You said "I like {{mustache}}" today
diff --git a/builder/lib/Mustache/test/_files/inverted_section.js b/builder/lib/Mustache/test/_files/inverted_section.js
deleted file mode 100644
index f8f08fd26..000000000
--- a/builder/lib/Mustache/test/_files/inverted_section.js
+++ /dev/null
@@ -1,3 +0,0 @@
-({
- "repos": []
-})
diff --git a/builder/lib/Mustache/test/_files/inverted_section.mustache b/builder/lib/Mustache/test/_files/inverted_section.mustache
deleted file mode 100644
index b0a183b10..000000000
--- a/builder/lib/Mustache/test/_files/inverted_section.mustache
+++ /dev/null
@@ -1,3 +0,0 @@
-{{#repos}}{{name}}{{/repos}}
-{{^repos}}No repos :({{/repos}}
-{{^nothin}}Hello!{{/nothin}}
diff --git a/builder/lib/Mustache/test/_files/inverted_section.txt b/builder/lib/Mustache/test/_files/inverted_section.txt
deleted file mode 100644
index b421582e7..000000000
--- a/builder/lib/Mustache/test/_files/inverted_section.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-
-No repos :(
-Hello!
diff --git a/builder/lib/Mustache/test/_files/keys_with_questionmarks.js b/builder/lib/Mustache/test/_files/keys_with_questionmarks.js
deleted file mode 100644
index becd63102..000000000
--- a/builder/lib/Mustache/test/_files/keys_with_questionmarks.js
+++ /dev/null
@@ -1,5 +0,0 @@
-({
- "person?": {
- name: "Jon"
- }
-})
diff --git a/builder/lib/Mustache/test/_files/keys_with_questionmarks.mustache b/builder/lib/Mustache/test/_files/keys_with_questionmarks.mustache
deleted file mode 100644
index 417f17f3c..000000000
--- a/builder/lib/Mustache/test/_files/keys_with_questionmarks.mustache
+++ /dev/null
@@ -1,3 +0,0 @@
-{{#person?}}
- Hi {{name}}!
-{{/person?}}
diff --git a/builder/lib/Mustache/test/_files/keys_with_questionmarks.txt b/builder/lib/Mustache/test/_files/keys_with_questionmarks.txt
deleted file mode 100644
index 0f69b9433..000000000
--- a/builder/lib/Mustache/test/_files/keys_with_questionmarks.txt
+++ /dev/null
@@ -1 +0,0 @@
- Hi Jon!
diff --git a/builder/lib/Mustache/test/_files/malicious_template.js b/builder/lib/Mustache/test/_files/malicious_template.js
deleted file mode 100644
index b4100a597..000000000
--- a/builder/lib/Mustache/test/_files/malicious_template.js
+++ /dev/null
@@ -1 +0,0 @@
-({})
diff --git a/builder/lib/Mustache/test/_files/malicious_template.mustache b/builder/lib/Mustache/test/_files/malicious_template.mustache
deleted file mode 100644
index b956867ec..000000000
--- a/builder/lib/Mustache/test/_files/malicious_template.mustache
+++ /dev/null
@@ -1,5 +0,0 @@
-{{"+(function () {throw "evil"})()+"}}
-{{{"+(function () {throw "evil"})()+"}}}
-{{> "+(function () {throw "evil"})()+"}}
-{{# "+(function () {throw "evil"})()+"}}
-{{/ "+(function () {throw "evil"})()+"}}
diff --git a/builder/lib/Mustache/test/_files/malicious_template.txt b/builder/lib/Mustache/test/_files/malicious_template.txt
deleted file mode 100644
index 139597f9c..000000000
--- a/builder/lib/Mustache/test/_files/malicious_template.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/builder/lib/Mustache/test/_files/multiline_comment.js b/builder/lib/Mustache/test/_files/multiline_comment.js
deleted file mode 100644
index b4100a597..000000000
--- a/builder/lib/Mustache/test/_files/multiline_comment.js
+++ /dev/null
@@ -1 +0,0 @@
-({})
diff --git a/builder/lib/Mustache/test/_files/multiline_comment.mustache b/builder/lib/Mustache/test/_files/multiline_comment.mustache
deleted file mode 100644
index dff0893d0..000000000
--- a/builder/lib/Mustache/test/_files/multiline_comment.mustache
+++ /dev/null
@@ -1,6 +0,0 @@
-{{!
-
-This is a multi-line comment.
-
-}}
-Hello world!
diff --git a/builder/lib/Mustache/test/_files/multiline_comment.txt b/builder/lib/Mustache/test/_files/multiline_comment.txt
deleted file mode 100644
index cd0875583..000000000
--- a/builder/lib/Mustache/test/_files/multiline_comment.txt
+++ /dev/null
@@ -1 +0,0 @@
-Hello world!
diff --git a/builder/lib/Mustache/test/_files/nested_higher_order_sections.js b/builder/lib/Mustache/test/_files/nested_higher_order_sections.js
deleted file mode 100644
index 3ccf4d372..000000000
--- a/builder/lib/Mustache/test/_files/nested_higher_order_sections.js
+++ /dev/null
@@ -1,8 +0,0 @@
-({
- bold: function () {
- return function (text, render) {
- return '' + render(text) + '';
- };
- },
- person: { name: 'Jonas' }
-});
diff --git a/builder/lib/Mustache/test/_files/nested_higher_order_sections.mustache b/builder/lib/Mustache/test/_files/nested_higher_order_sections.mustache
deleted file mode 100644
index e312fe79a..000000000
--- a/builder/lib/Mustache/test/_files/nested_higher_order_sections.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{#bold}}{{#person}}My name is {{name}}!{{/person}}{{/bold}}
diff --git a/builder/lib/Mustache/test/_files/nested_higher_order_sections.txt b/builder/lib/Mustache/test/_files/nested_higher_order_sections.txt
deleted file mode 100644
index 0ee6a406a..000000000
--- a/builder/lib/Mustache/test/_files/nested_higher_order_sections.txt
+++ /dev/null
@@ -1 +0,0 @@
-My name is Jonas!
diff --git a/builder/lib/Mustache/test/_files/nested_iterating.js b/builder/lib/Mustache/test/_files/nested_iterating.js
deleted file mode 100644
index 2708b2db5..000000000
--- a/builder/lib/Mustache/test/_files/nested_iterating.js
+++ /dev/null
@@ -1,8 +0,0 @@
-({
- inner: [{
- foo: 'foo',
- inner: [{
- bar: 'bar'
- }]
- }]
-})
diff --git a/builder/lib/Mustache/test/_files/nested_iterating.mustache b/builder/lib/Mustache/test/_files/nested_iterating.mustache
deleted file mode 100644
index 1a3bb1a2e..000000000
--- a/builder/lib/Mustache/test/_files/nested_iterating.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{#inner}}{{foo}}{{#inner}}{{bar}}{{/inner}}{{/inner}}
diff --git a/builder/lib/Mustache/test/_files/nested_iterating.txt b/builder/lib/Mustache/test/_files/nested_iterating.txt
deleted file mode 100644
index 323fae03f..000000000
--- a/builder/lib/Mustache/test/_files/nested_iterating.txt
+++ /dev/null
@@ -1 +0,0 @@
-foobar
diff --git a/builder/lib/Mustache/test/_files/nesting.js b/builder/lib/Mustache/test/_files/nesting.js
deleted file mode 100644
index 264cc2f77..000000000
--- a/builder/lib/Mustache/test/_files/nesting.js
+++ /dev/null
@@ -1,7 +0,0 @@
-({
- foo: [
- {a: {b: 1}},
- {a: {b: 2}},
- {a: {b: 3}}
- ]
-})
diff --git a/builder/lib/Mustache/test/_files/nesting.mustache b/builder/lib/Mustache/test/_files/nesting.mustache
deleted file mode 100644
index 551366dea..000000000
--- a/builder/lib/Mustache/test/_files/nesting.mustache
+++ /dev/null
@@ -1,5 +0,0 @@
-{{#foo}}
- {{#a}}
- {{b}}
- {{/a}}
-{{/foo}}
diff --git a/builder/lib/Mustache/test/_files/nesting.txt b/builder/lib/Mustache/test/_files/nesting.txt
deleted file mode 100644
index 7db34b172..000000000
--- a/builder/lib/Mustache/test/_files/nesting.txt
+++ /dev/null
@@ -1,3 +0,0 @@
- 1
- 2
- 3
diff --git a/builder/lib/Mustache/test/_files/nesting_same_name.js b/builder/lib/Mustache/test/_files/nesting_same_name.js
deleted file mode 100644
index 10a0c1401..000000000
--- a/builder/lib/Mustache/test/_files/nesting_same_name.js
+++ /dev/null
@@ -1,8 +0,0 @@
-({
- items: [
- {
- name: 'name',
- items: [1, 2, 3, 4]
- }
- ]
-})
diff --git a/builder/lib/Mustache/test/_files/nesting_same_name.mustache b/builder/lib/Mustache/test/_files/nesting_same_name.mustache
deleted file mode 100644
index 777dbd685..000000000
--- a/builder/lib/Mustache/test/_files/nesting_same_name.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{#items}}{{name}}{{#items}}{{.}}{{/items}}{{/items}}
diff --git a/builder/lib/Mustache/test/_files/nesting_same_name.txt b/builder/lib/Mustache/test/_files/nesting_same_name.txt
deleted file mode 100644
index 34fcfd3e8..000000000
--- a/builder/lib/Mustache/test/_files/nesting_same_name.txt
+++ /dev/null
@@ -1 +0,0 @@
-name1234
diff --git a/builder/lib/Mustache/test/_files/null_string.js b/builder/lib/Mustache/test/_files/null_string.js
deleted file mode 100644
index 984ee516a..000000000
--- a/builder/lib/Mustache/test/_files/null_string.js
+++ /dev/null
@@ -1,10 +0,0 @@
-({
- name: "Elise",
- glytch: true,
- binary: false,
- value: null,
- undef: undefined,
- numeric: function() {
- return NaN;
- }
-})
diff --git a/builder/lib/Mustache/test/_files/null_string.mustache b/builder/lib/Mustache/test/_files/null_string.mustache
deleted file mode 100644
index a6f33009f..000000000
--- a/builder/lib/Mustache/test/_files/null_string.mustache
+++ /dev/null
@@ -1,6 +0,0 @@
-Hello {{name}}
-glytch {{glytch}}
-binary {{binary}}
-value {{value}}
-undef {{undef}}
-numeric {{numeric}}
diff --git a/builder/lib/Mustache/test/_files/null_string.txt b/builder/lib/Mustache/test/_files/null_string.txt
deleted file mode 100644
index bcabe0a5a..000000000
--- a/builder/lib/Mustache/test/_files/null_string.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-Hello Elise
-glytch true
-binary false
-value
-undef
-numeric NaN
diff --git a/builder/lib/Mustache/test/_files/null_view.js b/builder/lib/Mustache/test/_files/null_view.js
deleted file mode 100644
index dbdae728e..000000000
--- a/builder/lib/Mustache/test/_files/null_view.js
+++ /dev/null
@@ -1,4 +0,0 @@
-({
- name: 'Joe',
- friends: null
-})
diff --git a/builder/lib/Mustache/test/_files/null_view.mustache b/builder/lib/Mustache/test/_files/null_view.mustache
deleted file mode 100644
index 115b376b5..000000000
--- a/builder/lib/Mustache/test/_files/null_view.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{name}}'s friends: {{#friends}}{{name}}, {{/friends}}
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/null_view.txt b/builder/lib/Mustache/test/_files/null_view.txt
deleted file mode 100644
index 15ed2abe1..000000000
--- a/builder/lib/Mustache/test/_files/null_view.txt
+++ /dev/null
@@ -1 +0,0 @@
-Joe's friends:
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/partial_array.js b/builder/lib/Mustache/test/_files/partial_array.js
deleted file mode 100644
index 2a6ddf1cf..000000000
--- a/builder/lib/Mustache/test/_files/partial_array.js
+++ /dev/null
@@ -1,3 +0,0 @@
-({
- array: ['1', '2', '3', '4']
-})
diff --git a/builder/lib/Mustache/test/_files/partial_array.mustache b/builder/lib/Mustache/test/_files/partial_array.mustache
deleted file mode 100644
index 7a336fee8..000000000
--- a/builder/lib/Mustache/test/_files/partial_array.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{>partial}}
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/partial_array.partial b/builder/lib/Mustache/test/_files/partial_array.partial
deleted file mode 100644
index 0ba652c1e..000000000
--- a/builder/lib/Mustache/test/_files/partial_array.partial
+++ /dev/null
@@ -1,4 +0,0 @@
-Here's a non-sense array of values
-{{#array}}
- {{.}}
-{{/array}}
diff --git a/builder/lib/Mustache/test/_files/partial_array.txt b/builder/lib/Mustache/test/_files/partial_array.txt
deleted file mode 100644
index 892837cb7..000000000
--- a/builder/lib/Mustache/test/_files/partial_array.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-Here's a non-sense array of values
- 1
- 2
- 3
- 4
diff --git a/builder/lib/Mustache/test/_files/partial_array_of_partials.js b/builder/lib/Mustache/test/_files/partial_array_of_partials.js
deleted file mode 100644
index 03f13c946..000000000
--- a/builder/lib/Mustache/test/_files/partial_array_of_partials.js
+++ /dev/null
@@ -1,8 +0,0 @@
-({
- numbers: [
- {i: '1'},
- {i: '2'},
- {i: '3'},
- {i: '4'}
- ]
-})
diff --git a/builder/lib/Mustache/test/_files/partial_array_of_partials.mustache b/builder/lib/Mustache/test/_files/partial_array_of_partials.mustache
deleted file mode 100644
index 1af6d68c6..000000000
--- a/builder/lib/Mustache/test/_files/partial_array_of_partials.mustache
+++ /dev/null
@@ -1,4 +0,0 @@
-Here is some stuff!
-{{#numbers}}
-{{>partial}}
-{{/numbers}}
diff --git a/builder/lib/Mustache/test/_files/partial_array_of_partials.partial b/builder/lib/Mustache/test/_files/partial_array_of_partials.partial
deleted file mode 100644
index bdde77daf..000000000
--- a/builder/lib/Mustache/test/_files/partial_array_of_partials.partial
+++ /dev/null
@@ -1 +0,0 @@
-{{i}}
diff --git a/builder/lib/Mustache/test/_files/partial_array_of_partials.txt b/builder/lib/Mustache/test/_files/partial_array_of_partials.txt
deleted file mode 100644
index f622375c8..000000000
--- a/builder/lib/Mustache/test/_files/partial_array_of_partials.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-Here is some stuff!
-1
-2
-3
-4
diff --git a/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.js b/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.js
deleted file mode 100644
index 9ec0c00ff..000000000
--- a/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.js
+++ /dev/null
@@ -1,3 +0,0 @@
-({
- numbers: ['1', '2', '3', '4']
-})
diff --git a/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.mustache b/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.mustache
deleted file mode 100644
index 1af6d68c6..000000000
--- a/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.mustache
+++ /dev/null
@@ -1,4 +0,0 @@
-Here is some stuff!
-{{#numbers}}
-{{>partial}}
-{{/numbers}}
diff --git a/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.partial b/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.partial
deleted file mode 100644
index 12f715986..000000000
--- a/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.partial
+++ /dev/null
@@ -1 +0,0 @@
-{{.}}
diff --git a/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.txt b/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.txt
deleted file mode 100644
index f622375c8..000000000
--- a/builder/lib/Mustache/test/_files/partial_array_of_partials_implicit.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-Here is some stuff!
-1
-2
-3
-4
diff --git a/builder/lib/Mustache/test/_files/partial_empty.js b/builder/lib/Mustache/test/_files/partial_empty.js
deleted file mode 100644
index 82b8c2242..000000000
--- a/builder/lib/Mustache/test/_files/partial_empty.js
+++ /dev/null
@@ -1,3 +0,0 @@
-({
- foo: 1
-})
diff --git a/builder/lib/Mustache/test/_files/partial_empty.mustache b/builder/lib/Mustache/test/_files/partial_empty.mustache
deleted file mode 100644
index a71004703..000000000
--- a/builder/lib/Mustache/test/_files/partial_empty.mustache
+++ /dev/null
@@ -1,2 +0,0 @@
-hey {{foo}}
-{{>partial}}
diff --git a/builder/lib/Mustache/test/_files/partial_empty.partial b/builder/lib/Mustache/test/_files/partial_empty.partial
deleted file mode 100644
index e69de29bb..000000000
diff --git a/builder/lib/Mustache/test/_files/partial_empty.txt b/builder/lib/Mustache/test/_files/partial_empty.txt
deleted file mode 100644
index 1a679077b..000000000
--- a/builder/lib/Mustache/test/_files/partial_empty.txt
+++ /dev/null
@@ -1 +0,0 @@
-hey 1
diff --git a/builder/lib/Mustache/test/_files/partial_template.js b/builder/lib/Mustache/test/_files/partial_template.js
deleted file mode 100644
index a913f8784..000000000
--- a/builder/lib/Mustache/test/_files/partial_template.js
+++ /dev/null
@@ -1,6 +0,0 @@
-({
- title: function () {
- return "Welcome";
- },
- again: "Goodbye"
-})
diff --git a/builder/lib/Mustache/test/_files/partial_template.mustache b/builder/lib/Mustache/test/_files/partial_template.mustache
deleted file mode 100644
index 6a7492e00..000000000
--- a/builder/lib/Mustache/test/_files/partial_template.mustache
+++ /dev/null
@@ -1,2 +0,0 @@
-{{title}}
-{{>partial}}
diff --git a/builder/lib/Mustache/test/_files/partial_template.partial b/builder/lib/Mustache/test/_files/partial_template.partial
deleted file mode 100644
index a40452924..000000000
--- a/builder/lib/Mustache/test/_files/partial_template.partial
+++ /dev/null
@@ -1 +0,0 @@
-Again, {{again}}!
diff --git a/builder/lib/Mustache/test/_files/partial_template.txt b/builder/lib/Mustache/test/_files/partial_template.txt
deleted file mode 100644
index 692698f08..000000000
--- a/builder/lib/Mustache/test/_files/partial_template.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Welcome
-Again, Goodbye!
diff --git a/builder/lib/Mustache/test/_files/partial_view.js b/builder/lib/Mustache/test/_files/partial_view.js
deleted file mode 100644
index 3ad70d35c..000000000
--- a/builder/lib/Mustache/test/_files/partial_view.js
+++ /dev/null
@@ -1,14 +0,0 @@
-({
- greeting: function () {
- return "Welcome";
- },
- farewell: function () {
- return "Fair enough, right?";
- },
- name: "Chris",
- value: 10000,
- taxed_value: function () {
- return this.value - (this.value * 0.4);
- },
- in_ca: true
-})
diff --git a/builder/lib/Mustache/test/_files/partial_view.mustache b/builder/lib/Mustache/test/_files/partial_view.mustache
deleted file mode 100644
index f8f6a5b7d..000000000
--- a/builder/lib/Mustache/test/_files/partial_view.mustache
+++ /dev/null
@@ -1,3 +0,0 @@
-{{greeting}}
-{{>partial}}
-{{farewell}}
diff --git a/builder/lib/Mustache/test/_files/partial_view.partial b/builder/lib/Mustache/test/_files/partial_view.partial
deleted file mode 100644
index 03df20686..000000000
--- a/builder/lib/Mustache/test/_files/partial_view.partial
+++ /dev/null
@@ -1,5 +0,0 @@
-Hello {{name}}
-You have just won ${{value}}!
-{{#in_ca}}
-Well, ${{ taxed_value }}, after taxes.
-{{/in_ca}}
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/partial_view.txt b/builder/lib/Mustache/test/_files/partial_view.txt
deleted file mode 100644
index c09147c7f..000000000
--- a/builder/lib/Mustache/test/_files/partial_view.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-Welcome
-Hello Chris
-You have just won $10000!
-Well, $6000, after taxes.
-Fair enough, right?
diff --git a/builder/lib/Mustache/test/_files/partial_whitespace.js b/builder/lib/Mustache/test/_files/partial_whitespace.js
deleted file mode 100644
index 3ad70d35c..000000000
--- a/builder/lib/Mustache/test/_files/partial_whitespace.js
+++ /dev/null
@@ -1,14 +0,0 @@
-({
- greeting: function () {
- return "Welcome";
- },
- farewell: function () {
- return "Fair enough, right?";
- },
- name: "Chris",
- value: 10000,
- taxed_value: function () {
- return this.value - (this.value * 0.4);
- },
- in_ca: true
-})
diff --git a/builder/lib/Mustache/test/_files/partial_whitespace.mustache b/builder/lib/Mustache/test/_files/partial_whitespace.mustache
deleted file mode 100644
index 48bd1ff80..000000000
--- a/builder/lib/Mustache/test/_files/partial_whitespace.mustache
+++ /dev/null
@@ -1,3 +0,0 @@
-{{ greeting }}
-{{> partial }}
-{{ farewell }}
diff --git a/builder/lib/Mustache/test/_files/partial_whitespace.partial b/builder/lib/Mustache/test/_files/partial_whitespace.partial
deleted file mode 100644
index 30de8f6c1..000000000
--- a/builder/lib/Mustache/test/_files/partial_whitespace.partial
+++ /dev/null
@@ -1,5 +0,0 @@
-Hello {{ name}}
-You have just won ${{value }}!
-{{# in_ca }}
-Well, ${{ taxed_value }}, after taxes.
-{{/ in_ca }}
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/partial_whitespace.txt b/builder/lib/Mustache/test/_files/partial_whitespace.txt
deleted file mode 100644
index c09147c7f..000000000
--- a/builder/lib/Mustache/test/_files/partial_whitespace.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-Welcome
-Hello Chris
-You have just won $10000!
-Well, $6000, after taxes.
-Fair enough, right?
diff --git a/builder/lib/Mustache/test/_files/recursion_with_same_names.js b/builder/lib/Mustache/test/_files/recursion_with_same_names.js
deleted file mode 100644
index ce2650291..000000000
--- a/builder/lib/Mustache/test/_files/recursion_with_same_names.js
+++ /dev/null
@@ -1,8 +0,0 @@
-({
- name: 'name',
- description: 'desc',
- terms: [
- {name: 't1', index: 0},
- {name: 't2', index: 1}
- ]
-})
diff --git a/builder/lib/Mustache/test/_files/recursion_with_same_names.mustache b/builder/lib/Mustache/test/_files/recursion_with_same_names.mustache
deleted file mode 100644
index c331d0453..000000000
--- a/builder/lib/Mustache/test/_files/recursion_with_same_names.mustache
+++ /dev/null
@@ -1,7 +0,0 @@
-{{ name }}
-{{ description }}
-
-{{#terms}}
- {{name}}
- {{index}}
-{{/terms}}
diff --git a/builder/lib/Mustache/test/_files/recursion_with_same_names.txt b/builder/lib/Mustache/test/_files/recursion_with_same_names.txt
deleted file mode 100644
index cb15d750e..000000000
--- a/builder/lib/Mustache/test/_files/recursion_with_same_names.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-name
-desc
-
- t1
- 0
- t2
- 1
diff --git a/builder/lib/Mustache/test/_files/reuse_of_enumerables.js b/builder/lib/Mustache/test/_files/reuse_of_enumerables.js
deleted file mode 100644
index 4368b5743..000000000
--- a/builder/lib/Mustache/test/_files/reuse_of_enumerables.js
+++ /dev/null
@@ -1,6 +0,0 @@
-({
- terms: [
- {name: 't1', index: 0},
- {name: 't2', index: 1}
- ]
-})
diff --git a/builder/lib/Mustache/test/_files/reuse_of_enumerables.mustache b/builder/lib/Mustache/test/_files/reuse_of_enumerables.mustache
deleted file mode 100644
index cc0cb7a41..000000000
--- a/builder/lib/Mustache/test/_files/reuse_of_enumerables.mustache
+++ /dev/null
@@ -1,8 +0,0 @@
-{{#terms}}
- {{name}}
- {{index}}
-{{/terms}}
-{{#terms}}
- {{name}}
- {{index}}
-{{/terms}}
diff --git a/builder/lib/Mustache/test/_files/reuse_of_enumerables.txt b/builder/lib/Mustache/test/_files/reuse_of_enumerables.txt
deleted file mode 100644
index 6d05d9643..000000000
--- a/builder/lib/Mustache/test/_files/reuse_of_enumerables.txt
+++ /dev/null
@@ -1,8 +0,0 @@
- t1
- 0
- t2
- 1
- t1
- 0
- t2
- 1
diff --git a/builder/lib/Mustache/test/_files/section_as_context.js b/builder/lib/Mustache/test/_files/section_as_context.js
deleted file mode 100644
index 425b29cb4..000000000
--- a/builder/lib/Mustache/test/_files/section_as_context.js
+++ /dev/null
@@ -1,10 +0,0 @@
-({
- a_object: {
- title: 'this is an object',
- description: 'one of its attributes is a list',
- a_list: [
- {label: 'listitem1'},
- {label: 'listitem2'}
- ]
- }
-})
diff --git a/builder/lib/Mustache/test/_files/section_as_context.mustache b/builder/lib/Mustache/test/_files/section_as_context.mustache
deleted file mode 100644
index 59990f658..000000000
--- a/builder/lib/Mustache/test/_files/section_as_context.mustache
+++ /dev/null
@@ -1,9 +0,0 @@
-{{#a_object}}
- {{title}}
- {{description}}
-
- {{#a_list}}
- - {{label}}
- {{/a_list}}
-
-{{/a_object}}
diff --git a/builder/lib/Mustache/test/_files/section_as_context.txt b/builder/lib/Mustache/test/_files/section_as_context.txt
deleted file mode 100644
index d834e8047..000000000
--- a/builder/lib/Mustache/test/_files/section_as_context.txt
+++ /dev/null
@@ -1,6 +0,0 @@
- this is an object
- one of its attributes is a list
-
- - listitem1
- - listitem2
-
diff --git a/builder/lib/Mustache/test/_files/simple.js b/builder/lib/Mustache/test/_files/simple.js
deleted file mode 100644
index 1d8d6f425..000000000
--- a/builder/lib/Mustache/test/_files/simple.js
+++ /dev/null
@@ -1,8 +0,0 @@
-({
- name: "Chris",
- value: 10000,
- taxed_value: function () {
- return this.value - (this.value * 0.4);
- },
- in_ca: true
-})
diff --git a/builder/lib/Mustache/test/_files/simple.mustache b/builder/lib/Mustache/test/_files/simple.mustache
deleted file mode 100644
index 2fea6327a..000000000
--- a/builder/lib/Mustache/test/_files/simple.mustache
+++ /dev/null
@@ -1,5 +0,0 @@
-Hello {{name}}
-You have just won ${{value}}!
-{{#in_ca}}
-Well, ${{ taxed_value }}, after taxes.
-{{/in_ca}}
diff --git a/builder/lib/Mustache/test/_files/simple.txt b/builder/lib/Mustache/test/_files/simple.txt
deleted file mode 100644
index 5d75d6562..000000000
--- a/builder/lib/Mustache/test/_files/simple.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-Hello Chris
-You have just won $10000!
-Well, $6000, after taxes.
diff --git a/builder/lib/Mustache/test/_files/string_as_context.js b/builder/lib/Mustache/test/_files/string_as_context.js
deleted file mode 100644
index e8bb4da00..000000000
--- a/builder/lib/Mustache/test/_files/string_as_context.js
+++ /dev/null
@@ -1,4 +0,0 @@
-({
- a_string: 'aa',
- a_list: ['a','b','c']
-})
diff --git a/builder/lib/Mustache/test/_files/string_as_context.mustache b/builder/lib/Mustache/test/_files/string_as_context.mustache
deleted file mode 100644
index 00f7181b1..000000000
--- a/builder/lib/Mustache/test/_files/string_as_context.mustache
+++ /dev/null
@@ -1,5 +0,0 @@
-
-{{#a_list}}
- - {{a_string}}/{{.}}
-{{/a_list}}
-
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/string_as_context.txt b/builder/lib/Mustache/test/_files/string_as_context.txt
deleted file mode 100644
index 8bd87ff82..000000000
--- a/builder/lib/Mustache/test/_files/string_as_context.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/_files/two_in_a_row.js b/builder/lib/Mustache/test/_files/two_in_a_row.js
deleted file mode 100644
index 9c17c1173..000000000
--- a/builder/lib/Mustache/test/_files/two_in_a_row.js
+++ /dev/null
@@ -1,4 +0,0 @@
-({
- name: "Joe",
- greeting: "Welcome"
-})
diff --git a/builder/lib/Mustache/test/_files/two_in_a_row.mustache b/builder/lib/Mustache/test/_files/two_in_a_row.mustache
deleted file mode 100644
index b23f29e87..000000000
--- a/builder/lib/Mustache/test/_files/two_in_a_row.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{greeting}}, {{name}}!
diff --git a/builder/lib/Mustache/test/_files/two_in_a_row.txt b/builder/lib/Mustache/test/_files/two_in_a_row.txt
deleted file mode 100644
index c6d6a9b48..000000000
--- a/builder/lib/Mustache/test/_files/two_in_a_row.txt
+++ /dev/null
@@ -1 +0,0 @@
-Welcome, Joe!
diff --git a/builder/lib/Mustache/test/_files/two_sections.js b/builder/lib/Mustache/test/_files/two_sections.js
deleted file mode 100644
index b4100a597..000000000
--- a/builder/lib/Mustache/test/_files/two_sections.js
+++ /dev/null
@@ -1 +0,0 @@
-({})
diff --git a/builder/lib/Mustache/test/_files/two_sections.mustache b/builder/lib/Mustache/test/_files/two_sections.mustache
deleted file mode 100644
index a4b9f2a78..000000000
--- a/builder/lib/Mustache/test/_files/two_sections.mustache
+++ /dev/null
@@ -1,4 +0,0 @@
-{{#foo}}
-{{/foo}}
-{{#bar}}
-{{/bar}}
diff --git a/builder/lib/Mustache/test/_files/two_sections.txt b/builder/lib/Mustache/test/_files/two_sections.txt
deleted file mode 100644
index e69de29bb..000000000
diff --git a/builder/lib/Mustache/test/_files/unescaped.js b/builder/lib/Mustache/test/_files/unescaped.js
deleted file mode 100644
index b6d064f12..000000000
--- a/builder/lib/Mustache/test/_files/unescaped.js
+++ /dev/null
@@ -1,5 +0,0 @@
-({
- title: function () {
- return "Bear > Shark";
- }
-})
diff --git a/builder/lib/Mustache/test/_files/unescaped.mustache b/builder/lib/Mustache/test/_files/unescaped.mustache
deleted file mode 100644
index 6b07d7b71..000000000
--- a/builder/lib/Mustache/test/_files/unescaped.mustache
+++ /dev/null
@@ -1 +0,0 @@
-{{{title}}}
diff --git a/builder/lib/Mustache/test/_files/unescaped.txt b/builder/lib/Mustache/test/_files/unescaped.txt
deleted file mode 100644
index 089ad7967..000000000
--- a/builder/lib/Mustache/test/_files/unescaped.txt
+++ /dev/null
@@ -1 +0,0 @@
-Bear > Shark
diff --git a/builder/lib/Mustache/test/_files/whitespace.js b/builder/lib/Mustache/test/_files/whitespace.js
deleted file mode 100644
index f41cb5640..000000000
--- a/builder/lib/Mustache/test/_files/whitespace.js
+++ /dev/null
@@ -1,4 +0,0 @@
-({
- tag1: "Hello",
- tag2: "World"
-})
diff --git a/builder/lib/Mustache/test/_files/whitespace.mustache b/builder/lib/Mustache/test/_files/whitespace.mustache
deleted file mode 100644
index aa76e08ea..000000000
--- a/builder/lib/Mustache/test/_files/whitespace.mustache
+++ /dev/null
@@ -1,4 +0,0 @@
-{{tag1}}
-
-
-{{tag2}}.
diff --git a/builder/lib/Mustache/test/_files/whitespace.txt b/builder/lib/Mustache/test/_files/whitespace.txt
deleted file mode 100644
index 851fa7448..000000000
--- a/builder/lib/Mustache/test/_files/whitespace.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-Hello
-
-
-World.
diff --git a/builder/lib/Mustache/test/context-test.js b/builder/lib/Mustache/test/context-test.js
deleted file mode 100644
index 752f74bc7..000000000
--- a/builder/lib/Mustache/test/context-test.js
+++ /dev/null
@@ -1,51 +0,0 @@
-require('./helper');
-var Context = Mustache.Context;
-
-describe('A new Mustache.Context', function () {
- var context;
- beforeEach(function () {
- context = new Context({ name: 'parent', message: 'hi', a: { b: 'b' } });
- });
-
- it('is able to lookup properties of its own view', function () {
- assert.equal(context.lookup('name'), 'parent');
- });
-
- it('is able to lookup nested properties of its own view', function () {
- assert.equal(context.lookup('a.b'), 'b');
- });
-
- describe('when pushed', function () {
- beforeEach(function () {
- context = context.push({ name: 'child', c: { d: 'd' } });
- });
-
- it('returns the child context', function () {
- assert.equal(context.view.name, 'child');
- assert.equal(context.parent.view.name, 'parent');
- });
-
- it('is able to lookup properties of its own view', function () {
- assert.equal(context.lookup('name'), 'child');
- });
-
- it("is able to lookup properties of the parent context's view", function () {
- assert.equal(context.lookup('message'), 'hi');
- });
-
- it('is able to lookup nested properties of its own view', function () {
- assert.equal(context.lookup('c.d'), 'd');
- });
-
- it('is able to lookup nested properties of its parent view', function () {
- assert.equal(context.lookup('a.b'), 'b');
- });
- });
-});
-
-describe('Mustache.Context.make', function () {
- it('returns the same object when given a Context', function () {
- var context = new Context;
- assert.strictEqual(Context.make(context), context);
- });
-});
diff --git a/builder/lib/Mustache/test/helper.js b/builder/lib/Mustache/test/helper.js
deleted file mode 100644
index a91fe499f..000000000
--- a/builder/lib/Mustache/test/helper.js
+++ /dev/null
@@ -1,2 +0,0 @@
-assert = require('assert');
-Mustache = require('../mustache');
diff --git a/builder/lib/Mustache/test/mustache-spec-test.js b/builder/lib/Mustache/test/mustache-spec-test.js
deleted file mode 100644
index 1050ea43d..000000000
--- a/builder/lib/Mustache/test/mustache-spec-test.js
+++ /dev/null
@@ -1,89 +0,0 @@
-require('./helper');
-
-var fs = require('fs');
-var path = require('path');
-var specsDir = path.join(__dirname, 'spec/specs');
-
-var skipTests = {
- comments: [
- 'Standalone Without Newline'
- ],
- delimiters: [
- 'Standalone Without Newline'
- ],
- inverted: [
- 'Standalone Without Newline'
- ],
- partials: [
- 'Standalone Without Previous Line',
- 'Standalone Without Newline',
- 'Standalone Indentation'
- ],
- sections: [
- 'Standalone Without Newline'
- ],
- '~lambdas': [
- 'Interpolation',
- 'Interpolation - Expansion',
- 'Interpolation - Alternate Delimiters',
- 'Interpolation - Multiple Calls',
- 'Escaping',
- 'Section - Expansion',
- 'Section - Alternate Delimiters'
- ]
-};
-
-// You can run the skiped tests by setting the NOSKIP environment variable to
-// true (e.g. NOSKIP=true mocha test/mustache-spec-test.js)
-var noSkip = process.env.NOSKIP;
-
-// You can put the name of a specific test file to run in the TEST environment
-// variable (e.g. TEST=interpolation mocha test/mustache-spec-test.js)
-var fileToRun = process.env.TEST;
-
-// Mustache should work on node 0.6 that doesn't have fs.exisisSync
-function existsDir(path) {
- try {
- return fs.statSync(path).isDirectory();
- } catch (x) {
- return false;
- }
-}
-
-var specFiles;
-if (fileToRun) {
- specFiles = [fileToRun];
-} else if (existsDir(specsDir)) {
- specFiles = fs.readdirSync(specsDir).filter(function (file) {
- return (/\.json$/).test(file);
- }).map(function (file) {
- return path.basename(file).replace(/\.json$/, '');
- }).sort();
-} else {
- specFiles = [];
-}
-
-function getSpecs(specArea) {
- return JSON.parse(fs.readFileSync(path.join(specsDir, specArea + '.' + 'json'), 'utf8'));
-}
-
-describe('Mustache spec compliance', function() {
- beforeEach(function () {
- Mustache.clearCache();
- });
-
- specFiles.forEach(function(specArea) {
- describe('- ' + specArea + ':', function() {
- var specs = getSpecs(specArea);
- specs.tests.forEach(function(test) {
- var it_ = (!noSkip && skipTests[specArea] && skipTests[specArea].indexOf(test.name) >= 0) ? it.skip : it;
- it_(test.name + ' - ' + test.desc, function() {
- if (test.data.lambda && test.data.lambda.__tag__ === 'code')
- test.data.lambda = eval('(function() { return ' + test.data.lambda.js + '; })');
- var output = Mustache.render(test.template, test.data, test.partials);
- assert.equal(output, test.expected);
- });
- });
- });
- });
-});
\ No newline at end of file
diff --git a/builder/lib/Mustache/test/parse-test.js b/builder/lib/Mustache/test/parse-test.js
deleted file mode 100644
index 40d23a431..000000000
--- a/builder/lib/Mustache/test/parse-test.js
+++ /dev/null
@@ -1,106 +0,0 @@
-require('./helper');
-
-// A map of templates to their expected token output. Tokens are in the format:
-// [type, value, startIndex, endIndex, subTokens].
-var expectations = {
- '' : [],
- '{{hi}}' : [ [ 'name', 'hi', 0, 6 ] ],
- '{{hi.world}}' : [ [ 'name', 'hi.world', 0, 12 ] ],
- '{{hi . world}}' : [ [ 'name', 'hi . world', 0, 14 ] ],
- '{{ hi}}' : [ [ 'name', 'hi', 0, 7 ] ],
- '{{hi }}' : [ [ 'name', 'hi', 0, 7 ] ],
- '{{ hi }}' : [ [ 'name', 'hi', 0, 8 ] ],
- '{{{hi}}}' : [ [ '&', 'hi', 0, 8 ] ],
- '{{!hi}}' : [ [ '!', 'hi', 0, 7 ] ],
- '{{! hi}}' : [ [ '!', 'hi', 0, 8 ] ],
- '{{! hi }}' : [ [ '!', 'hi', 0, 9 ] ],
- '{{ !hi}}' : [ [ '!', 'hi', 0, 8 ] ],
- '{{ ! hi}}' : [ [ '!', 'hi', 0, 9 ] ],
- '{{ ! hi }}' : [ [ '!', 'hi', 0, 10 ] ],
- 'a\n b' : [ [ 'text', 'a\n b', 0, 4 ] ],
- 'a{{hi}}' : [ [ 'text', 'a', 0, 1 ], [ 'name', 'hi', 1, 7 ] ],
- 'a {{hi}}' : [ [ 'text', 'a ', 0, 2 ], [ 'name', 'hi', 2, 8 ] ],
- ' a{{hi}}' : [ [ 'text', ' a', 0, 2 ], [ 'name', 'hi', 2, 8 ] ],
- ' a {{hi}}' : [ [ 'text', ' a ', 0, 3 ], [ 'name', 'hi', 3, 9 ] ],
- 'a{{hi}}b' : [ [ 'text', 'a', 0, 1 ], [ 'name', 'hi', 1, 7 ], [ 'text', 'b', 7, 8 ] ],
- 'a{{hi}} b' : [ [ 'text', 'a', 0, 1 ], [ 'name', 'hi', 1, 7 ], [ 'text', ' b', 7, 9 ] ],
- 'a{{hi}}b ' : [ [ 'text', 'a', 0, 1 ], [ 'name', 'hi', 1, 7 ], [ 'text', 'b ', 7, 9 ] ],
- 'a\n{{hi}} b \n' : [ [ 'text', 'a\n', 0, 2 ], [ 'name', 'hi', 2, 8 ], [ 'text', ' b \n', 8, 12 ] ],
- 'a\n {{hi}} \nb' : [ [ 'text', 'a\n ', 0, 3 ], [ 'name', 'hi', 3, 9 ], [ 'text', ' \nb', 9, 12 ] ],
- 'a\n {{!hi}} \nb' : [ [ 'text', 'a\n', 0, 2 ], [ '!', 'hi', 3, 10 ], [ 'text', 'b', 12, 13 ] ],
- 'a\n{{#a}}{{/a}}\nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 2, 8, [], 8 ], [ 'text', 'b', 15, 16 ] ],
- 'a\n {{#a}}{{/a}}\nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 3, 9, [], 9 ], [ 'text', 'b', 16, 17 ] ],
- 'a\n {{#a}}{{/a}} \nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 3, 9, [], 9 ], [ 'text', 'b', 17, 18 ] ],
- 'a\n{{#a}}\n{{/a}}\nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 2, 8, [], 9 ], [ 'text', 'b', 16, 17 ] ],
- 'a\n {{#a}}\n{{/a}}\nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 3, 9, [], 10 ], [ 'text', 'b', 17, 18 ] ],
- 'a\n {{#a}}\n{{/a}} \nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 3, 9, [], 10 ], [ 'text', 'b', 18, 19 ] ],
- 'a\n{{#a}}\n{{/a}}\n{{#b}}\n{{/b}}\nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 2, 8, [], 9 ], [ '#', 'b', 16, 22, [], 23 ], [ 'text', 'b', 30, 31 ] ],
- 'a\n {{#a}}\n{{/a}}\n{{#b}}\n{{/b}}\nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 3, 9, [], 10 ], [ '#', 'b', 17, 23, [], 24 ], [ 'text', 'b', 31, 32 ] ],
- 'a\n {{#a}}\n{{/a}}\n{{#b}}\n{{/b}} \nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 3, 9, [], 10 ], [ '#', 'b', 17, 23, [], 24 ], [ 'text', 'b', 32, 33 ] ],
- 'a\n{{#a}}\n{{#b}}\n{{/b}}\n{{/a}}\nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 2, 8, [ [ '#', 'b', 9, 15, [], 16 ] ], 23 ], [ 'text', 'b', 30, 31 ] ],
- 'a\n {{#a}}\n{{#b}}\n{{/b}}\n{{/a}}\nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 3, 9, [ [ '#', 'b', 10, 16, [], 17 ] ], 24 ], [ 'text', 'b', 31, 32 ] ],
- 'a\n {{#a}}\n{{#b}}\n{{/b}}\n{{/a}} \nb' : [ [ 'text', 'a\n', 0, 2 ], [ '#', 'a', 3, 9, [ [ '#', 'b', 10, 16, [], 17 ] ], 24 ], [ 'text', 'b', 32, 33 ] ],
- '{{>abc}}' : [ [ '>', 'abc', 0, 8 ] ],
- '{{> abc }}' : [ [ '>', 'abc', 0, 10 ] ],
- '{{ > abc }}' : [ [ '>', 'abc', 0, 11 ] ],
- '{{=<% %>=}}' : [ [ '=', '<% %>', 0, 11 ] ],
- '{{= <% %> =}}' : [ [ '=', '<% %>', 0, 13 ] ],
- '{{=<% %>=}}<%={{ }}=%>' : [ [ '=', '<% %>', 0, 11 ], [ '=', '{{ }}', 11, 22 ] ],
- '{{=<% %>=}}<%hi%>' : [ [ '=', '<% %>', 0, 11 ], [ 'name', 'hi', 11, 17 ] ],
- '{{#a}}{{/a}}hi{{#b}}{{/b}}\n' : [ [ '#', 'a', 0, 6, [], 6 ], [ 'text', 'hi', 12, 14 ], [ '#', 'b', 14, 20, [], 20 ], [ 'text', '\n', 26, 27 ] ],
- '{{a}}\n{{b}}\n\n{{#c}}\n{{/c}}\n' : [ [ 'name', 'a', 0, 5 ], [ 'text', '\n', 5, 6 ], [ 'name', 'b', 6, 11 ], [ 'text', '\n\n', 11, 13 ], [ '#', 'c', 13, 19, [], 20 ] ],
- '{{#foo}}\n {{#a}}\n {{b}}\n {{/a}}\n{{/foo}}\n'
- : [ [ '#', 'foo', 0, 8, [ [ '#', 'a', 11, 17, [ [ 'text', ' ', 18, 22 ], [ 'name', 'b', 22, 27 ], [ 'text', '\n', 27, 28 ] ], 30 ] ], 37 ] ]
-};
-
-describe('Mustache.parse', function () {
-
- for (var template in expectations) {
- (function (template, tokens) {
- it('knows how to parse ' + JSON.stringify(template), function () {
- assert.deepEqual(Mustache.parse(template), tokens);
- });
- })(template, expectations[template]);
- }
-
- describe('when there is an unclosed tag', function () {
- it('throws an error', function () {
- assert.throws(function () {
- Mustache.parse('My name is {{name');
- }, /unclosed tag at 17/i);
- });
- });
-
- describe('when there is an unclosed section', function () {
- it('throws an error', function () {
- assert.throws(function () {
- Mustache.parse('A list: {{#people}}{{name}}');
- }, /unclosed section "people" at 27/i);
- });
- });
-
- describe('when there is an unopened section', function () {
- it('throws an error', function () {
- assert.throws(function () {
- Mustache.parse('The end of the list! {{/people}}');
- }, /unopened section "people" at 21/i);
- });
- });
-
- describe('when invalid tags are given as an argument', function () {
- it('throws an error', function () {
- assert.throws(function () {
- Mustache.parse('A template <% name %>', [ '<%' ]);
- }, /invalid tags/i);
- });
- });
-
- describe('when the template contains invalid tags', function () {
- it('throws an error', function () {
- assert.throws(function () {
- Mustache.parse('A template {{=<%=}}');
- }, /invalid tags at 11/i);
- });
- });
-
-});
diff --git a/builder/lib/Mustache/test/render-test.js b/builder/lib/Mustache/test/render-test.js
deleted file mode 100644
index acec47ffd..000000000
--- a/builder/lib/Mustache/test/render-test.js
+++ /dev/null
@@ -1,68 +0,0 @@
-require('./helper');
-
-var fs = require('fs');
-var path = require('path');
-var _files = path.join(__dirname, '_files');
-
-function getContents(testName, ext) {
- return fs.readFileSync(path.join(_files, testName + '.' + ext), 'utf8');
-}
-
-function getView(testName) {
- var view = getContents(testName, 'js');
- if (!view) throw new Error('Cannot find view for test "' + testName + '"');
- return eval(view);
-}
-
-function getPartial(testName) {
- try {
- return getContents(testName, 'partial');
- } catch (e) {
- // No big deal. Not all tests need to test partial support.
- }
-}
-
-function getTest(testName) {
- var test = {};
- test.view = getView(testName);
- test.template = getContents(testName, 'mustache');
- test.partial = getPartial(testName);
- test.expect = getContents(testName, 'txt');
- return test;
-}
-
-// You can put the name of a specific test to run in the TEST environment
-// variable (e.g. TEST=backslashes vows test/render-test.js)
-var testToRun = process.env.TEST;
-
-var testNames;
-if (testToRun) {
- testNames = [testToRun];
-} else {
- testNames = fs.readdirSync(_files).filter(function (file) {
- return (/\.js$/).test(file);
- }).map(function (file) {
- return path.basename(file).replace(/\.js$/, '');
- });
-}
-
-describe('Mustache.render', function () {
- beforeEach(function () {
- Mustache.clearCache();
- });
-
- testNames.forEach(function (testName) {
- var test = getTest(testName);
-
- it('knows how to render ' + testName, function () {
- var output;
- if (test.partial) {
- output = Mustache.render(test.template, test.view, { partial: test.partial });
- } else {
- output = Mustache.render(test.template, test.view);
- }
-
- assert.equal(output, test.expect);
- });
- });
-});
diff --git a/builder/lib/Mustache/test/scanner-test.js b/builder/lib/Mustache/test/scanner-test.js
deleted file mode 100644
index 9c9766420..000000000
--- a/builder/lib/Mustache/test/scanner-test.js
+++ /dev/null
@@ -1,78 +0,0 @@
-require('./helper');
-var Scanner = Mustache.Scanner;
-
-describe('A new Mustache.Scanner', function () {
- describe('for an empty string', function () {
- it('is at the end', function () {
- var scanner = new Scanner('');
- assert(scanner.eos());
- });
- });
-
- describe('for a non-empty string', function () {
- var scanner;
- beforeEach(function () {
- scanner = new Scanner('a b c');
- });
-
- describe('scan', function () {
- describe('when the RegExp matches the entire string', function () {
- it('returns the entire string', function () {
- var match = scanner.scan(/a b c/);
- assert.equal(match, scanner.string);
- assert(scanner.eos());
- });
- });
-
- describe('when the RegExp matches at index 0', function () {
- it('returns the portion of the string that matched', function () {
- var match = scanner.scan(/a/);
- assert.equal(match, 'a');
- assert.equal(scanner.pos, 1);
- });
- });
-
- describe('when the RegExp matches at some index other than 0', function () {
- it('returns the empty string', function () {
- var match = scanner.scan(/b/);
- assert.equal(match, '');
- assert.equal(scanner.pos, 0);
- });
- });
-
- describe('when the RegExp does not match', function () {
- it('returns the empty string', function () {
- var match = scanner.scan(/z/);
- assert.equal(match, '');
- assert.equal(scanner.pos, 0);
- });
- });
- }); // scan
-
- describe('scanUntil', function () {
- describe('when the RegExp matches at index 0', function () {
- it('returns the empty string', function () {
- var match = scanner.scanUntil(/a/);
- assert.equal(match, '');
- assert.equal(scanner.pos, 0);
- });
- });
-
- describe('when the RegExp matches at some index other than 0', function () {
- it('returns the string up to that index', function () {
- var match = scanner.scanUntil(/b/);
- assert.equal(match, 'a ');
- assert.equal(scanner.pos, 2);
- });
- });
-
- describe('when the RegExp does not match', function () {
- it('returns the entire string', function () {
- var match = scanner.scanUntil(/z/);
- assert.equal(match, scanner.string);
- assert(scanner.eos());
- });
- });
- }); // scanUntil
- }); // for a non-empty string
-});
diff --git a/builder/lib/Mustache/test/writer-test.js b/builder/lib/Mustache/test/writer-test.js
deleted file mode 100644
index db2813a5f..000000000
--- a/builder/lib/Mustache/test/writer-test.js
+++ /dev/null
@@ -1,43 +0,0 @@
-require('./helper');
-var Writer = Mustache.Writer;
-
-describe('A new Mustache.Writer', function () {
- var writer;
- beforeEach(function () {
- writer = new Writer;
- });
-
- it('loads partials correctly', function () {
- var partial = 'The content of the partial.';
- var result = writer.render('{{>partial}}', {}, function (name) {
- assert.equal(name, 'partial');
- return partial;
- });
-
- assert.equal(result, partial);
- });
-
- it('caches partials by content, not name', function () {
- var result = writer.render('{{>partial}}', {}, {
- partial: 'partial one'
- });
-
- assert.equal(result, 'partial one');
-
- result = writer.render('{{>partial}}', {}, {
- partial: 'partial two'
- });
-
- assert.equal(result, 'partial two');
- });
-
- it('can compile an array of tokens', function () {
- var template = 'Hello {{name}}!';
- var tokens = Mustache.parse(template);
- var render = writer.compileTokens(tokens, template);
-
- var result = render({ name: 'Michael' });
-
- assert.equal(result, 'Hello Michael!');
- });
-});
diff --git a/builder/lib/Mustache/wrappers/dojo/mustache.js.post b/builder/lib/Mustache/wrappers/dojo/mustache.js.post
deleted file mode 100644
index eeeb4b7f0..000000000
--- a/builder/lib/Mustache/wrappers/dojo/mustache.js.post
+++ /dev/null
@@ -1,4 +0,0 @@
-
- dojox.mustache = dojo.hitch(Mustache, "render");
-
-})();
\ No newline at end of file
diff --git a/builder/lib/Mustache/wrappers/dojo/mustache.js.pre b/builder/lib/Mustache/wrappers/dojo/mustache.js.pre
deleted file mode 100644
index f87f3cd77..000000000
--- a/builder/lib/Mustache/wrappers/dojo/mustache.js.pre
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
-Shameless port of a shameless port
-@defunkt => @janl => @aq => @voodootikigod
-
-See http://github.com/defunkt/mustache for more info.
-*/
-
-dojo.provide("dojox.mustache._base");
-(function(){
diff --git a/builder/lib/Mustache/wrappers/jquery/mustache.js.post b/builder/lib/Mustache/wrappers/jquery/mustache.js.post
deleted file mode 100644
index 3209e915f..000000000
--- a/builder/lib/Mustache/wrappers/jquery/mustache.js.post
+++ /dev/null
@@ -1,13 +0,0 @@
- $.mustache = function (template, view, partials) {
- return Mustache.render(template, view, partials);
- };
-
- $.fn.mustache = function (view, partials) {
- return $(this).map(function (i, elm) {
- var template = $.trim($(elm).html());
- var output = $.mustache(template, view, partials);
- return $(output).get();
- });
- };
-
-})(jQuery);
diff --git a/builder/lib/Mustache/wrappers/jquery/mustache.js.pre b/builder/lib/Mustache/wrappers/jquery/mustache.js.pre
deleted file mode 100644
index b4d8af5e1..000000000
--- a/builder/lib/Mustache/wrappers/jquery/mustache.js.pre
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
-Shameless port of a shameless port
-@defunkt => @janl => @aq
-
-See http://github.com/defunkt/mustache for more info.
-*/
-
-;(function($) {
-
diff --git a/builder/lib/Mustache/wrappers/mootools/mustache.js.post b/builder/lib/Mustache/wrappers/mootools/mustache.js.post
deleted file mode 100644
index aa9b8fab7..000000000
--- a/builder/lib/Mustache/wrappers/mootools/mustache.js.post
+++ /dev/null
@@ -1,5 +0,0 @@
-
- Object.implement('mustache', function(view, partials){
- return Mustache.render(view, this, partials);
- });
-})();
diff --git a/builder/lib/Mustache/wrappers/mootools/mustache.js.pre b/builder/lib/Mustache/wrappers/mootools/mustache.js.pre
deleted file mode 100644
index 9839f9931..000000000
--- a/builder/lib/Mustache/wrappers/mootools/mustache.js.pre
+++ /dev/null
@@ -1,2 +0,0 @@
-(function(){
-
diff --git a/builder/lib/Mustache/wrappers/qooxdoo/mustache.js.post b/builder/lib/Mustache/wrappers/qooxdoo/mustache.js.post
deleted file mode 100644
index 6488b9c9c..000000000
--- a/builder/lib/Mustache/wrappers/qooxdoo/mustache.js.post
+++ /dev/null
@@ -1,9 +0,0 @@
-/**
- * Above is the original mustache code.
- */
-
-// EXPOSE qooxdoo variant
-qx.bom.Template.version = this.Mustache.version;
-qx.bom.Template.render = this.Mustache.render;
-
-}).call({});
\ No newline at end of file
diff --git a/builder/lib/Mustache/wrappers/qooxdoo/mustache.js.pre b/builder/lib/Mustache/wrappers/qooxdoo/mustache.js.pre
deleted file mode 100644
index 22aca98c6..000000000
--- a/builder/lib/Mustache/wrappers/qooxdoo/mustache.js.pre
+++ /dev/null
@@ -1,164 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2012 1&1 Internet AG, Germany, http://www.1und1.de
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Martin Wittemann (martinwittemann)
-
- ======================================================================
-
- This class contains code based on the following work:
-
- * Mustache.js version 0.7.2
-
- Code:
- https://github.com/janl/mustache.js
-
- Copyright:
- (c) 2009 Chris Wanstrath (Ruby)
- (c) 2010 Jan Lehnardt (JavaScript)
-
- License:
- MIT: http://www.opensource.org/licenses/mit-license.php
-
- ----------------------------------------------------------------------
-
- Copyright (c) 2009 Chris Wanstrath (Ruby)
- Copyright (c) 2010 Jan Lehnardt (JavaScript)
-
- Permission is hereby granted, free of charge, to any person obtaining
- a copy of this software and associated documentation files (the
- "Software"), to deal in the Software without restriction, including
- without limitation the rights to use, copy, modify, merge, publish,
- distribute, sublicense, and/or sell copies of the Software, and to
- permit persons to whom the Software is furnished to do so, subject to
- the following conditions:
-
- The above copyright notice and this permission notice shall be
- included in all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-************************************************************************ */
-
-/**
- * The is a template class which can be used for HTML templating. In fact,
- * this is a wrapper for mustache.js which is a "framework-agnostic way to
- * render logic-free views".
- *
- * Here is a basic example how to use it:
- * Template:
- *
- * var template = "Hi, my name is {{name}}!";
- * var view = {name: "qooxdoo"};
- * qx.bom.Template.render(template, view);
- * // return "Hi, my name is qooxdoo!"
- *
- *
- * For further details, please visit the mustache.js documentation here:
- * https://github.com/janl/mustache.js/blob/master/README.md
- *
- * @ignore(module)
- */
-qx.Bootstrap.define("qx.bom.Template", {
- statics : {
- /** Contains the mustache.js version. */
- version: null,
-
- /**
- * Original and only template method of mustache.js. For further
- * documentation, please visit https://github.com/janl/mustache.js
- *
- * @signature function(template, view, partials)
- * @param template {String} The String containing the template.
- * @param view {Object} The object holding the data to render.
- * @param partials {Object} Object holding parts of a template.
- * @return {String} The parsed template.
- */
- render: null,
-
- /**
- * Combines {@link #render} and {@link #get}. Input is equal to {@link #render}
- * and output is equal to {@link #get}. The advantage over {@link #get}
- * is that you don't need a HTML template but can use a template
- * string and still get a DOM element. Keep in mind that templates
- * can only have one root element.
- *
- * @param template {String} The String containing the template.
- * @param view {Object} The object holding the data to render.
- * @param partials {Object} Object holding parts of a template.
- * @return {Element} A DOM element holding the parsed template data.
- */
- renderToNode : function(template, view, partials) {
- var renderedTmpl = this.render(template, view, partials);
- return this._createNodeFromTemplate(renderedTmpl);
- },
-
- /**
- * Helper method which provides you with a direct access to templates
- * stored as HTML in the DOM. The DOM node with the given ID will be used
- * as a template, parsed and a new DOM node will be returned containing the
- * parsed data. Keep in mind to have only one root DOM element in the the
- * template.
- * Additionally, you should not put the template into a regular, hidden
- * DOM element because the template may not be valid HTML due to the containing
- * mustache tags. We suggest to put it into a script tag with the type
- * text/template
.
- *
- * @param id {String} The id of the HTML template in the DOM.
- * @param view {Object} The object holding the data to render.
- * @param partials {Object} Object holding parts of a template.
- * @return {Element} A DOM element holding the parsed template data.
- */
- get : function(id, view, partials) {
- // get the content stored in the DOM
- var template = document.getElementById(id);
- return this.renderToNode(template.innerHTML, view, partials);
- },
-
- /**
- * Accepts a parsed template and returns a (potentially nested) node.
- *
- * @param template {String} The String containing the template.
- * @return {Element} A DOM element holding the parsed template data.
- */
- _createNodeFromTemplate : function(template) {
- // template is text only (no html elems) so use text node
- if (template.search(/<|>/) === -1) {
- return document.createTextNode(template);
- }
-
- // template has html elems so convert string into DOM nodes
- var helper = qx.dom.Element.create("div");
- helper.innerHTML = template;
-
- return helper.children[0];
- }
- }
-});
-
-(function() {
-
-/**
- * Below is the original mustache.js code. Snapshot date is mentioned in
- * the head of this file.
- * @ignore(exports)
- * @ignore(define.*)
- * @ignore(module.*)
- */
diff --git a/builder/patternlab.js b/builder/patternlab.js
index 0e7f8b72e..879ad3041 100644
--- a/builder/patternlab.js
+++ b/builder/patternlab.js
@@ -52,7 +52,7 @@ var oPatternItem = function(){
this.patternName = '';
};
-var mustache = require('./lib/Mustache/mustache.js');
+var mustache = require('mustache');
module.exports = function(grunt) {
grunt.registerTask('patternlab', 'create design systems with atomic design', function(arg) {
diff --git a/package.json b/package.json
index 56cffd6d8..d3a38d211 100644
--- a/package.json
+++ b/package.json
@@ -11,6 +11,7 @@
"grunt-contrib-clean": "~0.5.0",
"grunt-contrib-concat": "~0.3.0",
"grunt-contrib-qunit": "~0.4.0",
+ "mustache": "~0.8.1",
"matchdep": "~0.3.0"
},
"keywords": [
From d212af30198788956aafdb10692622c0d9f65b4e Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Mon, 5 May 2014 23:36:06 -0500
Subject: [PATCH 16/39] added thanks
---
CHANGELOG | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/CHANGELOG b/CHANGELOG
index 1bc2456a1..8c6c69a54 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -6,7 +6,8 @@ PL-node-v0.1.1
- ADD: Travis CI test support!
- ADD: Contributing file
- ADD: Repository to package.json
- - THX: thank you @tbranyen for tip on repository, and NPM
+ - FIX: Manage Mustache dependency using NPM
+ - THX: thank you @tbranyen for tip on repository, Mustache, and NPM!
PL-node-v0.1.0
- FIX: Links to patterns did not work when visited from a server
From 3c975dff6c64188303a25438f8f1f7fda3a117e5 Mon Sep 17 00:00:00 2001
From: BRIAN MUENZENMEYER
Date: Tue, 6 May 2014 01:14:07 -0500
Subject: [PATCH 17/39] reorganized patternlab.js
should be the makings of a more sustainable, unit testable library.
having some challenges referencing node from qunit js. added support for
version command, which fixes #36
---
builder/patternlab.js | 141 ++++++++++++++++++++++++++----------------
test/runner.js | 7 +++
test/tests.html | 1 +
test/tests.js | 9 ++-
4 files changed, 102 insertions(+), 56 deletions(-)
create mode 100644 test/runner.js
diff --git a/builder/patternlab.js b/builder/patternlab.js
index 879ad3041..d0bab81d5 100644
--- a/builder/patternlab.js
+++ b/builder/patternlab.js
@@ -1,5 +1,5 @@
/*
- * patternlab-node - v0.1.1 - 2014-05-05
+ * patternlab-node - v0.1.1 - 2014-05-06
*
* Brian Muenzenmeyer, and the web community.
* Licensed under the MIT license.
@@ -8,58 +8,61 @@
*
*/
-var path = require('path');
-
-var oPattern = function(name, subdir, filename, data){
- this.name = name; //this is the unique name with the subDir
- this.subdir = subdir;
- this.filename = filename;
- this.data = data;
- this.template = '';
- this.patternPartial = '';
- this.patternName = ''; //this is the display name for the ui
- this.patternLink = '';
- this.patternGroup = name.substring(name.indexOf('-') + 1, name.indexOf('-', 4) + 1 - name.indexOf('-') + 1);
- this.patternSubGroup = subdir.substring(subdir.indexOf('/') + 4);
- this.flatPatternPath = subdir.replace(/\//g, '-');
-};
-
-var oBucket = function(name){
- this.bucketNameLC = name;
- this.bucketNameUC = name.charAt(0).toUpperCase() + name.slice(1);
- this.navItems = [];
- this.navItemsIndex = [];
- this.patternItems = [];
- this.patternItemsIndex = [];
-};
-
-var oNavItem = function(name){
- this.sectionNameLC = name;
- this.sectionNameUC = name.charAt(0).toUpperCase() + name.slice(1);
- this.navSubItems = [];
- this.navSubItemsIndex = [];
-};
-
-var oNavSubItem = function(name){
- this.patternPath = '';
- this.patternPartial = '';
- this.patternName = name.charAt(0).toUpperCase() + name.slice(1);;
-};
+var plnode = function(grunt){
+ var path = require('path'),
+ mustache = require('mustache'),
+ patternlab = {};
+
+ patternlab.package = grunt.file.readJSON('package.json');
+
+ var oPattern = function(name, subdir, filename, data){
+ this.name = name; //this is the unique name with the subDir
+ this.subdir = subdir;
+ this.filename = filename;
+ this.data = data;
+ this.template = '';
+ this.patternPartial = '';
+ this.patternName = ''; //this is the display name for the ui
+ this.patternLink = '';
+ this.patternGroup = name.substring(name.indexOf('-') + 1, name.indexOf('-', 4) + 1 - name.indexOf('-') + 1);
+ this.patternSubGroup = subdir.substring(subdir.indexOf('/') + 4);
+ this.flatPatternPath = subdir.replace(/\//g, '-');
+ };
+
+ var oBucket = function(name){
+ this.bucketNameLC = name;
+ this.bucketNameUC = name.charAt(0).toUpperCase() + name.slice(1);
+ this.navItems = [];
+ this.navItemsIndex = [];
+ this.patternItems = [];
+ this.patternItemsIndex = [];
+ };
+
+ var oNavItem = function(name){
+ this.sectionNameLC = name;
+ this.sectionNameUC = name.charAt(0).toUpperCase() + name.slice(1);
+ this.navSubItems = [];
+ this.navSubItemsIndex = [];
+ };
+
+ var oNavSubItem = function(name){
+ this.patternPath = '';
+ this.patternPartial = '';
+ this.patternName = name.charAt(0).toUpperCase() + name.slice(1);
+ };
+
+ var oPatternItem = function(){
+ this.patternPath = '';
+ this.patternPartial = '';
+ this.patternName = '';
+ };
+
+ function getVersion() {
+ grunt.log.ok(patternlab.package.version);
+ }
+
+ function build(){
-var oPatternItem = function(){
- this.patternPath = '';
- this.patternPartial = '';
- this.patternName = '';
-};
-
-var mustache = require('mustache');
-
-module.exports = function(grunt) {
- grunt.registerTask('patternlab', 'create design systems with atomic design', function(arg) {
-
-
- var patternlab = {};
- patternlab.package = grunt.file.readJSON('package.json');
patternlab.data = grunt.file.readJSON('./source/_data/data.json');
patternlab.listitems = grunt.file.readJSON('./source/_data/listitems.json');
patternlab.header = grunt.file.read('./source/_patternlab-files/pattern-header-footer/header.html');
@@ -76,7 +79,7 @@ module.exports = function(grunt) {
//check if the pattern already exists.
var patternName = filename.substring(0, filename.indexOf('.'));
var patternIndex = patternlab.patternIndex.indexOf(subdir + '-' + patternName);
- var currentPattern;
+ var currentPattern;
var flatPatternPath;
//ignore _underscored patterns
@@ -173,7 +176,7 @@ module.exports = function(grunt) {
//loop through all patterns. deciding to do this separate from the recursion, even at a performance hit, to attempt to separate the tasks of styleguide creation versus site menu creation
for(var i = 0; i < patternlab.patterns.length; i++){
- var pattern = patternlab.patterns[i];
+ var pattern = patternlab.patterns[i];
var bucketName = pattern.name.replace(/\//g, '-').split('-')[1];
//check if the bucket already exists
@@ -225,7 +228,7 @@ module.exports = function(grunt) {
//add to patternPaths
patternlab.patternPaths[bucketName][pattern.patternName] = pattern.subdir + "/" + pattern.filename.substring(0, pattern.filename.indexOf('.'));
- }
+ }
//add the bucket.
patternlab.buckets.push(bucket);
@@ -332,5 +335,33 @@ module.exports = function(grunt) {
var outputFilename = './patternlab.json';
grunt.file.write(outputFilename, JSON.stringify(patternlab, null, 3));
}
+
+ }
+
+ return {
+ version: function(){
+ return getVersion();
+ },
+ build: function(){
+ build();
+ }
+ };
+
+};
+
+module.exports = plnode;
+
+module.exports = function(grunt) {
+ grunt.registerTask('patternlab', 'create design systems with atomic design', function(v) {
+
+ var pl = plnode(grunt);
+
+ if(v && v === 'v'){
+ pl.version();
+ } else{
+ pl.build();
+ }
+
});
+
};
\ No newline at end of file
diff --git a/test/runner.js b/test/runner.js
new file mode 100644
index 000000000..6bfa5a28d
--- /dev/null
+++ b/test/runner.js
@@ -0,0 +1,7 @@
+var runner = require('../node_modules/grunt-contrib-qunit/tasks/qunit.js');
+var plnode = require('plnode');
+
+runner.run({
+ code: "../builder/patternlab.js",
+ tests: "tests.js"
+}, callback);
\ No newline at end of file
diff --git a/test/tests.html b/test/tests.html
index 32faa1d59..bbec2f9a6 100644
--- a/test/tests.html
+++ b/test/tests.html
@@ -9,6 +9,7 @@
+