Refactored test cases to clean up the code
Basic macro support