Rewrote test_macro, added a parse_as_ast to ease parse testing.