using shared examples to test