Fix some macro with parentheses, add more tests