diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2018-08-01 17:18:07 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2018-08-01 17:22:24 +0300 |
commit | d8a4e3719e300869759393e9df7dd473f15be781 (patch) | |
tree | 7781fd56761a5c33befb34ca5eaf16ad9e9970ae /tests | |
parent | a85089f4495839590c791c02c833cd0f9b49733e (diff) | |
download | wikitrans-d8a4e3719e300869759393e9df7dd473f15be781.tar.gz wikitrans-d8a4e3719e300869759393e9df7dd473f15be781.tar.bz2 |
Fix wiki2text
* WikiTrans/wiki2html.py (HtmlTextNode): Escape html entities
* WikiTrans/wiki2text.py: Remove the format method.
* testdata/headings.html: Fix.
* testdata/nowiki-tag.html: Fix.
* tests/test.py: Rename to tests/test-html.py
* tests/test-text.py: New file.
* testdata/bold.text: New file.
* testdata/boldit1.text: New file.
* testdata/boldit2.text: New file.
* testdata/boldit3.text: New file.
* testdata/colon.text: New file.
* testdata/deflist.text: New file.
* testdata/headings.text: New file.
* testdata/hz.text: New file.
* testdata/it.text: New file.
* testdata/itbold1.text: New file.
* testdata/itbold2.text: New file.
* testdata/itbold3.text: New file.
* testdata/nowiki-ind.text: New file.
* testdata/nowiki-tag.text: New file.
* testdata/nowiki.text: New file.
* testdata/numlist.text: New file.
* testdata/para.text: New file.
* testdata/unlist.text: New file.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test-html.py (renamed from tests/test.py) | 0 | ||||
-rw-r--r-- | tests/test-text.py | 123 |
2 files changed, 123 insertions, 0 deletions
diff --git a/tests/test.py b/tests/test-html.py index c54a717..c54a717 100644 --- a/tests/test.py +++ b/tests/test-html.py diff --git a/tests/test-text.py b/tests/test-text.py new file mode 100644 index 0000000..09299e9 --- /dev/null +++ b/tests/test-text.py @@ -0,0 +1,123 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# Copyright (C) 2008-2018 Sergey Poznyakoff +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +from __future__ import print_function +import unittest +from WikiTrans.wiki2text import TextWikiMarkup, TextWiktionaryMarkup + +class TestMarkupParserBasic (unittest.TestCase): + + def test_colon(self): + self.assertTrue(self.__test('colon')) + pass + + def test_headings(self): + self.assertTrue(self.__test('headings')) + pass + + def test_hz(self): + self.assertTrue(self.__test('hz')) + pass + + def test_numlist(self): + self.assertTrue(self.__test('numlist')) + pass + + def test_unlist(self): + self.assertTrue(self.__test('unlist')) + pass + + def test_deflist(self): + self.assertTrue(self.__test('deflist')) + pass + + def test_para(self): + self.assertTrue(self.__test('para')) + pass + + def test_it(self): + self.assertTrue(self.__test('it')) + pass + + def test_bold(self): + self.assertTrue(self.__test('bold')) + pass + + def test_boldit1(self): + self.assertTrue(self.__test('boldit1')) + pass + + def test_itbold1(self): + self.assertTrue(self.__test('itbold1')) + pass + + def test_boldit2(self): + self.assertTrue(self.__test('boldit2')) + pass + + def test_itbold2(self): + self.assertTrue(self.__test('itbold2')) + pass + + def test_boldit3(self): + self.assertTrue(self.__test('boldit3')) + pass + + def test_itbold3(self): + self.assertTrue(self.__test('itbold3')) + pass + + def test_nowiki(self): + self.assertTrue(self.__test('nowiki')) + pass + + def test_nowiki_tag(self): + self.assertTrue(self.__test('nowiki-tag')) + pass + + def test_nowiki_ind(self): + self.assertTrue(self.__test('nowiki-ind')) + pass + + # def test_door(self): + # self.assertTrue(self.__test('door')) + # pass + + # def test_drzwi(self): + # self.assertTrue(self.__test('drzwi')) + # pass + + def __test(self, filename): + name_in = 'testdata/' + filename + '.wiki' + name_out = 'testdata/' + filename + '.text' + fh = open(name_out) + buf = ''.join(fh.readlines()).strip() + fh.close() + hwm = TextWiktionaryMarkup(filename=name_in, lang="pl") + hwm.parse() + + if str(hwm).strip() == buf: + return True + + # fail + print("\n>>>%s<<<" % buf) + print(">>>%s<<<" % str(hwm).strip()) + return False + +if __name__ == '__main__': + unittest.main() + |