public void GetMetadata_Throws_IfModelIsNotSetOnRequest() { HttpConfiguration configuration = new HttpConfiguration(); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); Assert.Throws<InvalidOperationException>( () => controller.GetMetadata(), "The request must have an associated EDM model. Consider using the extension method HttpConfiguration.Routes.MapODataRoute to register a route that parses the OData URI and attaches the model information."); }
public void GetMetadata_Returns_EdmModelFromRequest() { IEdmModel model = new EdmModel(); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.ODataProperties().Model = model; IEdmModel responseModel = controller.GetMetadata(); Assert.Equal(model, responseModel); }
public void GetMetadata_Throws_IfModelIsNotSetOnConfiguration_And_ODataFormatterIsNotPresent() { HttpConfiguration configuration = new HttpConfiguration(); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = configuration; Assert.Throws<InvalidOperationException>( () => controller.GetMetadata(), "No OData formatter was found to write the OData metadata. Consider registering an appropriate ODataMediaTypeFormatter on the configuration's formatter collection."); }
public void GetMetadata_Throws_IfModelIsNotSetOnRequest() { HttpConfiguration configuration = new HttpConfiguration(); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); Assert.Throws <InvalidOperationException>( () => controller.GetMetadata(), "The request must have an associated EDM model. Consider using the extension method HttpConfiguration.Routes.MapODataRoute to register a route that parses the OData URI and attaches the model information."); }
public void GetMetadata_Throws_IfModelIsNotSetOnConfiguration_And_ODataFormatterIsNotPresent() { HttpConfiguration configuration = new HttpConfiguration(); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = configuration; Assert.Throws<InvalidOperationException>( () => controller.GetMetadata(), "The configuration is missing 'IEdmModel'. Try calling 'SetODataFormatter' on 'HttpConfiguration'."); }
public void GetMetadata_Throws_IfModelIsNotSetOnConfiguration_And_ODataFormatterIsNotPresent() { HttpConfiguration configuration = new HttpConfiguration(); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = configuration; Assert.Throws <InvalidOperationException>( () => controller.GetMetadata(), "No OData formatter was found to write the OData metadata. Consider registering an appropriate ODataMediaTypeFormatter on the configuration's formatter collection."); }
public void GetMetadata_Throws_IfModelIsNotSetOnConfiguration_And_ODataFormatterIsNotPresent() { HttpConfiguration configuration = new HttpConfiguration(); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = configuration; Assert.Throws <InvalidOperationException>( () => controller.GetMetadata(), "The configuration is missing 'IEdmModel'. Try calling 'SetODataFormatter' on 'HttpConfiguration'."); }
public void GetMetadata_Returns_EdmModelFromSetODataFormatter() { IEdmModel model = new EdmModel(); IEnumerable<ODataMediaTypeFormatter> oDataFormatters = ODataMediaTypeFormatters.Create(model); HttpConfiguration configuration = new HttpConfiguration(); configuration.Formatters.InsertRange(0, oDataFormatters); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = configuration; IEdmModel responseModel = controller.GetMetadata(); Assert.Equal(model, responseModel); }
public void GetMetadata_Returns_EdmModelFromSetODataFormatter() { IEdmModel model = new EdmModel(); ODataMediaTypeFormatter oDataFormatter = new ODataMediaTypeFormatter(model); HttpConfiguration configuration = new HttpConfiguration(); configuration.Formatters.Insert(0, oDataFormatter); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = configuration; IEdmModel responseModel; Assert.True(controller.GetMetadata().TryGetContentValue<IEdmModel>(out responseModel)); Assert.Equal(model, responseModel); }
public void GetMetadata_Returns_EdmModelFromSetODataFormatter() { IEdmModel model = new EdmModel(); ODataMediaTypeFormatter oDataFormatter = new ODataMediaTypeFormatter(model); HttpConfiguration configuration = new HttpConfiguration(); configuration.SetODataFormatter(oDataFormatter); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = configuration; Assert.Equal( model, controller.GetMetadata()); }
public void GetMetadata_Returns_EdmModelFromSetODataFormatter() { IEdmModel model = new EdmModel(); IEnumerable <ODataMediaTypeFormatter> oDataFormatters = ODataMediaTypeFormatters.Create(model); HttpConfiguration configuration = new HttpConfiguration(); configuration.Formatters.InsertRange(0, oDataFormatters); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = configuration; IEdmModel responseModel = controller.GetMetadata(); Assert.Equal(model, responseModel); }
public void GetMetadata_Doesnot_Change_DataServiceVersion() { // Arrange IEdmModel model = new EdmModel(); model.SetDataServiceVersion(new Version(0, 42)); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.ODataProperties().Model = model; // Act IEdmModel controllerModel = controller.GetMetadata(); // Assert Assert.Equal(new Version(0, 42), controllerModel.GetDataServiceVersion()); }
public void GetMetadata_Returns_EdmModelFromSetODataFormatter() { IEdmModel model = new EdmModel(); ODataMediaTypeFormatter oDataFormatter = new ODataMediaTypeFormatter(model); HttpConfiguration configuration = new HttpConfiguration(); configuration.Formatters.Insert(0, oDataFormatter); ODataMetadataController controller = new ODataMetadataController(); controller.Request = new HttpRequestMessage(); controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = configuration; IEdmModel responseModel; Assert.True(controller.GetMetadata().TryGetContentValue <IEdmModel>(out responseModel)); Assert.Equal(model, responseModel); }