public void TestInvoked_Ok() { using (var logger = new InProcMessagePackStreamLogger()) { ServerTransportTest.TestFiltersCore( null, null, (request, response) => { var entry = logger.Entries.Single(); Assert.That(entry.Stream, Is.EqualTo(request)); }, new ServerStreamLoggingMessageFilterProvider(logger) ); } }
public void TestApplied() { using (var logger = new InProcMessagePackStreamLogger()) { ServerTransportTest.TestFiltersCore( null, transport => { Assert.That(transport.BeforeDeserializationFilters.Count, Is.EqualTo(1)); var filter = transport.BeforeDeserializationFilters[0] as ServerStreamLoggingMessageFilter; Assert.That(filter, Is.Not.Null); Assert.That(transport.AfterSerializationFilters, Is.Empty); }, null, new ServerStreamLoggingMessageFilterProvider(logger) ); } }
public void TestApplied() { long quota = Math.Abs(Environment.TickCount); ServerTransportTest.TestFiltersCore( null, transport => { Assert.That(transport.BeforeDeserializationFilters.Count, Is.EqualTo(1)); var filter = transport.BeforeDeserializationFilters[0] as ServerQuotaMessageFilter; Assert.That(filter, Is.Not.Null); Assert.That(filter.Quota, Is.EqualTo(quota)); Assert.That(transport.AfterSerializationFilters, Is.Empty); }, null, new ServerQuotaMessageFilterProvider(quota) ); }
public void TestIsGreatorThanQuota_MessagetooLongError() { long quota = 16; ServerTransportTest.TestFiltersCore( (argumentPacker, currentLength) => { var remaining = quota - currentLength - 2; // header(FixArray) + header(FixRaw) = 2 byte argumentPacker.PackArrayHeader(1); argumentPacker.PackRaw(new byte[remaining + 1]); }, null, (request, response) => { // Error occurred. var responseMessage = Unpacking.UnpackArray(response).Value; Assert.That(responseMessage[2] == RpcError.MessageTooLargeError.Identifier, "{0}:{1}", responseMessage[2], responseMessage[3]); }, new ServerQuotaMessageFilterProvider(quota) ); }
public void TestIsEqualToQuota_Ok() { long quota = 16; ServerTransportTest.TestFiltersCore( (argumentPacker, currentLength) => { var remaining = quota - currentLength - 2; // header(FixArray) + header(FixRaw) = 2 byte argumentPacker.PackArrayHeader(1); argumentPacker.PackRaw(new byte[remaining]); }, null, (request, response) => { // No error occurred. var responseMessage = Unpacking.UnpackArray(response).Value; Assert.That(responseMessage[2].IsNil, "{0}:{1}", responseMessage[2], responseMessage[3]); }, new ServerQuotaMessageFilterProvider(quota) ); }