adding macros and shared_examples