Example #1
0
        public void Constructs_deployment()
        {
            var mocks            = new MockRepository();
            var clock            = mocks.CreateMock <ISystemClock>();
            var resultCalculator = mocks.CreateMock <IDeploymentResultCalculator>();

            using (mocks.Record())
            {
                Expect.Call(clock.GetCurrentDateTime()).Return(new DateTime(2007, 4, 15));
            }

            using (mocks.Playback())
            {
                IDeploymentFactory factory    = new DeploymentFactory(clock, resultCalculator);
                Deployment         deployment = factory.CreateDeployment("A1", "E1", "jsmith", "Output...", "1.0", true);

                Assert.That(deployment.Application, Is.EqualTo("A1"));
                Assert.That(deployment.Environment, Is.EqualTo("E1"));
                Assert.That(deployment.DeployedBy, Is.EqualTo("jsmith"));
                Assert.That(deployment.DeployedOn, Is.EqualTo(new DateTime(2007, 4, 15)));
                Assert.That(deployment.Version, Is.EqualTo("1.0"));
                Assert.That(deployment.Output.Output, Is.EqualTo("Output..."));
                Assert.That(deployment.Result, Is.SameAs(DeploymentResult.Failure));
                Assert.That(deployment.Output.Deployment, Is.SameAs(deployment));
            }

            mocks.VerifyAll();
        }
Example #2
0
 public DeployPackageHandler(
     SheepItDbContext dbContext,
     DeploymentFactory deploymentFactory,
     RunDeployment runDeployment)
 {
     _dbContext         = dbContext;
     _deploymentFactory = deploymentFactory;
     _runDeployment     = runDeployment;
 }
        public void TestRollbarDeploysManager()
        {
            var initialDeployments = this.GetAllDeployments();

            var deployment = DeploymentFactory.CreateDeployment(
                environment: RollbarUnitTestSettings.Environment,
                revision: "99909a3a5a3dd4363f414161f340b582bb2e4161",
                comment: "Some new unit test deployment @ " + DateTimeOffset.Now,
                localUserName: "******",
                rollbarUserName: "******"
                );

            var task = this._deploysManager.RegisterAsync(deployment);

            task.Wait(TimeSpan.FromSeconds(3));
            Assert.IsNull(task.Exception);
            Thread.Sleep(TimeSpan.FromMilliseconds(250));

            var deployments = this.GetAllDeployments();

            Trace.WriteLine($"Initial deployments count : {initialDeployments.Count}");
            Trace.WriteLine($"Deployments count : {deployments.Count}");
            Assert.IsTrue(initialDeployments.Count < deployments.Count);

            var latestDeployment = deployments.FirstOrDefault();

            Assert.IsNotNull(latestDeployment);

            var getDeploymentTask = this._deploysManager.GetDeploymentAsync(latestDeployment.DeployID);

            getDeploymentTask.Wait(TimeSpan.FromSeconds(3));
            Assert.IsNull(getDeploymentTask.Exception);
            var deploymentDetails = getDeploymentTask.Result;

            Assert.IsNotNull(getDeploymentTask);
            Assert.AreEqual(deploymentDetails.Comment, latestDeployment.Comment);
            Assert.AreEqual(deploymentDetails.DeployID, latestDeployment.DeployID);
            Assert.AreEqual(deploymentDetails.EndTime, latestDeployment.EndTime);
            Assert.AreEqual(deploymentDetails.Environment, latestDeployment.Environment);
            Assert.AreEqual(deploymentDetails.LocalUsername, latestDeployment.LocalUsername);
            Assert.AreEqual(deploymentDetails.ProjectID, latestDeployment.ProjectID);
            Assert.AreEqual(deploymentDetails.Revision, latestDeployment.Revision);
            Assert.AreEqual(deploymentDetails.RollbarUsername, latestDeployment.RollbarUsername);
            Assert.AreEqual(deploymentDetails.StartTime, latestDeployment.StartTime);
        }
Example #4
0
        public void TestPostDeployment()
        {
            using var httpClient = new HttpClient();
            RollbarDeployClient rollbarClient = new RollbarDeployClient(this._loggerConfig, httpClient);

            var deployment = DeploymentFactory.CreateDeployment(
                environment: this._loggerConfig.RollbarDestinationOptions.Environment,
                revision: "99909a3a5a3dd4363f414161f340b582bb2e4161",
                comment: "Some new unit test deployment",
                localUserName: "******",
                rollbarUserName: "******",
                writeAccessToken: RollbarUnitTestSettings.DeploymentsWriteAccessToken
                );
            var task = rollbarClient.PostAsync(deployment);

            task.Wait(TimeSpan.FromSeconds(3));
            Assert.IsNull(task.Exception);
        }