From b9218960ad0478c5dbcb6e31d86ca30bfa7d73b0 Mon Sep 17 00:00:00 2001 From: Eugene Petkevich Date: Wed, 3 Apr 2024 02:17:06 +0200 Subject: [PATCH] cleanup / fix tests --- tests/test_wordidgen.py | 39 +++++++++++++++++++++++++++------------ wordidgen/wordidgen.py | 2 +- 2 files changed, 28 insertions(+), 13 deletions(-) diff --git a/tests/test_wordidgen.py b/tests/test_wordidgen.py index 04cf7ab..f4e8fc2 100644 --- a/tests/test_wordidgen.py +++ b/tests/test_wordidgen.py @@ -1,20 +1,35 @@ # -*- coding: UTF-8 -*- - -import locale -locale.setlocale(locale.LC_ALL, "") - -import pytest - from wordidgen import wordidgen def test_wordidgen(): - word_generator = wordidgen.WordGenerator(length=1) + word_generator = wordidgen.WordGenerator( + consonants=wordidgen.CONSONANTS_CYRILLIC, + vowels=wordidgen.VOWELS_CYRILLIC, + length=1) words = [] for i in range(word_generator.count): words.append(word_generator.generate(number=i)) - assert words == sorted(words, key=locale.strxfrm) - assert word_generator.count == 185 - word_generator = wordidgen.WordGenerator(length=2) + assert words == ['ба', 'бе', 'бё', 'би', 'бо', 'бу', 'бы', 'бэ', 'бю', 'бя', + 'ва', 'ве', 'вё', 'ви', 'во', 'ву', 'вы', 'вэ', 'вю', 'вя', + 'га', 'ге', 'гё', 'ги', 'го', 'гу', 'гы', 'гэ', 'гю', 'гя', + 'да', 'де', 'дё', 'ди', 'до', 'ду', 'ды', 'дэ', 'дю', 'дя', + 'жа', 'же', 'жё', 'жи', 'жо', 'жу', 'жы', 'жэ', 'жю', 'жя', + 'за', 'зе', 'зё', 'зи', 'зо', 'зу', 'зы', 'зэ', 'зю', 'зя', + 'ка', 'ке', 'кё', 'ки', 'ко', 'ку', 'кы', 'кэ', 'кю', 'кя', + 'ла', 'ле', 'лё', 'ли', 'ло', 'лу', 'лы', 'лэ', 'лю', 'ля', + 'ма', 'ме', 'мё', 'ми', 'мо', 'му', 'мы', 'мэ', 'мю', 'мя', + 'на', 'не', 'нё', 'ни', 'но', 'ну', 'ны', 'нэ', 'ню', 'ня', + 'па', 'пе', 'пё', 'пи', 'по', 'пу', 'пы', 'пэ', 'пю', 'пя', + 'ра', 'ре', 'рё', 'ри', 'ро', 'ру', 'ры', 'рэ', 'рю', 'ря', + 'са', 'се', 'сё', 'си', 'со', 'су', 'сы', 'сэ', 'сю', 'ся', + 'та', 'те', 'тё', 'ти', 'то', 'ту', 'ты', 'тэ', 'тю', 'тя', + 'фа', 'фе', 'фё', 'фи', 'фо', 'фу', 'фы', 'фэ', 'фю', 'фя', + 'ха', 'хе', 'хё', 'хи', 'хо', 'ху', 'хы', 'хэ', 'хю', 'хя', + 'ца', 'це', 'цё', 'ци', 'цо', 'цу', 'цы', 'цэ', 'цю', 'ця', + 'ча', 'че', 'чё', 'чи', 'чо', 'чу', 'чы', 'чэ', 'чю', 'чя', + 'ша', 'шо', 'шу', 'шы', 'шэ', 'ще', 'щё', 'щи', 'щю', 'щя'] + assert word_generator.count == 190 + word_generator.length = 2 assert word_generator.generate(number=0) == 'баба' - assert word_generator.generate(number=185) == 'беба' - assert word_generator.generate(number=187) == 'бебё' \ No newline at end of file + assert word_generator.generate(number=185) == 'баще' + assert word_generator.generate(number=192) == 'бебё' \ No newline at end of file diff --git a/wordidgen/wordidgen.py b/wordidgen/wordidgen.py index c76adf8..ac7617a 100755 --- a/wordidgen/wordidgen.py +++ b/wordidgen/wordidgen.py @@ -77,7 +77,7 @@ class WordGenerator: word = '' if number is None: number = random.randrange(self.count) - for i in range(self.length): + for _ in range(self.length): r = number % self.syllable_count number = number // self.syllable_count word = self.syllables[r] + word -- 2.17.1