cleaned up specs with macro and shared examples
test