public void ActionLink_PreservesFollowsConventions(bool value) { // Arrange ODataModelBuilder builder = new ODataModelBuilder(); ActionConfiguration configuration = new ActionConfiguration(builder, "IgnoreAction"); Mock <IEdmTypeConfiguration> bindingParameterTypeMock = new Mock <IEdmTypeConfiguration>(); bindingParameterTypeMock.Setup(o => o.Kind).Returns(EdmTypeKind.Entity); Type entityType = typeof(object); bindingParameterTypeMock.Setup(o => o.ClrType).Returns(entityType); configuration.SetBindingParameter("IgnoreParameter", bindingParameterTypeMock.Object, alwaysBindable: false); configuration.HasActionLink((a) => { throw new NotImplementedException(); }, followsConventions: value); builder.AddProcedure(configuration); builder.AddEntity(entityType); // Act IEdmModel model = builder.GetEdmModel(); // Assert IEdmFunctionImport functionImport = model.EntityContainers().Single().Elements.OfType <IEdmFunctionImport>().Single(); ActionLinkBuilder actionLinkBuilder = model.GetActionLinkBuilder(functionImport); Assert.Equal(value, actionLinkBuilder.FollowsConventions); }
/// <summary> /// Create a new ActionConfiguration /// </summary> /// <param name="builder">The ODataModelBuilder to which this ActionConfiguration should be added.</param> /// <param name="name">The name of this ActionConfiguration.</param> public ActionConfiguration(ODataModelBuilder builder, string name) { Name = name; ModelBuilder = builder; builder.AddProcedure(this); }