예제 #1
0
        public void ShouldBeAbleToUseGeneratedClient()
        {
            BamServer server;
            SecureServiceProxyClient <EncryptedEcho> sspc;

            ServiceProxyTestHelpers.StartSecureChannelTestServerGetEncryptedEchoClient(out server, out sspc);
            ConsoleLogger logger         = GetTestConsoleLogger();
            ProxyFactory  serviceFactory = new ProxyFactory(".\\workspace_".RandomLetters(4), logger);

            try
            {
                IResponder responder     = null;
                int        responseCount = 0;
                server.Responded += (srvr, resp, req) =>
                {
                    OutLineFormat("Responded to url: {0}", ConsoleColor.DarkGreen, req.Url.ToString());
                    responder = resp;
                    responseCount++;
                };
                EncryptedEcho echo     = serviceFactory.GetProxy <EncryptedEcho>("localhost", 8080);
                string        value    = "A random string: ".RandomLetters(8);
                string        response = echo.Send(value);
                Expect.IsNotNull(response, "response was null");
                Expect.AreEqual(value, response);
                Expect.IsTrue(responseCount > 0); // download, init session, set key, invoke
                Expect.IsObjectOfType <ServiceProxyResponder>(responder);
            }
            finally
            {
                server.Stop();
            }
        }
        public void CanWriteProxy()
        {
            ProxyFactory  factory = new ProxyFactory();
            EncryptedEcho echo    = factory.GetProxy <EncryptedEcho>();

            Expect.IsNotNull(echo);
        }
예제 #3
0
        public void ShouldBeAbleToInstanciateProxy()
        {
            ProxyFactory  serviceFactory = new ProxyFactory();
            EncryptedEcho echoProvider   = serviceFactory.GetProxy <EncryptedEcho>();
            Type          echoType       = echoProvider.GetType();

            Expect.IsTrue(echoType.Name.Contains("Proxy"), "Expected 'Proxy' to be in the type name: {0}"._Format(echoType.Name));
        }
예제 #4
0
        public void ShouldBeAbleToSetApiKeyResolver()
        {
            ProxyFactory   serviceFactory = new ProxyFactory(".\\workspace_".RandomLetters(4), Logger);
            EncryptedEcho  echo           = serviceFactory.GetProxy <EncryptedEcho>();
            ApiKeyResolver resolver       = new ApiKeyResolver();

            echo.Property("ApiKeyResolver", resolver);
            ApiKeyResolver got = echo.Property <ApiKeyResolver>("ApiKeyResolver");

            Expect.AreSame(resolver, got);
        }