Пример #1
0
        public void Discover_SingleAgentNotAvailable_ThrowsException()
        {
            // arrange
            var agentUri          = new Uri("net.tcp://someuri:53714/");
            var connectionManager = new AgentConnectionManager();

            // act
            IDeploymentAgent agent = connectionManager.Discover(agentUri);
        }
        public void GetService_AgentIsAlive_ReturnsDeploymentService()
        {
            // arrange
            var connectionManager  = new AgentConnectionManager();
            IDeploymentAgent agent = connectionManager.Discover(new Uri(AgentConfiguration.AgentUrl));

            // act
            var target = agent.GetService <IDeploymentService>();

            // assert
            Assert.That(target, Is.Not.Null);
        }
Пример #3
0
        public void Discover_SingleAgent_ReturnsAgent()
        {
            // arrange
            var agentUri          = new Uri(AgentConfiguration.AgentUrl);
            var connectionManager = new AgentConnectionManager();

            // act
            IDeploymentAgent agent = connectionManager.Discover(agentUri);

            // assert
            Assert.That(agent.IsAlive(), Is.True);
            Assert.That(agent.Uri, Is.EqualTo(agentUri));
            Assert.That(agent.MachineName, Is.EqualTo(Environment.MachineName));
            Assert.That(agent.Version, Is.EqualTo(typeof(Program).Assembly.GetName().Version));
        }
Пример #4
0
        public CoinMasterForm()
        {
            InitializeComponent();
            buttonEditNodeProfile_Click(null, EventArgs.Empty);
            ReadNodeProfiles();

            //Create pop-up
            notifier        = new Tulpep.NotificationWindow.PopupNotifier();
            notifier.Delay  = 10000;
            notifier.Click += (sender, eventArgs) =>
            {
                Visible = true;
                BringToFront();
            };

            //Create workers
            cryptoIdWorker              = new CryptoIdWorker(60000, new NodeEndpointName("Stratis", "StratisTest"));
            cryptoIdWorker.StateChange += DashboardWorkerStateChanged;
            cryptoIdWorker.DataUpdate  += (source, args) => Invoke(new Action <object, CryptoIdDataUpdateEventArgs>(CryptoIdUpdated), source, args);
            _workers.Add(cryptoIdWorker);

            //Start all workers
            foreach (BaseWorker worker in _workers)
            {
                worker.Start();
            }


            ClientConfigReader reader = new ClientConfigReader();

            clientConfig = reader.ReadConfig();
            List <String> agentList = clientConfig.GetAgentList();

            this.managedNodes = new NodeNetwork();
            foreach (string fullNodeName in clientConfig.NodeItems.Keys)
            {
                BlockchainNode blockchainNode = new BlockchainNode(clientConfig.NodeItems[fullNodeName]);
                this.managedNodes.Nodes.Add(fullNodeName, blockchainNode);
            }

            clientConnectionManager = new AgentConnectionManager(managedNodes);

            clientConnectionManager.Session.AgentHealthcheckStatsUpdated += (agentConnection, state, message) => Invoke(new Action <AgentConnection, AgentHealthState, String>(AgentDataTableUpdated), agentConnection, state, message);
            clientConnectionManager.Session.NodesUpdated             += (agentConnection, updatedNodes) => Invoke(new Action <AgentConnection, NodeNetwork>(NodeDataUpdated), agentConnection, updatedNodes);
            clientConnectionManager.Session.AgentRegistrationUpdated += (agentConnection, agentRegistration) => Invoke(new Action <AgentConnection, AgentRegistration>(AgentRegistrationUpdated), agentConnection, agentRegistration);

            clientConnectionManager.ConnectToAgents(agentList);
        }
Пример #5
0
        public void Discover_AllAgents_ReturnsListWithAgent()
        {
            // arrange
            var connectionManager = new AgentConnectionManager();

            // act
            IEnumerable <IDeploymentAgent> discoveredAgents = connectionManager.Discover();

            // assert
            IDeploymentAgent agent = discoveredAgents.FirstOrDefault();

            Assert.That(agent, Is.Not.Null);
            Assert.That(agent.IsAlive(), Is.True);
            Assert.That(agent.Uri, Is.EqualTo(new Uri(AgentConfiguration.AgentUrl)));
            Assert.That(agent.MachineName, Is.EqualTo(Environment.MachineName));
            Assert.That(agent.Version, Is.EqualTo(typeof(Program).Assembly.GetName().Version));
        }
        public void Deploy_SimpleWorkflow_ExecutesWorkflow()
        {
            // arrange
            string expectedFileName = Path.Combine("SimpleWorkflowTest", "TestFile.txt");
            string template         = this.LoadTemplate("OpenDeploymentManager.Agent.IntegrationTests.Workflows.SimpleWorkflow.xaml");

            var connectionManager  = new AgentConnectionManager();
            IDeploymentAgent agent = connectionManager.Discover(new Uri(AgentConfiguration.AgentUrl));
            var target             = agent.GetService <IDeploymentService>();

            // act
            var arguments = new[] { new KeyValue <object> {
                                        Key = "FileName", Value = expectedFileName
                                    } };

            target.Deploy(Guid.NewGuid(), Guid.NewGuid(), template, arguments, new KeyValue <string> [0]);

            // assert
            Assert.That(File.Exists(expectedFileName), Is.True);
        }