public void CanCreateFunctionWithPrimitiveCollectionReturnType() { // Arrange // Act ODataModelBuilder builder = new ODataModelBuilder(); FunctionConfiguration function = builder.Function("CreateMessages"); function.ReturnsCollection <string>(); // Assert Assert.NotNull(function.ReturnType); Assert.Equal("Collection(Edm.String)", function.ReturnType.FullName); }
public void UnboundFunction_ForEnumTypeInODataConventionModelBuilder() { // Arrange ODataConventionModelBuilder builder = new ODataConventionModelBuilder(); FunctionConfiguration functionConfiguration = builder.Function("UnboundFunction"); functionConfiguration.Parameter <Color>("Color"); functionConfiguration.ReturnsCollection <Color>(); // Act & Assert IEdmModel model = builder.GetEdmModel(); IEdmFunctionImport functionImport = model.EntityContainer.OperationImports().Single(o => o.Name == "UnboundFunction") as IEdmFunctionImport; IEdmTypeReference color = functionImport.Function.Parameters.Single(p => p.Name == "Color").Type; IEdmTypeReference returnType = functionImport.Function.ReturnType; IEdmEnumType colorType = model.SchemaElements.OfType <IEdmEnumType>().Single(e => e.Name == "Color"); Assert.Same(colorType, color.Definition); Assert.True(returnType.IsCollection()); Assert.Same(colorType, returnType.AsCollection().ElementType().Definition); }