angular-cn/aio/tools/translator/translate.spec.ts

31 lines
1.0 KiB
TypeScript
Raw Normal View History

import { expect } from 'chai';
2018-03-01 22:52:16 +08:00
import { dirs } from './dirs';
import { dict, kernelText, lookup, normalizeLines, translate } from './translate';
2018-03-02 08:08:39 +08:00
describe('根据字典进行翻译', () => {
it('忽略明显错误的条目', function () {
2018-03-01 22:52:16 +08:00
expect(dict.filter(entry => /^<div/.test(entry.original))).eql([]);
});
it('抽取核心字符', function () {
expect(kernelText(' # Forms ABC ')).eql('# Forms ABC');
});
2018-03-02 08:08:39 +08:00
it('查字典', () => {
expect(lookup('# Forms')[0].translation).eql('# 表单');
});
2018-03-01 22:52:16 +08:00
it('把“- * 1. #”等处理成空行分隔的格式,以便处理', function () {
const lines = normalizeLines('1. abc\n11. def\n');
expect(lines).eql('1. abc\n\n11. def\n');
});
2018-03-02 08:08:39 +08:00
it('自动根据字典翻译单个文件', function () {
2018-03-01 22:52:16 +08:00
const fs = require('fs');
const content = fs.readFileSync(__dirname + '/../../../../content-en/' + 'guide/forms.md', 'utf-8');
2018-03-01 22:52:16 +08:00
const result = translate(content);
fs.writeFileSync(dirs.content + 'guide/forms.md', result.join('\n\n'), 'utf-8');
});
});