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); }
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>(); }