tests for function definitions, and throw error for missing parameter names