summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamy Pessé <samypesse@gmail.com>2015-03-24 09:36:51 +0100
committerSamy Pessé <samypesse@gmail.com>2015-03-24 09:36:51 +0100
commitd317741144c3179bf0a88eb731bb8195426405a6 (patch)
tree167064a9d7410b42967ebc798fcd03804f8eb26f
parent275739a77838ef256eeebeb48838e97420783f45 (diff)
downloadgitbook-d317741144c3179bf0a88eb731bb8195426405a6.zip
gitbook-d317741144c3179bf0a88eb731bb8195426405a6.tar.gz
gitbook-d317741144c3179bf0a88eb731bb8195426405a6.tar.bz2
Add basic test for multilingual book
-rw-r--r--test/books/languages/LANGS.md4
-rw-r--r--test/books/languages/README.md1
-rw-r--r--test/books/languages/en/README.md1
-rw-r--r--test/books/languages/en/SUMMARY.md1
-rw-r--r--test/books/languages/fr/README.md1
-rw-r--r--test/books/languages/fr/SUMMARY.md1
-rw-r--r--test/helper.js3
-rw-r--r--test/json.js36
8 files changed, 45 insertions, 3 deletions
diff --git a/test/books/languages/LANGS.md b/test/books/languages/LANGS.md
new file mode 100644
index 0000000..4267b3c
--- /dev/null
+++ b/test/books/languages/LANGS.md
@@ -0,0 +1,4 @@
+# Language
+
+* [English](en)
+* [French](fr)
diff --git a/test/books/languages/README.md b/test/books/languages/README.md
new file mode 100644
index 0000000..f395431
--- /dev/null
+++ b/test/books/languages/README.md
@@ -0,0 +1 @@
+# Readme
diff --git a/test/books/languages/en/README.md b/test/books/languages/en/README.md
new file mode 100644
index 0000000..e965047
--- /dev/null
+++ b/test/books/languages/en/README.md
@@ -0,0 +1 @@
+Hello
diff --git a/test/books/languages/en/SUMMARY.md b/test/books/languages/en/SUMMARY.md
new file mode 100644
index 0000000..ac9323c
--- /dev/null
+++ b/test/books/languages/en/SUMMARY.md
@@ -0,0 +1 @@
+# Summary
diff --git a/test/books/languages/fr/README.md b/test/books/languages/fr/README.md
new file mode 100644
index 0000000..632e4fe
--- /dev/null
+++ b/test/books/languages/fr/README.md
@@ -0,0 +1 @@
+Bonjour
diff --git a/test/books/languages/fr/SUMMARY.md b/test/books/languages/fr/SUMMARY.md
new file mode 100644
index 0000000..ac9323c
--- /dev/null
+++ b/test/books/languages/fr/SUMMARY.md
@@ -0,0 +1 @@
+# Summary
diff --git a/test/helper.js b/test/helper.js
index f0f1fb7..8726667 100644
--- a/test/helper.js
+++ b/test/helper.js
@@ -39,9 +39,6 @@ function parseBook(bookId, test) {
return BOOKS[bookId][test].parse()
.then(function() {
- return BOOKS[bookId][test].generate(test);
- })
- .then(function() {
return BOOKS[bookId][test];
});
}
diff --git a/test/json.js b/test/json.js
index e86ee4e..56483c6 100644
--- a/test/json.js
+++ b/test/json.js
@@ -49,4 +49,40 @@ describe('JSON generator', function () {
});
});
});
+
+ describe('Multilingual Book', function() {
+ var book;
+
+ before(function() {
+ return books.generate("languages", "json")
+ .then(function(_book) {
+ book = _book;
+ });
+ });
+
+ it('should correctly output a README.json', function() {
+ book.should.have.file("README.json");
+ });
+
+ it('should output a valid json', function() {
+ book.should.have.jsonfile("README.json");
+ });
+
+ describe('Page Format', function() {
+ var page;
+
+ before(function() {
+ page = JSON.parse(
+ fs.readFileSync(
+ path.join(book.options.output, "README.json"),
+ { encoding: "utf-8" }
+ )
+ );
+ });
+
+ it('should contains no languages', function() {
+ page.should.have.property("langs").with.lengthOf(2);
+ });
+ });
+ });
});