~reviewer/hello-hut

ref: ffb728d506b7ca0675f04cfada060ec37fa15447 hello-hut/tests/test_greetings.py -rw-r--r-- 914 bytes
ffb728d5 — Elif Demir Read defaults from ~/.config/hello-hut/config.toml 6 months ago
                                                                                
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
import unittest
from datetime import datetime

from hello_hut.greetings import greet
from hello_hut.greetings import time_of_day_greeting


class GreetTest(unittest.TestCase):
    def test_default_name(self):
        self.assertEqual(greet(), "Hello, friend!")

    def test_custom_name(self):
        self.assertEqual(greet("Ada"), "Hello, Ada!")

    def test_shout(self):
        self.assertEqual(greet("Ada", shout=True), "HELLO, ADA!")

    def test_shout_keeps_accents(self):
        self.assertEqual(greet("Zoë", shout=True), "HELLO, ZOË!")

    def test_time_of_day(self):
        def at(hour):
            return datetime(2026, 1, 1, hour)
        self.assertEqual(time_of_day_greeting(at(8)), "Good morning")
        self.assertEqual(time_of_day_greeting(at(13)), "Good afternoon")
        self.assertEqual(time_of_day_greeting(at(21)), "Good evening")


if __name__ == "__main__":
    unittest.main()