8b80fe4
import unittest
8b80fe4
import sys
8b80fe4
import subprocess
8b80fe4
import libvoikko
8b80fe4
8b80fe4
class TestLibvoikko(unittest.TestCase):
8b80fe4
8b80fe4
    def test_dummy(self):
8b80fe4
        self.assertEqual(True, True)
8b80fe4
8b80fe4
    @unittest.expectedFailure
8b80fe4
    def test_expected_failure(self):
8b80fe4
        self.assertEqual(False, True)
8b80fe4
8b80fe4
    def test_spell(self):
8b80fe4
        voikko = libvoikko.Voikko('fi')
8b80fe4
        self.assertEqual(voikko.spell('kissa'), True)
8b80fe4
        self.assertEqual(voikko.spell('kisssa'), False)
8b80fe4
8b80fe4
    def test_suggest(self):
8b80fe4
        voikko = libvoikko.Voikko('fi')
8b80fe4
        self.assertEqual(
8b80fe4
            voikko.suggest('kisssa'),
8b80fe4
            ['kissa', 'kissaa', 'kisassa', 'kisussa', 'Kiassa'])
8b80fe4
8b80fe4
    def test_voikkospell(self):
8b80fe4
        cp  = subprocess.run(['echo kissa | voikkospell'], encoding='UTF-8', text=True, shell=True, capture_output=True)
8b80fe4
        self.assertEqual(cp.stdout, 'C: kissa\n')
8b80fe4
        self.assertEqual(cp.stderr, '')
8b80fe4
        self.assertEqual(cp.returncode, 0)
8b80fe4
        cp  = subprocess.run(['echo kisssa | voikkospell'], encoding='UTF-8', text=True, shell=True, capture_output=True)
8b80fe4
        self.assertEqual(cp.stdout, 'W: kisssa\n')
8b80fe4
        self.assertEqual(cp.stderr, '')
8b80fe4
        self.assertEqual(cp.returncode, 0)
8b80fe4
8b80fe4
    def test_voikkohyphenate(self):
8b80fe4
        cp  = subprocess.run(['echo kissa | voikkohyphenate'], encoding='UTF-8', text=True, shell=True, capture_output=True)
8b80fe4
        self.assertEqual(cp.stdout, 'kis-sa\n')
8b80fe4
        self.assertEqual(cp.stderr, '')
8b80fe4
        self.assertEqual(cp.returncode, 0)
8b80fe4
8b80fe4
    def test_voikkogc_tokenize(self):
8b80fe4
        cp  = subprocess.run(['echo "kissa." | voikkogc --tokenize'], encoding='UTF-8', text=True, shell=True, capture_output=True)
8b80fe4
        self.assertEqual(cp.stdout, 'W: "kissa"\nP: "."\n')
8b80fe4
        self.assertEqual(cp.stderr, '')
8b80fe4
        self.assertEqual(cp.returncode, 0)
8b80fe4
8b80fe4
if __name__ == "__main__":
8b80fe4
    unittest.main()