Add test files
This commit is contained in:
55
tests/test_converter.py
Normal file
55
tests/test_converter.py
Normal file
@@ -0,0 +1,55 @@
|
||||
"""Tests for the converter module."""
|
||||
|
||||
import pytest
|
||||
|
||||
from regex_humanizer.converter import convert_to_english, generate_description
|
||||
|
||||
|
||||
class TestConvertToEnglish:
|
||||
def test_convert_literal(self):
|
||||
result = convert_to_english("hello")
|
||||
assert "hello" in result.lower() or "letter" in result.lower()
|
||||
|
||||
def test_convert_character_class(self):
|
||||
result = convert_to_english("[abc]")
|
||||
assert "any" in result.lower() or "character" in result.lower()
|
||||
|
||||
def test_convert_inverted_class(self):
|
||||
result = convert_to_english("[^abc]")
|
||||
assert "except" in result.lower()
|
||||
|
||||
def test_convert_quantifier_star(self):
|
||||
result = convert_to_english("a*")
|
||||
assert "zero" in result.lower() or "more" in result.lower()
|
||||
|
||||
def test_convert_quantifier_plus(self):
|
||||
result = convert_to_english("a+")
|
||||
assert "one" in result.lower() or "more" in result.lower()
|
||||
|
||||
def test_convert_quantifier_question(self):
|
||||
result = convert_to_english("a?")
|
||||
assert "optionally" in result.lower() or "zero" in result.lower()
|
||||
|
||||
def test_convert_anchors(self):
|
||||
result = convert_to_english("^start$")
|
||||
assert "start" in result.lower() and "end" in result.lower()
|
||||
|
||||
def test_convert_alternation(self):
|
||||
result = convert_to_english("a|b")
|
||||
assert "or" in result.lower()
|
||||
|
||||
def test_convert_group(self):
|
||||
result = convert_to_english("(abc)")
|
||||
assert "group" in result.lower()
|
||||
|
||||
def test_convert_special_sequence_digit(self):
|
||||
result = convert_to_english(r"\d")
|
||||
assert "digit" in result.lower()
|
||||
|
||||
def test_convert_special_sequence_word(self):
|
||||
result = convert_to_english(r"\w")
|
||||
assert "word" in result.lower()
|
||||
|
||||
def test_convert_email_pattern(self):
|
||||
result = convert_to_english(r"^\w+@[a-z]+\.[a]+$")
|
||||
assert "start" in result.lower() and "end" in result.lower()
|
||||
Reference in New Issue
Block a user