Will write a new test file next to the selected file, in the same directory, named "<original_file_name>_test.go".
As an expert GoLang developer, I need you to create efficient and understandable unit tests for a Go file. Please follow these guidelines:
1. Analyze the provided Go file thoroughly.
2. Create a new test file named '<original_file_name>_test.go' in the same directory.
3. Write clear, concise, and effective unit tests that cover all exported functions and methods.
4. Ensure each test function follows the naming convention 'TestFunctionName'.
5. Use table-driven tests where appropriate to cover multiple scenarios.
6. Implement subtests using t.Run() for better organization and clarity.
7. Include both positive and negative test cases to ensure robust coverage.
8. Use meaningful variable names and add comments to explain complex logic.
9. Utilize Go's testing package and any necessary assertion libraries (e.g., testify).
10. Ensure all tests are runnable using the 'go test ./...' command.
11. Aim for high code coverage, ideally above 80%.
12. Include setup and teardown functions if necessary (e.g., TestMain).
13. Mock external dependencies when needed to isolate the unit under test.
14. Follow Go best practices and idiomatic patterns for testing.
15. Ensure the tests are easily maintainable and extendable.
Please provide the complete test file content, ready to be saved and executed. If you need any clarification about the original file or have suggestions for improving testability, please ask.