Skip to content
This repository was archived by the owner on Jun 13, 2025. It is now read-only.

Commit 17c20ec

Browse files
Remove redundant test cases from test_math.py
1 parent 8a811fa commit 17c20ec

1 file changed

Lines changed: 0 additions & 222 deletions

File tree

api/gen_ai/tests/test_math.py

Lines changed: 0 additions & 222 deletions
Original file line numberDiff line numberDiff line change
@@ -24,225 +24,3 @@ def test_add(self):
2424
self.assertEqual(add(-1, 1), 0)
2525
self.assertEqual(add(0, 0), 0)
2626
self.assertEqual(add(5.5, 4.5), 10.0)
27-
28-
def test_subtract(self):
29-
self.assertEqual(subtract(5, 3), 2)
30-
self.assertEqual(subtract(-1, 1), -2)
31-
self.assertEqual(subtract(0, 0), 0)
32-
self.assertEqual(subtract(5.5, 4.5), 1.0)
33-
34-
def test_divide(self):
35-
self.assertEqual(divide(6, 3), 2)
36-
self.assertEqual(divide(5, 2), 2.5)
37-
self.assertEqual(divide(0, 5), 0)
38-
with self.assertRaises(ValueError):
39-
divide(5, 0)
40-
41-
42-
class TestFactorialFunction(unittest.TestCase):
43-
def test_factorial_zero(self):
44-
self.assertEqual(factorial(0), 1)
45-
46-
def test_factorial_positive_numbers(self):
47-
self.assertEqual(factorial(1), 1)
48-
self.assertEqual(factorial(5), 120)
49-
self.assertEqual(factorial(10), 3628800)
50-
51-
def test_factorial_negative_number(self):
52-
with self.assertRaises(ValueError):
53-
factorial(-1)
54-
55-
56-
class TestIsPrimeFunction(unittest.TestCase):
57-
def test_is_prime_negative_and_zero(self):
58-
self.assertFalse(is_prime(-5))
59-
self.assertFalse(is_prime(0))
60-
61-
def test_is_prime_one(self):
62-
self.assertFalse(is_prime(1))
63-
64-
def test_is_prime_small_primes(self):
65-
self.assertTrue(is_prime(2))
66-
self.assertTrue(is_prime(3))
67-
self.assertTrue(is_prime(5))
68-
self.assertTrue(is_prime(7))
69-
self.assertTrue(is_prime(11))
70-
self.assertTrue(is_prime(13))
71-
72-
def test_is_prime_small_non_primes(self):
73-
self.assertFalse(is_prime(4))
74-
self.assertFalse(is_prime(6))
75-
self.assertFalse(is_prime(8))
76-
self.assertFalse(is_prime(9))
77-
self.assertFalse(is_prime(10))
78-
79-
def test_is_prime_larger_numbers(self):
80-
self.assertTrue(is_prime(17))
81-
self.assertTrue(is_prime(19))
82-
self.assertTrue(is_prime(23))
83-
self.assertFalse(is_prime(25))
84-
self.assertFalse(is_prime(100))
85-
86-
87-
class TestFibonacciFunction(unittest.TestCase):
88-
def test_fibonacci_negative(self):
89-
with self.assertRaises(ValueError):
90-
fibonacci(-1)
91-
92-
def test_fibonacci_zero_and_one(self):
93-
self.assertEqual(fibonacci(0), 0)
94-
self.assertEqual(fibonacci(1), 1)
95-
96-
def test_fibonacci_sequence(self):
97-
self.assertEqual(fibonacci(2), 1)
98-
self.assertEqual(fibonacci(3), 2)
99-
self.assertEqual(fibonacci(4), 3)
100-
self.assertEqual(fibonacci(5), 5)
101-
self.assertEqual(fibonacci(6), 8)
102-
self.assertEqual(fibonacci(10), 55)
103-
104-
105-
class TestCalculatorClass(unittest.TestCase):
106-
def test_calculator_initialization(self):
107-
calc = Calculator()
108-
self.assertEqual(calc.memory, 0)
109-
110-
def test_calculator_basic_operations(self):
111-
calc = Calculator()
112-
self.assertEqual(calc.add(5, 3), 8)
113-
self.assertEqual(calc.subtract(10, 4), 6)
114-
self.assertEqual(calc.multiply(3, 4), 12)
115-
self.assertEqual(calc.divide(10, 2), 5)
116-
117-
def test_calculator_divide_by_zero(self):
118-
calc = Calculator()
119-
with self.assertRaises(ValueError):
120-
calc.divide(5, 0)
121-
122-
def test_calculator_memory_operations(self):
123-
calc = Calculator()
124-
calc.store(42)
125-
self.assertEqual(calc.memory, 42)
126-
self.assertEqual(calc.recall(), 42)
127-
128-
calc.store(100)
129-
self.assertEqual(calc.recall(), 100)
130-
131-
132-
class TestStringManipulatorClass(unittest.TestCase):
133-
def test_reverse_string(self):
134-
self.assertEqual(StringManipulator.reverse_string("hello"), "olleh")
135-
self.assertEqual(StringManipulator.reverse_string(""), "")
136-
self.assertEqual(StringManipulator.reverse_string("a"), "a")
137-
self.assertEqual(StringManipulator.reverse_string("12345"), "54321")
138-
139-
def test_is_palindrome(self):
140-
self.assertTrue(StringManipulator.is_palindrome("racecar"))
141-
self.assertTrue(StringManipulator.is_palindrome("A man, a plan, a canal: Panama"))
142-
self.assertTrue(StringManipulator.is_palindrome(""))
143-
self.assertTrue(StringManipulator.is_palindrome("a"))
144-
self.assertFalse(StringManipulator.is_palindrome("hello"))
145-
self.assertFalse(StringManipulator.is_palindrome("Python"))
146-
147-
148-
class TestDataProcessorClass(unittest.TestCase):
149-
def test_data_processor_initialization(self):
150-
processor = DataProcessor([1, 2, 3, 4, 5])
151-
self.assertEqual(processor.data, [1, 2, 3, 4, 5])
152-
153-
with self.assertRaises(ValueError):
154-
DataProcessor([])
155-
156-
def test_get_mean(self):
157-
processor = DataProcessor([1, 2, 3, 4, 5])
158-
self.assertEqual(processor.get_mean(), 3.0)
159-
160-
processor = DataProcessor([10, 20, 30])
161-
self.assertEqual(processor.get_mean(), 20.0)
162-
163-
def test_get_variance(self):
164-
processor = DataProcessor([1, 2, 3, 4, 5])
165-
self.assertEqual(processor.get_variance(), 2.5)
166-
167-
with self.assertRaises(ValueError):
168-
DataProcessor([5]).get_variance()
169-
170-
def test_normalize(self):
171-
processor = DataProcessor([1, 2, 3, 4, 5])
172-
normalized = processor.normalize()
173-
expected = [-1.264911064067352, -0.6324555320336759, 0.0, 0.6324555320336759, 1.264911064067352]
174-
175-
# Check each value with a small tolerance for floating point precision
176-
for actual, expected_val in zip(normalized, expected):
177-
self.assertAlmostEqual(actual, expected_val, places=10)
178-
179-
# Test error case with zero standard deviation
180-
processor = DataProcessor([5, 5, 5])
181-
with self.assertRaises(ValueError):
182-
processor.normalize()
183-
184-
185-
class TestDateParsingFunction(unittest.TestCase):
186-
def test_parse_date_default_format(self):
187-
date_str = "2023-10-15"
188-
expected = datetime(2023, 10, 15)
189-
self.assertEqual(parse_date(date_str), expected)
190-
191-
def test_parse_date_custom_format(self):
192-
date_str = "15/10/2023"
193-
custom_format = "%d/%m/%Y"
194-
expected = datetime(2023, 10, 15)
195-
self.assertEqual(parse_date(date_str, custom_format), expected)
196-
197-
def test_parse_date_invalid_format(self):
198-
date_str = "not-a-date"
199-
with self.assertRaises(ValueError):
200-
parse_date(date_str)
201-
202-
203-
class TestSafeListAccessFunction(unittest.TestCase):
204-
def test_safe_list_access_valid_index(self):
205-
lst = [10, 20, 30, 40, 50]
206-
self.assertEqual(safe_list_access(lst, 0), 10)
207-
self.assertEqual(safe_list_access(lst, 2), 30)
208-
self.assertEqual(safe_list_access(lst, 4), 50)
209-
210-
def test_safe_list_access_invalid_index(self):
211-
lst = [10, 20, 30]
212-
self.assertIsNone(safe_list_access(lst, 5))
213-
self.assertIsNone(safe_list_access(lst, -5))
214-
215-
def test_safe_list_access_with_default(self):
216-
lst = [10, 20, 30]
217-
self.assertEqual(safe_list_access(lst, 5, "default"), "default")
218-
self.assertEqual(safe_list_access(lst, -5, 999), 999)
219-
220-
221-
class TestMergeDictsFunction(unittest.TestCase):
222-
def test_merge_dicts_basic(self):
223-
dict1 = {"a": 1, "b": 2}
224-
dict2 = {"c": 3, "d": 4}
225-
result = merge_dicts(dict1, dict2)
226-
self.assertEqual(result, {"a": 1, "b": 2, "c": 3, "d": 4})
227-
228-
def test_merge_dicts_with_overwrite(self):
229-
dict1 = {"a": 1, "b": 2}
230-
dict2 = {"b": 3, "c": 4}
231-
result = merge_dicts(dict1, dict2)
232-
self.assertEqual(result, {"a": 1, "b": 3, "c": 4})
233-
234-
def test_merge_dicts_with_nested_dicts(self):
235-
dict1 = {"a": 1, "b": {"x": 10, "y": 20}}
236-
dict2 = {"c": 3, "b": {"y": 30, "z": 40}}
237-
result = merge_dicts(dict1, dict2)
238-
self.assertEqual(result, {"a": 1, "b": {"x": 10, "y": 30, "z": 40}, "c": 3})
239-
240-
def test_merge_dicts_with_nested_non_dict_overwrite(self):
241-
dict1 = {"a": 1, "b": {"x": 10}}
242-
dict2 = {"b": 20}
243-
result = merge_dicts(dict1, dict2)
244-
self.assertEqual(result, {"a": 1, "b": 20})
245-
246-
247-
if __name__ == "__main__":
248-
unittest.main()

0 commit comments

Comments
 (0)