diff --git a/runpod/serverless/utils/rp_validator.py b/runpod/serverless/utils/rp_validator.py index be9ad38a..ebb44c18 100644 --- a/runpod/serverless/utils/rp_validator.py +++ b/runpod/serverless/utils/rp_validator.py @@ -70,7 +70,7 @@ def _validate_input_against_schema(schema, validated_input, error_list): # Check for the correct type. is_instance = isinstance(validated_input[key], rules["type"]) - if validated_input[key] is not None and not is_instance: + if not is_instance: _add_error( error_list, f"{key} should be {rules['type']} type, not {type(validated_input[key])}.", diff --git a/tests/test_serverless/test_utils/test_validate.py b/tests/test_serverless/test_utils/test_validate.py index 65a10418..60385130 100644 --- a/tests/test_serverless/test_utils/test_validate.py +++ b/tests/test_serverless/test_utils/test_validate.py @@ -99,6 +99,24 @@ def test_validate_rules_not_dict(self): result = rp_validator.validate(self.raw_input, {"x": "not dict"}) self.assertIn("errors", result) + def test_validate_simple_input(self): + """ + Tests validate with simple input + """ + result = rp_validator.validate( + {"my_input": None}, {"my_input": {"type": str, "required": True}} + ) + self.assertIn("errors", result) + + def test_validate_none_type(self): + """ + Tests validate with None type + """ + result = rp_validator.validate( + {"my_input": None}, {"my_input": {"type": type(None), "required": True}} + ) + self.assertNotIn("errors", result) + if __name__ == "__main__": unittest.main()