%PDF- %PDF-
Direktori : /var/www/projetos/stb.ind.br/wp-content/themes/stb/node_modules/node-wp-i18n/test/ |
Current File : //var/www/projetos/stb.ind.br/wp-content/themes/stb/node_modules/node-wp-i18n/test/pot.js |
var path = require('path'); var Pot = require('../lib/pot'); var test = require('tap').test; test('pot instance', function(t) { t.plan(1); var pot = Pot(); t.type(pot, 'Pot'); }); test('pot file does not exist', function(t) { t.plan(2); var filename = path.resolve('tmp/pot/fake.pot'); var pot = new Pot(filename); t.type(pot, 'Pot'); t.equal(pot.fileExists(), false); }); test('pot file exists', function(t) { t.plan(1); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); t.equal(pot.fileExists(), true); }); test('parse pot file', function(t) { t.plan(6); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); pot = pot.parse().parse(); t.type(pot, 'Pot'); t.equal(pot.isOpen, true); t.type(pot.contents, 'object'); t.ok(pot.initialDate); t.ok(pot.fingerprint); t.equal(pot.hasChanged(), false); }); test('has changed on post creation header update', function(t) { t.plan(1); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); pot.parse() .setHeader('pot-creation-date', '2003-04-01 14:12:34+00:00'); t.equal(pot.hasChanged(), false); }); test('compare pot file with non-existent pot file', function(t) { t.plan(1); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); var fake = new Pot(path.resolve('tmp/pot/fake.pot')); pot.parse(); t.equal(pot.sameAs(fake), false); }); test('compare same pot files with different creation date headers', function(t) { t.plan(1); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); var pot2 = new Pot(filename); pot.parse().setHeader('pot-creation-date', '2003-04-01 14:12:34+00:00'); pot2.parse() t.equal(pot.sameAs(pot2), true); }); test('reset pot creation date', function(t) { t.plan(1); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); pot.parse() .setHeader('pot-creation-date', '2003-04-01 14:12:34+00:00') .resetCreationDate(); t.equal(pot.contents.headers['pot-creation-date'], '2014-03-20 19:54:59+00:00'); }); test('set pot file comment', function(t) { t.plan(2); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); var comment = 'a file comment'; pot.parse() .setFileComment(comment); t.equal(pot.contents.translations[''][''].comments.translator, comment); pot.setFileComment(''); t.equal(pot.contents.translations[''][''].comments.translator, comment); }); test('set pot header', function(t) { t.plan(1); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); var key = 'report-msgid-bugs-to'; var value = 'https://example.com'; pot.parse() .setHeader(key, value); t.equal(pot.contents.headers[ key ], value); }); test('set pot headers', function(t) { t.plan(2); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); pot.parse() .setHeaders({ 'last-translator': 'Firstus Lastus', 'language-team': 'translate@example.com' }); t.equal(pot.contents.headers['last-translator'], 'Firstus Lastus'); t.equal(pot.contents.headers['language-team'], 'translate@example.com'); }); test('set poedit headers', function(t) { t.plan(9); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); pot.parse() .setHeader('poedit', true); var headers = pot.contents.headers; t.equal(headers['language'], 'en'); t.equal(headers['plural-forms'], 'nplurals=2; plural=(n != 1);'); t.equal(headers['x-poedit-country'], 'United States'); t.equal(headers['x-poedit-sourcecharset'], 'UTF-8'); t.equal(headers['x-poedit-basepath'], '../'); t.equal(headers['x-poedit-searchpath-0'], '.'); t.equal(headers['x-poedit-bookmarks'], ''); t.equal(headers['x-textdomain-support'], 'yes'); t.equal(headers['x-poedit-keywordslist'], '__;_e;_x:1,2c;_ex:1,2c;_n:1,2;_nx:1,2,4c;_n_noop:1,2;_nx_noop:1,2,3c;esc_attr__;esc_html__;esc_attr_e;esc_html_e;esc_attr_x:1,2c;esc_html_x:1,2c;'); }); test('set poedit headers without overriding existing header values', function(t) { t.plan(1); var filename = path.resolve('tmp/pot/basic.pot'); var pot = new Pot(filename); pot.parse() .setHeader('x-poedit-country', 'Spain') .setHeader('poedit', true); var headers = pot.contents.headers; t.equal(headers['x-poedit-country'], 'Spain'); }); test('save pot file', function(t) { t.plan(2); var filename = path.resolve('tmp/pot/save.pot'); var pot = new Pot(filename); var comment = 'a file comment'; pot.parse() .setFileComment(comment) .save().save(); t.equal(pot.isOpen, false); var pot = new Pot(filename); pot.parse(); t.equal(pot.contents.translations[''][''].comments.translator, 'a file comment'); });