public void BoundAction_ForEnumTypeInODataModelBuilder() { // Arrange ODataModelBuilder builder = ODataModelBuilderMocks.GetModelBuilderMock <ODataModelBuilder>(); EntityTypeConfiguration <EnumModel> entityTypeConfiguration = builder.EntityType <EnumModel>(); ActionConfiguration actionConfiguration = entityTypeConfiguration.Action("BoundAction"); actionConfiguration.CollectionParameter <Color>("Colors"); actionConfiguration.ReturnsCollection <Color?>(); builder.Add_Color_EnumType(); // Act & Assert IEdmModel model = builder.GetEdmModel(); IEdmAction action = model.FindDeclaredOperations("Default.BoundAction").Single() as IEdmAction; IEdmTypeReference colors = action.Parameters.Single(p => p.Name == "Colors").Type; IEdmTypeReference returnType = action.ReturnType; IEdmEnumType colorType = model.SchemaElements.OfType <IEdmEnumType>().Single(e => e.Name == "Color"); Assert.True(colors.IsCollection()); Assert.Same(colorType, colors.AsCollection().ElementType().Definition); Assert.True(returnType.IsCollection()); Assert.True(returnType.AsCollection().ElementType().IsNullable); Assert.Same(colorType, returnType.AsCollection().ElementType().Definition); }
public void CanCreateActionWithPrimitiveCollectionReturnType() { // Arrange // Act ODataModelBuilder builder = new ODataModelBuilder(); ActionConfiguration action = builder.Action("CreateMessages"); action.ReturnsCollection <string>(); // Assert Assert.NotNull(action.ReturnType); Assert.Equal("Collection(Edm.String)", action.ReturnType.FullName); }