Changed Test function input method
Working version with overridable canonical former