diff options
author | Samy Pesse <samypesse@gmail.com> | 2016-04-26 11:17:47 +0200 |
---|---|---|
committer | Samy Pesse <samypesse@gmail.com> | 2016-04-26 11:17:47 +0200 |
commit | ea5e8891a833b20a2b03cc1e150fbe0d1df3a506 (patch) | |
tree | 8fec1196da8e591825469f2b2e1b0c3b68abe73f /lib | |
parent | 57d83f082a6d08e1ac2a727fb6645ba2ba12342e (diff) | |
download | gitbook-ea5e8891a833b20a2b03cc1e150fbe0d1df3a506.zip gitbook-ea5e8891a833b20a2b03cc1e150fbe0d1df3a506.tar.gz gitbook-ea5e8891a833b20a2b03cc1e150fbe0d1df3a506.tar.bz2 |
Add test for readme parsing
Diffstat (limited to 'lib')
-rw-r--r-- | lib/models/readme.js | 8 | ||||
-rw-r--r-- | lib/parse/__tests__/parseReadme.js | 38 |
2 files changed, 46 insertions, 0 deletions
diff --git a/lib/models/readme.js b/lib/models/readme.js index 7a184c4..4ad3992 100644 --- a/lib/models/readme.js +++ b/lib/models/readme.js @@ -12,6 +12,14 @@ Readme.prototype.getFile = function() { return this.get('file'); }; +Readme.prototype.getTitle = function() { + return this.get('title'); +}; + +Readme.prototype.getDescription = function() { + return this.get('description'); +}; + /** Create a new readme diff --git a/lib/parse/__tests__/parseReadme.js b/lib/parse/__tests__/parseReadme.js new file mode 100644 index 0000000..7d7c631 --- /dev/null +++ b/lib/parse/__tests__/parseReadme.js @@ -0,0 +1,38 @@ +jest.autoMockOff(); + +var Promise = require('../../utils/promise'); +var Book = require('../../models/book'); +var createMockFS = require('../../fs/mock'); + +describe('parseReadme', function() { + var parseReadme = require('../parseReadme'); + + pit('should parse summary if exists', function() { + var fs = createMockFS({ + 'README.md': '# Hello\n\nAnd here is the description.' + }); + var book = Book.createForFS(fs); + + return parseReadme(book) + .then(function(resultBook) { + var readme = resultBook.getReadme(); + var file = readme.getFile(); + + expect(file.exists()).toBeTruthy(); + expect(readme.getTitle()).toBe('Hello'); + expect(readme.getDescription()).toBe('And here is the description.'); + }); + }); + + pit('should fail if doesn\'t exist', function() { + var fs = createMockFS({}); + var book = Book.createForFS(fs); + + return parseReadme(book) + .then(function(resultBook) { + throw new Error('It should have fail'); + }, function() { + return Promise(); + }); + }); +}); |