diff options
author | Samy Pessé <samypesse@gmail.com> | 2016-02-18 12:13:24 +0100 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2016-02-18 12:13:24 +0100 |
commit | 576d773fecf5ec6a7ebf5b089ff7a03b102468eb (patch) | |
tree | c6967bf852bc8405e410c7f738f0c00c6c728531 | |
parent | 58a930e456860a025cb8565effe73fb3ae437882 (diff) | |
download | gitbook-576d773fecf5ec6a7ebf5b089ff7a03b102468eb.zip gitbook-576d773fecf5ec6a7ebf5b089ff7a03b102468eb.tar.gz gitbook-576d773fecf5ec6a7ebf5b089ff7a03b102468eb.tar.bz2 |
Correctly map filenames for website output
-rw-r--r-- | lib/output/base.js | 3 | ||||
-rw-r--r-- | test/assertions.js | 2 | ||||
-rw-r--r-- | test/mock.js | 2 | ||||
-rw-r--r-- | test/output-website.js | 33 |
4 files changed, 37 insertions, 3 deletions
diff --git a/lib/output/base.js b/lib/output/base.js index e674f46..09f57bc 100644 --- a/lib/output/base.js +++ b/lib/output/base.js @@ -184,9 +184,10 @@ Output.prototype.resolveForPage = function(page, href) { // Filename for output // READMEs are replaced by index.html +// /test/README.md -> /test/index.html Output.prototype.outputPath = function(filename, ext) { ext = ext || this.defaultExtension; - var output; + var output = filename; if ( path.basename(filename, path.extname(filename)) == 'README' || diff --git a/test/assertions.js b/test/assertions.js index b936995..56da249 100644 --- a/test/assertions.js +++ b/test/assertions.js @@ -6,7 +6,7 @@ var should = require('should'); // Assertions to test if an Output has generated a file should.Assertion.add('file', function(file, description) { this.params = { - actual: this.obj.toString(), + actual: this.obj.root(), operator: 'have file ' + file, message: description }; diff --git a/test/mock.js b/test/mock.js index fe8ed7a..f9cc657 100644 --- a/test/mock.js +++ b/test/mock.js @@ -68,7 +68,7 @@ function setupDefaultBook(files, summary, opts) { // Output a book with a specific generator function outputDefaultBook(Output, files, summary, opts) { - return setupDefaultBook(files, opts) + return setupDefaultBook(files, summary, opts) .then(function(book) { // Parse the book return book.parse() diff --git a/test/output-website.js b/test/output-website.js index bc15bcc..9fe1928 100644 --- a/test/output-website.js +++ b/test/output-website.js @@ -24,5 +24,38 @@ describe('Website Output', function() { }); + describe('Book with chapters', function() { + var output; + + before(function() { + return mock.outputDefaultBook(WebsiteOutput, { + 'hello/README.md': '# Hello', + 'hello/test.md': '# Test' + }, [ + { + title: 'Hello', + path: 'hello/README.md' + }, + { + title: 'Test', + path: 'hello/test.md' + } + ]) + .then(function(_output) { + output = _output; + }); + }); + + it('should correctly generate an index.html', function() { + output.should.have.file('index.html'); + }); + + it('should correctly generate files in folder', function() { + output.should.have.file('hello/index.html'); + output.should.have.file('hello/test.html'); + }); + + }); + }); |