Exemple #1
0
        public void ComparerTest_Glob_MoreRecentImageVsCurrentImage()
        {
            // setup
            var x = new DeploymentWorkflowService(
                GetLogger <DeploymentWorkflowService>(),
                MockOf <IContainerImageMetadataService>(),
                MockOf <IApplicationService>(),
                Mock.Of <IApplicationImageInstanceService>(),
                MockOf <IDeploymentService>(),
                MockOf <IDeploymentQueueService>(),
                Mock.Of <IGitHubClient>()

                );

            var currentImage   = new ContainerImage("testapp", "develop-123", DateTimeOffset.Now.AddDays(-1));
            var expectedResult = new ContainerImage("testapp", "develop-256", DateTimeOffset.Now);

            var imagePolicy = new GlobImageUpdatePolicy("develop-*");

            var comparer = x.GetContainerImageComparer(imagePolicy);

            // test
            var compare = comparer.Compare(currentImage, expectedResult);

            // verify
            compare.Should().BeLessThan(0);
        }
Exemple #2
0
        public void GetLatestTagMatchingPolicy_PositiveTest()
        {
            // setup
            var x = new DeploymentWorkflowService(
                GetLogger <DeploymentWorkflowService>(),
                MockOf <IContainerImageMetadataService>(),
                MockOf <IApplicationService>(),
                Mock.Of <IApplicationImageInstanceService>(),
                MockOf <IDeploymentService>(),
                MockOf <IDeploymentQueueService>(),
                Mock.Of <IGitHubClient>()
                );

            var imagePolicy = new GlobImageUpdatePolicy("develop-*");

            var expectedResult = new ContainerImage("testapp", "develop-256", DateTimeOffset.Now);
            var images         = new[]
            {
                new ContainerImage("testapp", "master-123", DateTimeOffset.Now),
                new ContainerImage("testapp", "develop-123", DateTimeOffset.Now.AddDays(-1)),
                expectedResult,
            };

            // test
            var actualResult = x.GetLatestTagMatchingPolicy(images, imagePolicy);

            // verify
            actualResult.Should().BeEquivalentTo(expectedResult);
        }
Exemple #3
0
        public void GetLatestTagMatchingPolicy_EmptyImageList()
        {
            // setup
            var x = new DeploymentWorkflowService(
                GetLogger <DeploymentWorkflowService>(),
                MockOf <IContainerImageMetadataService>(),
                MockOf <IApplicationService>(),
                Mock.Of <IApplicationImageInstanceService>(),
                MockOf <IDeploymentService>(),
                MockOf <IDeploymentQueueService>(),
                Mock.Of <IGitHubClient>()

                );

            var imagePolicy = new GlobImageUpdatePolicy("develop-*");

            // test
            Action func = () => x.GetLatestTagMatchingPolicy(new ContainerImage[] { }, imagePolicy);

            // verify
            func.Should().Throw <InvalidOperationException>();
        }