#NEWLINE# def _validate_customization_arg_specs( self , customization_args ) : #NEWLINE# #INDENT# for ca_spec in customization_args : #NEWLINE# #INDENT# self . assertEqual ( set ( ca_spec . keys ( ) ) , set ( [ 'name' , 'description' , 'schema' , 'default_value' ] ) ) #NEWLINE# self . assertTrue ( isinstance ( ca_spec [ 'name' ] , basestring ) ) #NEWLINE# self . assertTrue ( self . _is_alphanumeric_string ( ca_spec [ 'name' ] ) ) #NEWLINE# self . assertTrue ( isinstance ( ca_spec [ 'description' ] , basestring ) ) #NEWLINE# self . assertGreater ( len ( ca_spec [ 'description' ] ) , 0 ) #NEWLINE# schema_utils_test . validate_schema ( ca_spec [ 'schema' ] ) #NEWLINE# self . assertEqual ( ca_spec [ 'default_value' ] , schema_utils . normalize_against_schema ( ca_spec [ 'default_value' ] , ca_spec [ 'schema' ] ) ) #NEWLINE# if ( ca_spec [ 'schema' ] [ 'type' ] == 'custom' ) : #NEWLINE# #INDENT# obj_class = obj_services . Registry . get_object_class_by_type ( ca_spec [ 'schema' ] [ 'obj_type' ] ) #NEWLINE# self . assertIsNotNone ( obj_class . edit_html_filename ) #NEWLINE# self . assertIsNotNone ( obj_class . edit_js_filename ) #NEWLINE# self . assertEqual ( ca_spec [ 'default_value' ] , obj_class . normalize ( ca_spec [ 'default_value' ] ) )