added ability to expect custom data types