public async Task WriteBatchRequestAsync_ThrowsExceptionForSynchronousOutputContext() { var jsonLightOutputContext = CreateJsonLightOutputContext(/*writingRequest*/ true, /*asynchronous*/ false); var jsonLightBatchWriter = new ODataJsonLightBatchWriter(jsonLightOutputContext); // Try to asynchronously start writing batch with an output context intended for synchronous writing var exception = await Assert.ThrowsAsync <ODataException>( () => jsonLightBatchWriter.WriteStartBatchAsync()); Assert.Equal(Strings.ODataBatchWriter_AsyncCallOnSyncWriter, exception.Message); }
/// <summary> /// Sets up an ODataJsonLightBatchWriter, /// then runs the given test code asynchronously, /// then flushes and reads the stream back as a string for customized verification. /// </summary> private async Task <string> SetupJsonLightBatchWriterAndRunTestAsync( Func <ODataJsonLightBatchWriter, Task> func, bool writingRequest = true) { var jsonLightOutputContext = CreateJsonLightOutputContext(writingRequest, /*asynchronous*/ true); var jsonLightBatchWriter = new ODataJsonLightBatchWriter(jsonLightOutputContext); await func(jsonLightBatchWriter); this.stream.Position = 0; return(await new StreamReader(this.stream).ReadToEndAsync()); }