summaryrefslogtreecommitdiffstats
path: root/lib/parse/__tests__
diff options
context:
space:
mode:
authorSamy Pessé <samypesse@gmail.com>2016-06-07 12:31:21 +0200
committerSamy Pessé <samypesse@gmail.com>2016-06-07 12:31:21 +0200
commitca70c934d6a92f12e0f826cd3f6f32d562f66b2f (patch)
treed28e83efdca7983d128a59b603aee47314243c1b /lib/parse/__tests__
parent1cc48fa314782312883af00cf64a56929b62f057 (diff)
downloadgitbook-ca70c934d6a92f12e0f826cd3f6f32d562f66b2f.zip
gitbook-ca70c934d6a92f12e0f826cd3f6f32d562f66b2f.tar.gz
gitbook-ca70c934d6a92f12e0f826cd3f6f32d562f66b2f.tar.bz2
Split page parsing into parsePageFromString and parsePage
Add tests for parsePageFromString
Diffstat (limited to 'lib/parse/__tests__')
-rw-r--r--lib/parse/__tests__/parsePageFromString.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/lib/parse/__tests__/parsePageFromString.js b/lib/parse/__tests__/parsePageFromString.js
new file mode 100644
index 0000000..2911fa3
--- /dev/null
+++ b/lib/parse/__tests__/parsePageFromString.js
@@ -0,0 +1,37 @@
+var parsePageFromString = require('../parsePageFromString');
+var Page = require('../../models/page');
+
+describe('parsePageFromString', function() {
+ var page = new Page();
+
+ it('should parse YAML frontmatter', function() {
+ var CONTENT = '---\nhello: true\nworld: "cool"\n---\n# Hello World\n';
+ var newPage = parsePageFromString(page, CONTENT);
+
+ expect(newPage.getDir()).toBe('ltr');
+ expect(newPage.getContent()).toBe('# Hello World\n');
+
+ var attrs = newPage.getAttributes();
+ expect(attrs.size).toBe(2);
+ expect(attrs.get('hello')).toBe(true);
+ expect(attrs.get('world')).toBe('cool');
+ });
+
+ it('should parse text direction (english)', function() {
+ var CONTENT = 'Hello World';
+ var newPage = parsePageFromString(page, CONTENT);
+
+ expect(newPage.getDir()).toBe('ltr');
+ expect(newPage.getContent()).toBe('Hello World');
+ expect(newPage.getAttributes().size).toBe(0);
+ });
+
+ it('should parse text direction (arab)', function() {
+ var CONTENT = 'مرحبا بالعالم';
+ var newPage = parsePageFromString(page, CONTENT);
+
+ expect(newPage.getDir()).toBe('rtl');
+ expect(newPage.getContent()).toBe('مرحبا بالعالم');
+ expect(newPage.getAttributes().size).toBe(0);
+ });
+});