File size: 1,886 Bytes
a159b10
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
from counter.word_counter import WordCounter

def test_increment():
    counter = WordCounter()
    assert counter.get_count() == 0
    counter.increment()
    assert counter.get_count() == 1
    counter.increment()
    assert counter.get_count() == 2
    print("✓ increment test passed")

def test_reset():
    counter = WordCounter()
    counter.increment()
    counter.increment()
    counter.reset()
    assert counter.get_count() == 0
    print("✓ reset test passed")

def test_detect_word_case_insensitive():
    counter = WordCounter()
    assert counter.detect_word("Hello World", "hello") == True
    assert counter.detect_word("Hello World", "WORLD") == True
    assert counter.detect_word("hello world", "Hello") == True
    print("✓ case-insensitive test passed")

def test_detect_word_boundaries():
    counter = WordCounter()
    assert counter.detect_word("testing is fun", "test") == False
    assert counter.detect_word("test is fun", "test") == True
    assert counter.detect_word("this is a test", "test") == True
    print("✓ word boundaries test passed")

def test_detect_word_with_punctuation():
    counter = WordCounter()
    assert counter.detect_word("Hello!", "hello") == True
    assert counter.detect_word("Hello, world!", "hello") == True
    assert counter.detect_word("Test. Another test.", "test") == True
    print("✓ punctuation test passed")

def test_detect_word_empty():
    counter = WordCounter()
    assert counter.detect_word("", "test") == False
    assert counter.detect_word("test", "") == False
    assert counter.detect_word("", "") == False
    print("✓ empty input test passed")

if __name__ == "__main__":
    test_increment()
    test_reset()
    test_detect_word_case_insensitive()
    test_detect_word_boundaries()
    test_detect_word_with_punctuation()
    test_detect_word_empty()
    print("\n✅ All tests passed!")