public async Task WriteObject_EmptyBuffer_ObjectParallel() { // arrange var socketClient = new SocketClientStub() { IsClosed = false }; await using var writer = new SynchronizedMessageWriter(socketClient); // act List <Task> tasks = new(); for (var i = 0; i < 10; i++) { tasks.Add(Task.Run(async() => { for (var m = 0; m < 100; m++) { await writer.CommitAsync(x => { x.WriteStartObject(); x.WriteEndObject(); }, CancellationToken.None); } })); } await Task.WhenAll(tasks); // assert Assert.Equal(1000, socketClient.SentMessages.Count); foreach (var message in socketClient.SentMessages) { Assert.Equal("{}", message); } }
public async Task WriteObject_EmptyBuffer_Object() { // arrange var socketClient = new SocketClientStub() { IsClosed = false }; await using var writer = new SynchronizedMessageWriter(socketClient); // act await writer.CommitAsync(x => { x.WriteStartObject(); x.WriteEndObject(); }, CancellationToken.None); // assert var elm = Assert.Single(socketClient.SentMessages); Assert.Equal("{}", elm); }