public void DeflateFrameData()
        {
            var handshaker = new DeflateFrameClientExtensionHandshaker(false);

            WebSocketExtensionData data = handshaker.NewRequestData();

            Assert.Equal(DeflateFrameExtension, data.Name);
            Assert.Empty(data.Parameters);
        }
        public void NormalHandshake()
        {
            var handshaker = new DeflateFrameClientExtensionHandshaker(false);

            IWebSocketClientExtension extension = handshaker.HandshakeExtension(
                new WebSocketExtensionData(DeflateFrameExtension, new Dictionary <string, string>()));

            Assert.NotNull(extension);
            Assert.Equal(WebSocketRsv.Rsv1, extension.Rsv);
            Assert.IsType <PerFrameDeflateDecoder>(extension.NewExtensionDecoder());
            Assert.IsType <PerFrameDeflateEncoder>(extension.NewExtensionEncoder());
        }
        public void FailedHandshake()
        {
            var handshaker = new DeflateFrameClientExtensionHandshaker(false);

            var parameters = new Dictionary <string, string>
            {
                { "invalid", "12" }
            };
            IWebSocketClientExtension extension = handshaker.HandshakeExtension(
                new WebSocketExtensionData(DeflateFrameExtension, parameters));

            Assert.Null(extension);
        }