public static string CreateNegotiationContent(string connectionId = "00000000-0000-0000-0000-000000000000", TransportType transportTypes = TransportType.All) { var availableTransports = new List <object>(); if ((transportTypes & TransportType.WebSockets) != 0) { availableTransports.Add(new { transport = nameof(TransportType.WebSockets), transferFormats = new[] { nameof(TransferFormat.Text), nameof(TransferFormat.Binary) } }); } if ((transportTypes & TransportType.ServerSentEvents) != 0) { availableTransports.Add(new { transport = nameof(TransportType.ServerSentEvents), transferFormats = new[] { nameof(TransferFormat.Text) } }); } if ((transportTypes & TransportType.LongPolling) != 0) { availableTransports.Add(new { transport = nameof(TransportType.LongPolling), transferFormats = new[] { nameof(TransferFormat.Text), nameof(TransferFormat.Binary) } }); } return(JsonConvert.SerializeObject(new { connectionId, availableTransports })); }
public Task ConnectionCannotBeStartedIfNoCommonTransportsBetweenClientAndServer(TransportType serverTransports) { return(RunInvalidNegotiateResponseTest <InvalidOperationException>(ResponseUtils.CreateNegotiationContent(transportTypes: serverTransports), "Unable to connect to the server with any of the available transports.")); }
public void CannotStartConnectionWithInvalidTransportType(TransportType requestedTransportType) { Assert.Throws <ArgumentOutOfRangeException>( () => new HttpConnection(new Uri("http://fakeuri.org/"), requestedTransportType)); }