mirror of
https://github.com/GitbookIO/gitbook.git
synced 2026-09-23 19:06:31 +00:00
Add test for navigation
Update mocha and should
This commit is contained in:
+2
-2
@@ -36,8 +36,8 @@
|
||||
"escape-string-regexp": "1.0.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"mocha": "2.2.1",
|
||||
"should": "5.2.0",
|
||||
"mocha": "2.3.2",
|
||||
"should": "7.1.0",
|
||||
"grunt": "~0.4.2",
|
||||
"grunt-cli": "0.1.11",
|
||||
"grunt-contrib-copy": "0.5.0",
|
||||
|
||||
+1
-1
@@ -35,7 +35,7 @@ describe('JSON generator', function () {
|
||||
it('should contains valid section', function() {
|
||||
page.should.have.property("sections").with.lengthOf(1);
|
||||
page.sections[0].should.have.property("content").which.is.a.String;
|
||||
page.sections[0].should.have.property("type").which.is.a.String.which.equal("normal");
|
||||
page.sections[0].should.have.property("type", "normal");
|
||||
});
|
||||
|
||||
it('should contains valid progress', function() {
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
var should = require('should');
|
||||
|
||||
describe('Navigation', function () {
|
||||
var book;
|
||||
|
||||
before(function() {
|
||||
return books.parse("summary")
|
||||
.then(function(_book) {
|
||||
book = _book;
|
||||
});
|
||||
});
|
||||
|
||||
it('should correctly parse navigation as a map', function() {
|
||||
book.should.have.property("navigation");
|
||||
book.navigation.should.have.property("README.md");
|
||||
book.navigation.should.have.property("README.md");
|
||||
});
|
||||
|
||||
it('should correctly include filenames', function() {
|
||||
book.navigation.should.have.property("README.md");
|
||||
book.navigation.should.have.property("PAGE1.md");
|
||||
book.navigation.should.have.property("folder/PAGE2.md");
|
||||
book.navigation.should.not.have.property("NOTFOUND.md");
|
||||
});
|
||||
|
||||
it('should correctly detect next/prev for README', function() {
|
||||
var README = book.navigation['README.md'];
|
||||
|
||||
README.index.should.equal(0);
|
||||
README.should.have.property('next');
|
||||
should(README.prev).not.be.ok();
|
||||
|
||||
README.next.should.have.property('path');
|
||||
README.next.path.should.equal('PAGE1.md');
|
||||
});
|
||||
|
||||
it('should correctly detect next/prev a page', function() {
|
||||
var PAGE = book.navigation['PAGE1.md'];
|
||||
|
||||
PAGE.index.should.equal(1);
|
||||
PAGE.should.have.property('next');
|
||||
PAGE.should.have.property('prev');
|
||||
|
||||
PAGE.prev.should.have.property('path');
|
||||
PAGE.prev.path.should.equal('README.md');
|
||||
|
||||
PAGE.next.should.have.property('path');
|
||||
PAGE.next.path.should.equal('folder/PAGE2.md');
|
||||
});
|
||||
|
||||
it('should correctly detect next/prev for last page', function() {
|
||||
var PAGE = book.navigation['folder/PAGE2.md'];
|
||||
|
||||
PAGE.index.should.equal(2);
|
||||
PAGE.should.have.property('prev');
|
||||
should(PAGE.next).not.be.ok();
|
||||
|
||||
PAGE.prev.should.have.property('path');
|
||||
PAGE.prev.path.should.equal('PAGE1.md');
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user