Create comprehensive unit test cases for Python functions
Write a set of unit test cases in Python using the unittest framework for the following function: [FUNCTION_DESCRIPTION]. Include edge cases, normal cases, and error cases. Ensure the tests cover all possible scenarios.
Use this when you need to quickly generate test cases for a Python function to ensure its robustness.