Lisää pylint, pytest ja coverage. Kirjoita testit trie:lle
This commit is contained in:
parent
fc4e69dfa9
commit
ea983c89cc
5 changed files with 54 additions and 1 deletions
3
.pylintrc
Normal file
3
.pylintrc
Normal file
|
@ -0,0 +1,3 @@
|
|||
[MASTER]
|
||||
|
||||
ignore=tests
|
19
requirements.txt
Normal file
19
requirements.txt
Normal file
|
@ -0,0 +1,19 @@
|
|||
astroid==2.12.9
|
||||
attrs==22.1.0
|
||||
coverage==6.4.4
|
||||
dill==0.3.5.1
|
||||
iniconfig==1.1.1
|
||||
isort==5.10.1
|
||||
lazy-object-proxy==1.7.1
|
||||
mccabe==0.7.0
|
||||
packaging==21.3
|
||||
platformdirs==2.5.2
|
||||
pluggy==1.0.0
|
||||
py==1.11.0
|
||||
pylint==2.15.2
|
||||
pyparsing==3.0.9
|
||||
pytest==7.1.3
|
||||
tomli==2.0.1
|
||||
tomlkit==0.11.4
|
||||
typing-extensions==4.3.0
|
||||
wrapt==1.14.1
|
0
src/tests/__init__.py
Normal file
0
src/tests/__init__.py
Normal file
31
src/tests/trie_test.py
Normal file
31
src/tests/trie_test.py
Normal file
|
@ -0,0 +1,31 @@
|
|||
import unittest
|
||||
from trie import Trie
|
||||
|
||||
class TestTrie(unittest.TestCase):
|
||||
def setUp(self):
|
||||
"""Alustus testejä varten."""
|
||||
self.trie = Trie()
|
||||
|
||||
def test_lisaa(self):
|
||||
self.assertFalse(self.trie.juuri.lapset)
|
||||
|
||||
self.trie.lisaa("AB")
|
||||
|
||||
self.assertTrue("A" in self.trie.juuri.lapset)
|
||||
self.assertFalse("B" in self.trie.juuri.lapset)
|
||||
self.assertEqual(0, self.trie.juuri.lapset["A"].laskuri)
|
||||
self.assertEqual(1, self.trie.juuri.lapset["A"].lapset["B"].laskuri)
|
||||
|
||||
self.trie.lisaa("AB")
|
||||
|
||||
self.assertEqual(2, self.trie.juuri.lapset["A"].lapset["B"].laskuri)
|
||||
|
||||
def test_etsi_seuraavat(self):
|
||||
self.assertFalse(self.trie.etsi_seuraavat("AB"))
|
||||
self.trie.lisaa("ABC")
|
||||
self.trie.lisaa("ABC")
|
||||
self.assertEqual(self.trie.etsi_seuraavat("AB"), [(1, "C")])
|
||||
self.trie.lisaa("ABC")
|
||||
self.trie.lisaa("ABD")
|
||||
self.assertEqual(self.trie.etsi_seuraavat("AB"), [(0.75, "C"), (0.25, "D")])
|
||||
self.assertEqual(self.trie.etsi_seuraavat("AB"), [(0.75, "C"), (0.25, "D")])
|
|
@ -1,5 +1,5 @@
|
|||
"""Markovin ketjuille tarkoitettu trie-tietorakenteen implementaatio.
|
||||
import Trie
|
||||
from trie import Trie
|
||||
"""
|
||||
|
||||
class TrieSolmu: # pylint: disable=too-few-public-methods
|
||||
|
|
Reference in a new issue