diff options
Diffstat (limited to 'lib/parse/__tests__')
-rw-r--r-- | lib/parse/__tests__/parsePageFromString.js | 37 |
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); + }); +}); |