Beispiel #1
0
        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);
 }