def method_parameters(api): parameters = [] # Create request object parameters request_object = iOSTemplateMethods.get_api_request_object(api) if request_object: parameters.extend( ObjCParameter.generate_field_parameters(request_object)) parameters.extend( ObjCParameter.generate_relationship_parameters(request_object)) # Add id parameter if we need it id_parameter = ObjCParameter.create_id_parameter( api.url_path, request_object) if id_parameter: parameters.append(id_parameter) # Add required RestKit parameters parameters.extend([ ObjCParameter( name="success", objc_type= "void (^)(RKObjectRequestOperation *operation, RKMappingResult *mappingResult)" ), ObjCParameter( name="failure", objc_type= "void (^)(RKObjectRequestOperation *operation, NSError *error)" ) ]) return ObjectiveCTemplateMethods.create_parameter_signature(parameters)
def test_generate_objc_relationship_parameters(self): schema = create_dynamic_schema({ "$userRequest": { "username": "******", "profile": "O2O,$profileRequest", "tags": "M2M,$tagRequest" }, "$profileRequest": {}, "$tagRequest": {} }, []) request_object = schema.data_objects['$userRequest'] parameters = ObjCParameter.generate_relationship_parameters(request_object) self.assertEqual(parameters[0].name, "profile") self.assertEqual(parameters[0].objc_type, "ProfileRequest") self.assertEqual(parameters[1].name, "tags") self.assertEqual(parameters[1].objc_type, "NSOrderedSet*")
def test_generate_objc_relationship_parameters(self): schema = create_dynamic_schema( { "$userRequest": { "username": "******", "profile": "O2O,$profileRequest", "tags": "M2M,$tagRequest" }, "$profileRequest": {}, "$tagRequest": {} }, []) request_object = schema.data_objects['$userRequest'] parameters = ObjCParameter.generate_relationship_parameters( request_object) self.assertEqual(parameters[0].name, "profile") self.assertEqual(parameters[0].objc_type, "ProfileRequest") self.assertEqual(parameters[1].name, "tags") self.assertEqual(parameters[1].objc_type, "NSOrderedSet*")
def method_parameters(api): parameters = [] # Create request object parameters request_object = iOSTemplateMethods.get_api_request_object(api) if request_object: parameters.extend(ObjCParameter.generate_field_parameters(request_object)) parameters.extend(ObjCParameter.generate_relationship_parameters(request_object)) # Add id parameter if we need it id_parameter = ObjCParameter.create_id_parameter(api.url_path, request_object) if id_parameter: parameters.append(id_parameter) # Add required RestKit parameters parameters.extend([ ObjCParameter(name="success", objc_type="void (^)(RKObjectRequestOperation *operation, RKMappingResult *mappingResult)"), ObjCParameter(name="failure", objc_type="void (^)(RKObjectRequestOperation *operation, NSError *error)") ]) return ObjectiveCTemplateMethods.create_parameter_signature(parameters)