Beispiel #1
0
        public async Task ReverseConnect(string securityPolicy)
        {
            // ensure endpoints are available
            await RequireEndpoints().ConfigureAwait(false);

            // get a connection
            var config = ClientFixture.Config;
            ITransportWaitingConnection connection;

            using (var cancellationTokenSource = new CancellationTokenSource(MaxTimeout))
            {
                connection = await ClientFixture.ReverseConnectManager.WaitForConnection(
                    m_endpointUrl, null, cancellationTokenSource.Token).ConfigureAwait(false);

                Assert.NotNull(connection, "Failed to get connection.");
            }

            // select the secure endpoint
            var endpointConfiguration = EndpointConfiguration.Create(config);
            var selectedEndpoint      = ClientFixture.SelectEndpoint(config, Endpoints, m_endpointUrl, securityPolicy);

            Assert.NotNull(selectedEndpoint);
            var endpoint = new ConfiguredEndpoint(null, selectedEndpoint, endpointConfiguration);

            Assert.NotNull(endpoint);

            // connect
            var session = await Session.Create(config, connection, endpoint, false, false, "Reverse Connect Client",
                                               MaxTimeout, new UserIdentity(new AnonymousIdentityToken()), null).ConfigureAwait(false);

            Assert.NotNull(session);

            // default request header
            var requestHeader = new RequestHeader();

            requestHeader.Timestamp   = DateTime.UtcNow;
            requestHeader.TimeoutHint = MaxTimeout;

            // Browse
            var clientTestServices    = new ClientTestServices(session);
            var referenceDescriptions = CommonTestWorkers.BrowseFullAddressSpaceWorker(clientTestServices, requestHeader);

            Assert.NotNull(referenceDescriptions);

            // close session
            var result = session.Close();

            Assert.NotNull(result);
            session.Dispose();
        }
Beispiel #2
0
        public async Task ReverseConnect2(bool updateBeforeConnect, bool checkDomain)
        {
            string securityPolicy = SecurityPolicies.Basic256Sha256;

            // ensure endpoints are available
            await RequireEndpoints().ConfigureAwait(false);

            // get a connection
            var config = ClientFixture.Config;

            // select the secure endpoint
            var endpointConfiguration = EndpointConfiguration.Create(config);
            var selectedEndpoint      = ClientFixture.SelectEndpoint(config, Endpoints, m_endpointUrl, securityPolicy);

            Assert.NotNull(selectedEndpoint);
            var endpoint = new ConfiguredEndpoint(null, selectedEndpoint, endpointConfiguration);

            Assert.NotNull(endpoint);

            // connect
            var session = await Session.Create(config, ClientFixture.ReverseConnectManager, endpoint, updateBeforeConnect, checkDomain, "Reverse Connect Client",
                                               MaxTimeout, new UserIdentity(new AnonymousIdentityToken()), null).ConfigureAwait(false);

            Assert.NotNull(session);

            // header
            var requestHeader = new RequestHeader();

            requestHeader.Timestamp   = DateTime.UtcNow;
            requestHeader.TimeoutHint = MaxTimeout;

            // Browse
            var clientTestServices    = new ClientTestServices(session);
            var referenceDescriptions = CommonTestWorkers.BrowseFullAddressSpaceWorker(clientTestServices, requestHeader);

            Assert.NotNull(referenceDescriptions);

            // close session
            var result = session.Close();

            Assert.NotNull(result);
            session.Dispose();
        }