Exemple #1
0
        public async Task ProjectTemplatesShouldBeCreatedWithNewDefaultValues(string projectName, string variableName, string variableValue)
        {
            var project = new ProjectResource()
            {
                Id = projectName, Name = projectName
            };
            var octoMoq  = new Mock <IOctopusAsyncRepository>();
            var mockProj = this.mockProj(projectName);

            mockProj.Setup(t => t.Modify(It.IsAny <ProjectResource>()))
            .Returns <ProjectResource>(prj =>
            {
                prj.Templates.Count.Should().Be(1);
                prj.Templates.Single().Name.Should().Be(variableName);
                prj.Templates.Single().Label.Should().Be(variableName);
                prj.Templates.Single().HelpText.Should().Be(variableName);
                prj.Templates.Single().DefaultValue.IsSensitive.Should().BeFalse();
                prj.Templates.Single().DefaultValue.Value.Should().Be(variableValue);
                return(Task.FromResult(prj));
            });
            octoMoq.Setup(o => o.Projects).Returns(mockProj.Object);

            var args = new ProjectArgsBase()
            {
                ProjectName = projectName
            };
            var sut = new ProjectManager(args, octoMoq.Object, Mock.Of <ILogger>());

            await sut.CreateProjectVariables(new List <SecretVariable>() { new SecretVariable(variableName, variableValue) }, true).ConfigureAwait(false);
        }
Exemple #2
0
        public void MissingProjectThrows(string projectName, [Frozen] Mock <IOctopusAsyncRepository> octoMoq)
        {
            octoMoq.Setup(o => o.Projects).Returns(Mock.Of <IProjectRepository>());
            var args = new ProjectArgsBase()
            {
                ProjectName = projectName
            };
            var sut = new ProjectManager(args, octoMoq.Object, Mock.Of <ILogger>());

            Func <Task> test = () => sut.CreateProjectVariables(new List <SecretVariable>());

            test.Should().Throw <ArgumentException>().WithMessage($"Unable to find a project with the name '{projectName}'");
        }