Example #1
0
        /// <summary>
        /// Prevents a default instance of the <see cref="ODataWriterWrapper"/> class from being created.
        /// </summary>
        /// <param name="odataWriter">The odata writer.</param>
        /// <param name="requestPipeline">The request pipeline configuration.</param>
        private ODataWriterWrapper(ODataWriter odataWriter, DataServiceClientRequestPipelineConfiguration requestPipeline)
        {
            Debug.Assert(odataWriter != null, "odataWriter != null");
            Debug.Assert(requestPipeline != null, "DataServiceClientRequestPipelineConfiguration != null");

            this.odataWriter     = odataWriter;
            this.requestPipeline = requestPipeline;
        }
        public void AllPublicConfigurationMethodsShouldThrowOnNullInput()
        {
            var pipeline = new DataServiceClientRequestPipelineConfiguration();

            foreach (var publicMethodWithConfigurationArg in pipeline.GetType().GetMethods().Where(mi => mi.ReturnType == typeof(DataServiceClientRequestPipelineConfiguration)))
            {
                MethodInfo methodUnderTest = publicMethodWithConfigurationArg;
                var        parameter       = publicMethodWithConfigurationArg.GetParameters()[0];
                Action     test            = () => methodUnderTest.Invoke(pipeline, BindingFlags.Instance | BindingFlags.Public, null, new object[] { null }, CultureInfo.InvariantCulture);
                var        fluentException = test.ShouldThrow <TargetInvocationException>().WithInnerException <ArgumentNullException>();
                fluentException.And.As <TargetInvocationException>().InnerException.As <ArgumentNullException>().ParamName.Should().Be(parameter.Name);
            }
        }
Example #3
0
 /// <summary>
 /// Creates the odata entry writer for testing purposes only
 /// </summary>
 /// <param name="writer">The odata writer.</param>
 /// <param name="requestPipeline">The request pipeline configuration.</param>
 /// <returns>The odata Writer Wrapper</returns>
 internal static ODataWriterWrapper CreateForEntryTest(ODataWriter writer, DataServiceClientRequestPipelineConfiguration requestPipeline)
 {
     return(new ODataWriterWrapper(writer, requestPipeline));
 }
Example #4
0
 /// <summary>
 /// Creates the odata entry writer.
 /// </summary>
 /// <remarks>We never create a feed writer as the client doesn't support deep insert, if we did this would need to change</remarks>
 /// <param name="messageWriter">The message writer.</param>
 /// <param name="requestPipeline">The request pipeline configuration.</param>
 /// <returns>The odata Writer Wrapper</returns>
 internal static ODataWriterWrapper CreateForEntry(ODataMessageWriter messageWriter, DataServiceClientRequestPipelineConfiguration requestPipeline)
 {
     return(new ODataWriterWrapper(messageWriter.CreateODataResourceWriter(), requestPipeline));
 }
Example #5
0
        private void AttachEvents()
        {
            DataServiceClientRequestPipelineConfiguration configuration1 = this._context.get_Configurations().get_RequestPipeline();

            configuration1.set_OnMessageCreating((Func <DataServiceClientRequestMessageArgs, DataServiceClientRequestMessage>)Delegate.Combine(configuration1.get_OnMessageCreating(), new Func <DataServiceClientRequestMessageArgs, DataServiceClientRequestMessage>(this.ShimWebRequests)));
        }