diff options
author | Samy Pessé <samypesse@gmail.com> | 2015-01-26 16:08:39 +0100 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2015-01-26 16:08:39 +0100 |
commit | 3293c394508ef40a65068a19f04deda467431864 (patch) | |
tree | fa94a2d78affd7c92e65a09cb472bbb8985023d7 | |
parent | 5b447d030b0f7dfb1957372fc324de33ba5cca5c (diff) | |
download | gitbook-3293c394508ef40a65068a19f04deda467431864.zip gitbook-3293c394508ef40a65068a19f04deda467431864.tar.gz gitbook-3293c394508ef40a65068a19f04deda467431864.tar.bz2 |
Add test for plugin resources
-rw-r--r-- | test/helper.js | 25 | ||||
-rw-r--r-- | test/plugins.js | 28 |
2 files changed, 34 insertions, 19 deletions
diff --git a/test/helper.js b/test/helper.js index 341b698..fbdd85c 100644 --- a/test/helper.js +++ b/test/helper.js @@ -31,22 +31,21 @@ global.testGeneration = function(book, type, func, done) { }; // Books for testings -global.books = []; +var books = fs.readdirSync(path.join(__dirname, './fixtures/')); + +global.books = _.chain(books) + .sortBy() + .map(function(book) { + if (book.indexOf("test") !== 0) return null; + return new Book(path.join(__dirname, './fixtures/', book), { + logLevel: Book.LOG_LEVELS.DISABLED + }); + }) + .compact() + .value(); // Init before doing tests before(function(done) { - var books = fs.readdirSync(path.join(__dirname, './fixtures/')); - - global.books = _.chain(books) - .sortBy() - .map(function(book) { - if (book.indexOf("test") !== 0) return null; - return new Book(path.join(__dirname, './fixtures/', book), { - logLevel: Book.LOG_LEVELS.DISABLED - }); - }) - .compact() - .value(); qdone( _.reduce(global.books, function(prev, book) { diff --git a/test/plugins.js b/test/plugins.js index 5fa3bfa..f75af34 100644 --- a/test/plugins.js +++ b/test/plugins.js @@ -8,15 +8,31 @@ var Plugin = require("../lib/plugin"); var PLUGINS_ROOT = path.resolve(__dirname, "plugins"); describe('Plugins', function () { - it('should correctly fail on invalid version', function() { - var plugin = new Plugin(books[0], "invalid"); - plugin.load("./invalid", PLUGINS_ROOT); - assert(!plugin.isValid()); + describe('invalid plugin', function() { + it('should signal as invalid', function() { + var plugin = new Plugin(books[0], "invalid"); + plugin.load("./invalid", PLUGINS_ROOT); + assert(!plugin.isValid()); + }); }); - it('should correctly valid a plugin', function() { + describe('empty plugin', function() { var plugin = new Plugin(books[0], "invalid"); plugin.load("./empty", PLUGINS_ROOT); - assert(plugin.isValid()); + + it('should valid a plugin', function() { + assert(plugin.isValid()); + }); + + it('should return an empty list of resources', function(done) { + qdone( + plugin.getResources() + .then(function(resources) { + _.each(Plugin.RESOURCES, function(resName) { + assert.equal(resources[resName].length, 0); + }); + }), + done); + }); }); }); |