def test_override_schemas(self): init_schemas = self.sk_pca._schemas pca_schemas = self.ll_pca._schemas foo = self.sk_pca.customize_schema(schemas=schemas.JSON(pca_schemas)) self.assertEqual(foo._schemas, pca_schemas) self.assertEqual(self.sk_pca._schemas, init_schemas) self.assertRaises(Exception, self.sk_pca.customize_schema, schemas={})
def test_override_input(self): with EnableSchemaValidation(): init_input_schema = self.sk_pca.get_schema("input_fit") pca_input = self.ll_pca.get_schema("input_fit") foo = self.sk_pca.customize_schema(input_fit=schemas.JSON(pca_input)) self.assertEqual(foo.get_schema("input_fit"), pca_input) lale.type_checking.validate_is_schema(foo._schemas) self.assertEqual(self.sk_pca.get_schema("input_fit"), init_input_schema) self.assertRaises(Exception, self.sk_pca.customize_schema, input_fit=42) _ = self.sk_pca.customize_schema(input_foo=pca_input)
def test_override_output(self): init_output_schema = self.sk_pca.get_schema('output_transform') pca_output = self.ll_pca.get_schema('output_transform') foo = self.sk_pca.customize_schema(output_transform=schemas.JSON(pca_output)) self.assertEqual(foo.get_schema('output_transform'), pca_output) lale.type_checking.validate_is_schema(foo._schemas) self.assertEqual(self.sk_pca.get_schema('output_transform'), init_output_schema) self.assertRaises(Exception, self.sk_pca.customize_schema, output={}) self.assertRaises( Exception, self.sk_pca.customize_schema, output_foo=pca_output)
def test_override_json_param(self): init = self.ll_pca.hyperparam_schema('tol') expected = {'description': 'Tol', 'type': 'number', 'minimum': 0.2, 'default': 1.0} foo = self.ll_pca.customize_schema(tol=schemas.JSON(expected)) self.assertEqual(foo.hyperparam_schema('tol'), expected) lale.type_checking.validate_is_schema(foo._schemas) self.assertEqual(self.ll_pca.hyperparam_schema('tol'), init)
def test_override_json_param(self): init = self.ll_pca.hyperparam_schema("tol") expected = { "description": "Tol", "type": "number", "minimum": 0.2, "default": 1.0, } foo = self.ll_pca.customize_schema(tol=schemas.JSON(expected)) self.assertEqual(foo.hyperparam_schema("tol"), expected) lale.type_checking.validate_is_schema(foo._schemas) self.assertEqual(self.ll_pca.hyperparam_schema("tol"), init)
def test_override_input(self): init_input_schema = self.sk_pca.get_schema('input_fit') pca_input = self.ll_pca.get_schema('input_fit') foo = self.sk_pca.customize_schema(input_fit=schemas.JSON(pca_input)) self.assertEqual(foo.get_schema('input_fit'), pca_input) helpers.validate_is_schema(foo._schemas) self.assertEqual(self.sk_pca.get_schema('input_fit'), init_input_schema) self.assertRaises(Exception, self.sk_pca.customize_schema, input_fit={}) self.assertRaises(Exception, self.sk_pca.customize_schema, input_foo=pca_input)