Adding unit & mock test examples, new tests directory and a snapshot
This commit is contained in:
parent
03f1049786
commit
5be329909a
212
.snapshots/snapshot-2025-10-04T17_33_25_701Z.md
Normal file
212
.snapshots/snapshot-2025-10-04T17_33_25_701Z.md
Normal file
@ -0,0 +1,212 @@
|
|||||||
|
pytest
|
||||||
|
|
||||||
|
# Project Structure
|
||||||
|
|
||||||
|
├─ 📁 code_challenges
|
||||||
|
└─ CodeChallenge_16.py
|
||||||
|
└─ CodeChallenge_17.py
|
||||||
|
└─ CodeChallenge_15.py
|
||||||
|
└─ CodeChallenge_14.py
|
||||||
|
└─ CodeChallenge_18.py
|
||||||
|
└─ CodeChallenge_13.py
|
||||||
|
└─ CodeChallenge_12.py
|
||||||
|
└─ CodeChallenge_11.py
|
||||||
|
└─ CodeChallenge_19.py
|
||||||
|
└─ CodeChallenge_2.py
|
||||||
|
└─ CodeChallenge_10.py
|
||||||
|
└─ CodeChallenge_1.py
|
||||||
|
└─ CodeChallenge_02(Medium).py
|
||||||
|
└─ CodeChallenge_20.py
|
||||||
|
└─ CodeChallenge_4.py
|
||||||
|
└─ CodeChallenge_39.py
|
||||||
|
└─ CodeChallenge_38.py
|
||||||
|
└─ CodeChallenge_37.py
|
||||||
|
└─ CodeChallenge_36.py
|
||||||
|
└─ CodeChallenge_35.py
|
||||||
|
└─ CodeChallenge_34.py
|
||||||
|
└─ CodeChallenge_33.py
|
||||||
|
└─ CodeChallenge_32.py
|
||||||
|
└─ CodeChallenge_31.py
|
||||||
|
└─ CodeChallenge_30.py
|
||||||
|
└─ CodeChallenge_3.py
|
||||||
|
└─ CodeChallenge_29.py
|
||||||
|
└─ CodeChallenge_28.py
|
||||||
|
└─ CodeChallenge_27.py
|
||||||
|
└─ CodeChallenge_26.py
|
||||||
|
└─ CodeChallenge_25.py
|
||||||
|
└─ CodeChallenge_24.py
|
||||||
|
└─ CodeChallenge_23.py
|
||||||
|
└─ CodeChallenge_22.py
|
||||||
|
└─ CodeChallenge_21.py
|
||||||
|
└─ using_zip.py
|
||||||
|
└─ URLSuffixHash.py
|
||||||
|
└─ practice_1.py
|
||||||
|
└─ myCode_2.py
|
||||||
|
└─ myCode_1.py
|
||||||
|
└─ cylinder_max.py
|
||||||
|
└─ Code_Challenge_medium_1.py
|
||||||
|
└─ CodeChallenge_9.py
|
||||||
|
└─ CodeChallenge_8.py
|
||||||
|
└─ CodeChallenge_7.py
|
||||||
|
└─ CodeChallenge_6.py
|
||||||
|
└─ CodeChallenge_5.py
|
||||||
|
└─ class_Pet.py
|
||||||
|
└─ decorator_chaining.py
|
||||||
|
└─ decorator_add.py
|
||||||
|
└─ Context_Managers.py
|
||||||
|
└─ console_print_with_function.py
|
||||||
|
└─ concatenating_arrays.py
|
||||||
|
└─ complex_class.py
|
||||||
|
└─ flattening_arrays.py
|
||||||
|
└─ hand_utils.py
|
||||||
|
└─ Graph_Database_Simulation.py
|
||||||
|
└─ global_variables.py
|
||||||
|
└─ Gin_Rummy_Card_Game.py
|
||||||
|
└─ generators.py
|
||||||
|
└─ func_calls_func.py
|
||||||
|
└─ flexible_decorators.py
|
||||||
|
└─ ExpensiveQuerySimulation.py
|
||||||
|
└─ enhanced_decorators.py
|
||||||
|
└─ dynamic_polymorphism.py
|
||||||
|
└─ high-order_functions.py
|
||||||
|
└─ Dog.py
|
||||||
|
└─ discounted_list_prices.py
|
||||||
|
└─ digital_to_hexidecimal.py
|
||||||
|
└─ digital_to_binary.py
|
||||||
|
└─ dict_merge.py
|
||||||
|
└─ determinate_test.py
|
||||||
|
└─ determinate3x3.py
|
||||||
|
└─ determinate2x2.py
|
||||||
|
└─ items.csv
|
||||||
|
└─ default_func_parameters.py
|
||||||
|
└─ decorator_validation.py
|
||||||
|
└─ decorator_exercise.py
|
||||||
|
└─ class_user_def_context_mgr.py
|
||||||
|
└─ class_inheritance.py
|
||||||
|
└─ classes_fundamentals.py
|
||||||
|
└─ item_class.py
|
||||||
|
└─ broadcasting_arrays.py
|
||||||
|
└─ assigning_values_to_indexed_elements.py
|
||||||
|
└─ array_statistical_operations.py
|
||||||
|
└─ array_scalar_operations.py
|
||||||
|
└─ array_manipulation.py
|
||||||
|
└─ array_indexing.py
|
||||||
|
└─ array_creation_functions.py
|
||||||
|
└─ array_copying.py
|
||||||
|
└─ array_comparisons.py
|
||||||
|
└─ array_boolean_indexing.py
|
||||||
|
└─ args_and_optionals..py
|
||||||
|
└─ args_and_kargs_in_func.py
|
||||||
|
└─ animal_talk.py
|
||||||
|
└─ activations.py
|
||||||
|
└─ 5-Card_Stud_Poker_Game (Final).py
|
||||||
|
└─ kargs_in_dynamic_funcs.py
|
||||||
|
└─ 3D_array_indexing.py
|
||||||
|
└─ 2D_int_array_indexing.py
|
||||||
|
└─ 2D_array_slicing.py
|
||||||
|
└─ 2D_array_indexing.py
|
||||||
|
└─ 2D_array_boolean_indexing.py
|
||||||
|
└─ numpy_2D_matrices.py
|
||||||
|
└─ orbital.py
|
||||||
|
└─ operator_overloading.py
|
||||||
|
└─ numpy_linspace_function.py
|
||||||
|
└─ numpy_array.py
|
||||||
|
└─ non_local_variables.py
|
||||||
|
└─ packing-unpacking.txt.py
|
||||||
|
└─ neural_network_example.py
|
||||||
|
└─ nested_functions.py
|
||||||
|
└─ Neo4j_graph_database_simulation.py
|
||||||
|
└─ my_module.py
|
||||||
|
└─ MyProductClass.py
|
||||||
|
└─ MyProductClass Enhanced.py
|
||||||
|
└─ mult_with_queue.py
|
||||||
|
└─ mult_with_pool.py
|
||||||
|
└─ mult_inheritance.py
|
||||||
|
└─ packing.py
|
||||||
|
└─ mult_array.py
|
||||||
|
└─ multi_layer_network.py
|
||||||
|
└─ multi-layer-perceptron.py
|
||||||
|
└─ mult.py
|
||||||
|
└─ mro_resolution_example.py
|
||||||
|
└─ modify_global_var_in_func.py
|
||||||
|
└─ modify_data_structure.py
|
||||||
|
└─ merge_arrays.py
|
||||||
|
└─ mat_trans.py
|
||||||
|
└─ mat_flat.py
|
||||||
|
└─ matrix_transpose.py
|
||||||
|
└─ matrix_mult.py
|
||||||
|
└─ matrix_class.py
|
||||||
|
└─ playing_cards.py
|
||||||
|
└─ LRUCache.py
|
||||||
|
└─ Lists_In_Functions.py
|
||||||
|
└─ linked_list.py
|
||||||
|
└─ linear_algebra.py
|
||||||
|
└─ layers.py
|
||||||
|
└─ lambda_with_lists.py
|
||||||
|
└─ product_revenues_exercise.py
|
||||||
|
└─ python_closures.py
|
||||||
|
└─ product_class.py
|
||||||
|
└─ pop_list.py
|
||||||
|
└─ poker_class_version.py
|
||||||
|
└─ poker.py
|
||||||
|
└─ lambda_funcs_with_built-ins.py
|
||||||
|
└─ Lambda_funcs.py
|
||||||
|
└─ keyword_arguments_in_func_solution.py
|
||||||
|
└─ keyword_arguments_in_func_exercise.py
|
||||||
|
└─ keyword_arguments_in_funcs.py
|
||||||
|
└─ timing_decorator.py
|
||||||
|
└─ threshold_checker.py
|
||||||
|
└─ test_digital_to_hexidecimal.py
|
||||||
|
└─ test_.py
|
||||||
|
└─ two_numbers_sum_to_9.py
|
||||||
|
└─ test2.py
|
||||||
|
└─ test.py
|
||||||
|
└─ square_matrix_transpose.py
|
||||||
|
└─ Unit_Test.py
|
||||||
|
└─ sorting_2d_arrays.py
|
||||||
|
└─ sorted_arrays.py
|
||||||
|
└─ slicing_1D_arrays.py
|
||||||
|
└─ using_eval_function.py
|
||||||
|
└─ unpacking.py
|
||||||
|
└─ sleeping_decorator.py
|
||||||
|
└─ single_node_neural_network.py
|
||||||
|
└─ runtime_polymorphism.py
|
||||||
|
└─ RMD_Calculator.py
|
||||||
|
└─ using_kwargs.py
|
||||||
|
└─ reshape_array.py
|
||||||
|
└─ random_arrays_2.py
|
||||||
|
└─ random_arrays.py
|
||||||
|
└─ zipping_lists.py
|
||||||
|
└─ python_decorators.py
|
||||||
|
|
||||||
|
|
||||||
|
# Project Files
|
||||||
|
|
||||||
|
- d:\Python_Code\test_.py
|
||||||
|
- d:\Python_Code\my_module.py
|
||||||
|
|
||||||
|
## d:\Python_Code\test_.py
|
||||||
|
```
|
||||||
|
# test_math.py
|
||||||
|
def add(a, b):
|
||||||
|
return a + b
|
||||||
|
|
||||||
|
def test_add():
|
||||||
|
assert add(2, 3) == 5
|
||||||
|
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
## d:\Python_Code\my_module.py
|
||||||
|
```
|
||||||
|
# my_module.py
|
||||||
|
def greet(name):
|
||||||
|
return f"Hello, {name}!"
|
||||||
|
|
||||||
|
# test_my_module.py
|
||||||
|
def test_greet(mocker):
|
||||||
|
mock_greet = mocker.patch('my_module.greet', return_value="Hi!")
|
||||||
|
assert mock_greet("Alice") == "Hi!"
|
||||||
|
mock_greet.assert_called_once_with("Alice")
|
||||||
|
```
|
||||||
|
|
||||||
11
Unit_Test.py
Normal file
11
Unit_Test.py
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
import unittest
|
||||||
|
|
||||||
|
def add(a, b):
|
||||||
|
return a + b
|
||||||
|
|
||||||
|
class TestMath(unittest.TestCase):
|
||||||
|
def test_add(self):
|
||||||
|
self.assertEqual(add(2, 4), 6)
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
unittest.main()
|
||||||
9
determinate_test.py
Normal file
9
determinate_test.py
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
import determinate3x3
|
||||||
|
|
||||||
|
Matrix = [
|
||||||
|
[4, 3, 6],
|
||||||
|
[2, 9, 11],
|
||||||
|
[1, 4, 8]
|
||||||
|
]
|
||||||
|
|
||||||
|
print(determinate3x3.det3x3(Matrix))
|
||||||
9
my_module.py
Normal file
9
my_module.py
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# my_module.py
|
||||||
|
def greet(name):
|
||||||
|
return f"Hello, {name}!"
|
||||||
|
|
||||||
|
# test_my_module.py
|
||||||
|
def test_greet(mocker):
|
||||||
|
mock_greet = mocker.patch('my_module.greet', return_value="Hi!")
|
||||||
|
assert mock_greet("Alice") == "Hi!"
|
||||||
|
mock_greet.assert_called_once_with("Alice")
|
||||||
7
test_.py
Normal file
7
test_.py
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# test_math.py
|
||||||
|
def add(a, b):
|
||||||
|
return a + b
|
||||||
|
|
||||||
|
def test_add():
|
||||||
|
assert add(2, 3) == 5
|
||||||
|
|
||||||
10
tests/area.py
Normal file
10
tests/area.py
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
PI = 3.14159
|
||||||
|
|
||||||
|
|
||||||
|
def area_of_circle(radius: float) -> float:
|
||||||
|
"""
|
||||||
|
Function to calculate area of a circle
|
||||||
|
:param radius: Radius of the circle
|
||||||
|
:return: Area of the circle
|
||||||
|
"""
|
||||||
|
return PI * radius * radius
|
||||||
18
tests/file_handler.py
Normal file
18
tests/file_handler.py
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
import os
|
||||||
|
|
||||||
|
def create_file(filename: str) -> None:
|
||||||
|
"""
|
||||||
|
Function to create a file
|
||||||
|
:param filename: Name of the file to create
|
||||||
|
:return: None
|
||||||
|
"""
|
||||||
|
with open(f"{filename}", "w") as f:
|
||||||
|
f.write("hello")
|
||||||
|
|
||||||
|
def remove_file(filename: str) -> None:
|
||||||
|
"""
|
||||||
|
Function to remove a file
|
||||||
|
:param filename: Name of the file to remove
|
||||||
|
:return: None
|
||||||
|
"""
|
||||||
|
os.remove(filename)
|
||||||
8
tests/test_area.py
Normal file
8
tests/test_area.py
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
from tests.area import area_of_circle
|
||||||
|
|
||||||
|
|
||||||
|
def test_area_of_circle():
|
||||||
|
"""
|
||||||
|
Function to test area of circle
|
||||||
|
"""
|
||||||
|
assert area_of_circle(5) == 78.53975
|
||||||
36
tests/test_file_handler.py
Normal file
36
tests/test_file_handler.py
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
import os
|
||||||
|
from tests.file_handler import create_file, remove_file
|
||||||
|
|
||||||
|
|
||||||
|
def test_create_file():
|
||||||
|
"""
|
||||||
|
Function to test make file
|
||||||
|
"""
|
||||||
|
create_file(filename="delete_me.txt")
|
||||||
|
assert os.path.isfile("delete_me.txt")
|
||||||
|
|
||||||
|
def test_remove_file_with_mock(mocker):
|
||||||
|
"""
|
||||||
|
Test the removal of a file using mocking to avoid actual file system operations.
|
||||||
|
"""
|
||||||
|
filename = "delete_me.txt"
|
||||||
|
|
||||||
|
# Mock os.remove to test file deletion without deleting anything
|
||||||
|
mock_remove = mocker.patch("os.remove")
|
||||||
|
|
||||||
|
# Mock os.path.isfile to control its return value
|
||||||
|
mocker.patch("os.path.isfile", return_value=False)
|
||||||
|
|
||||||
|
# Mock open for the create_file function
|
||||||
|
mocker.patch("builtins.open", mocker.mock_open())
|
||||||
|
|
||||||
|
# Simulate file creation and removal
|
||||||
|
create_file(filename)
|
||||||
|
remove_file(filename)
|
||||||
|
|
||||||
|
# Assert that os.remove was called correctly
|
||||||
|
mock_remove.assert_called_once_with(filename)
|
||||||
|
|
||||||
|
# Assert that os.path.isfile returns False, simulating that the file does not exist
|
||||||
|
assert not os.path.isfile(filename)
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user