diff options
| author | Jacob Thornton <[email protected]> | 2012-01-31 13:18:34 -0800 |
|---|---|---|
| committer | Jacob Thornton <[email protected]> | 2012-01-31 13:18:34 -0800 |
| commit | 0bfbe5058d61ae93d82b09f1dff7eb30dc22426e (patch) | |
| tree | 6ccf3dd9c36ff4b1f6cde5edbce21cdf0de78497 /docs/build/node_modules/hogan.js/test/spec.js | |
| parent | 43cbc9440425b7c97c943690eefd14520de708e1 (diff) | |
| parent | 4bd1ba4e0dc44d1d16161306576548f378ab1f8a (diff) | |
| download | bootstrap-0bfbe5058d61ae93d82b09f1dff7eb30dc22426e.tar.xz bootstrap-0bfbe5058d61ae93d82b09f1dff7eb30dc22426e.zip | |
Merge branch '2.0-wip'
Conflicts:
.gitignore
LICENSE
Makefile
bootstrap.css
bootstrap.min.css
docs/assets/js/application.js
docs/assets/js/google-code-prettify/prettify.css
docs/index.html
docs/javascript.html
examples/container-app.html
examples/fluid.html
examples/hero.html
js/bootstrap-alerts.js
js/bootstrap-dropdown.js
js/bootstrap-modal.js
js/bootstrap-popover.js
js/bootstrap-scrollspy.js
js/bootstrap-tabs.js
js/bootstrap-twipsy.js
js/tests/index.html
js/tests/unit/bootstrap-modal.js
js/tests/unit/bootstrap-popover.js
js/tests/unit/bootstrap-tabs.js
lib/forms.less
lib/mixins.less
lib/patterns.less
lib/scaffolding.less
lib/tables.less
Diffstat (limited to 'docs/build/node_modules/hogan.js/test/spec.js')
| -rw-r--r-- | docs/build/node_modules/hogan.js/test/spec.js | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/docs/build/node_modules/hogan.js/test/spec.js b/docs/build/node_modules/hogan.js/test/spec.js new file mode 100644 index 000000000..15b4d8e19 --- /dev/null +++ b/docs/build/node_modules/hogan.js/test/spec.js @@ -0,0 +1,77 @@ +/* + * Copyright 2011 Twitter, Inc. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +var Hogan = Hogan || require('../lib/hogan'); +var doc = this["document"]; +var fs = require('fs'); + +var passed = 0; +var failed = 0; + +if (!this["output"]) { + var output = function (string) { + return doc ? doc.write(string + '<br/>') : console.log(string); + }; +} + +function runTest(tests) { + tests.forEach(function(test) { + var partials = {}; + for (var i in test.partials) { + partials[i] = Hogan.compile(test.partials[i]); + } + var t = Hogan.compile(test.template); + + if (test.data.lambda) { + var func = (new Function ('return ' + test.data.lambda.js)()); + test.data.lambda = function() { return func; }; + } + + var s = t.render(test.data, partials); + is(s, test.expected, test.name + ': ' + test.desc); + }); +} + +var testDir = './test/spec/specs'; +var files = fs.readdirSync(testDir) + .filter(function(f) { return f.indexOf('.json') > 0; }) + .map(function(f) { return testDir + '/' + f}); + +for (var i = 0; i < files.length; i++) { + var test = JSON.parse(fs.readFileSync(files[i]).toString()); + runTest(test.tests); +} + +function is(got, expected, msg) { + if (got === expected) { + output("OK: " + msg); + ++passed; + } else { + output("FAIL: " + msg); + output("Expected |" + expected + "|"); + output(" Got |" + got + "|"); + ++failed; + } +} + +function complete() { + output("\nTests Complete"); + output("--------------"); + output("Passed: " + passed); + output("Failed: " + failed); + output("\n"); +} + +complete(); |
