예제 #1
0
        public void ShouldCreateNewMachine()
        {
            environments.Items.Add(new EnvironmentResource {
                Id = "environments-1", Name = "UAT", Links = LinkCollection.Self("/api/environments/environments-1").Add("Machines", "/api/environments/environments-1/machines")
            });
            environments.Items.Add(new EnvironmentResource {
                Id = "environments-2", Name = "Production", Links = LinkCollection.Self("/api/environments/environments-2").Add("Machines", "/api/environments/environments-2/machines")
            });

            operation.TentacleThumbprint = "ABCDEF";
            operation.TentaclePort       = 10930;
            operation.MachineName        = "Mymachine";
            operation.TentacleHostname   = "Mymachine.test.com";
            operation.CommunicationStyle = CommunicationStyle.TentaclePassive;
            operation.EnvironmentNames   = new[] { "Production" };

            operation.Execute(serverEndpoint);

            client.Received().Create("/api/machines", Arg.Is <MachineResource>(m =>
                                                                               m.Name == "Mymachine" &&
                                                                               ((ListeningTentacleEndpointResource)m.Endpoint).Uri == "https://mymachine.test.com:10930/" &&
                                                                               m.EnvironmentIds.First() == "environments-2"));
        }