示例#1
0
        public void EscapeValues()
        {
            var versionBuilder = new AzurePipelines(environment, log);
            var vsVersion      = versionBuilder.GenerateSetParameterMessage("Foo", "0.8.0-unstable568 Branch:'develop' Sha:'ee69bff1087ebc95c6b43aa2124bd58f5722e0cb'");

            vsVersion[0].ShouldBe("##vso[task.setvariable variable=GitVersion.Foo;]0.8.0-unstable568 Branch:'develop' Sha:'ee69bff1087ebc95c6b43aa2124bd58f5722e0cb'");
        }
示例#2
0
    public void SetEnvironmentVariableForTest()
    {
        var sp = ConfigureServices(services => services.AddSingleton<AzurePipelines>());
        this.environment = sp.GetService<IEnvironment>();
        this.buildServer = sp.GetService<AzurePipelines>();

        this.environment.SetEnvironmentVariable(key, "Some Build_Value $(GitVersion_FullSemVer) 20151310.3 $(UnknownVar) Release");
    }
示例#3
0
        public void DevelopBranch()
        {
            var versionBuilder = new AzurePipelines(environment, log);
            var vars           = new TestableVersionVariables(fullSemVer: "0.0.0-Unstable4");
            var vsVersion      = versionBuilder.GenerateSetVersionMessage(vars);

            vsVersion.ShouldBe("##vso[build.updatebuildnumber]Some Build_Value 0.0.0-Unstable4 20151310.3 $(UnknownVar) Release");
        }
示例#4
0
        public void Execute(string targetNumber, ISettings settings)
        {
            targetNumber = VariablesEngine.Expand(targetNumber, settings);
            Write("build number is ");
            WriteLine(targetNumber, T.HeadingTextColor);

            AzurePipelines.UpdateBuildNumber(targetNumber);
            ProcessUtils.ExecAndGetOutput("appveyor", $"UpdateBuild -Version {targetNumber}");
        }
示例#5
0
        public void Execute(string commaSeparatedVariables, ISettings settings)
        {
            foreach (string rawName in commaSeparatedVariables.Split(',', StringSplitOptions.RemoveEmptyEntries))
            {
                string name  = rawName.Trim();
                string var   = $"{ExpressionParser.Delimiter}{name}{ExpressionParser.Delimiter}";
                string value = VariablesEngine.Expand(var, settings);

                AzurePipelines.SetVariable(name, value);
            }
        }
        public void Service_Should_Be_Set_To_AzurePipelines()
        {
            // Given
            var pipelines = new AzurePipelines();

            // When
            var service = pipelines.Service;

            // Then
            service.Should().Be("azure_pipelines");
        }
        public void GenerateSetStatusSucceededWithIssuesMessageShouldReturnCorrectValue()
        {
            // Setup
            var environment    = new TestEnvironment();
            var log            = new Mock <ILog>().Object;
            var azurePipelines = new AzurePipelines(environment, log);

            // Act & Assert
            azurePipelines.GenerateSetStatusSucceededWithIssuesMessage("status message")
            .ShouldBe("##vso[task.complete type=SucceededWithIssues;] status message");
        }
        public void Service_Should_Be_Set_To_AzurePipelines()
        {
            // Given
            var pipelines = new AzurePipelines(new Mock <IEnviornmentVariables>().Object);

            // When
            var service = pipelines.Service;

            // Then
            service.Should().Be("azure_pipelines");
        }
        public void GenerateSetProgressMessageShouldReturnCorrectValue()
        {
            // Setup
            var environment    = new TestEnvironment();
            var log            = new Mock <ILog>().Object;
            var azurePipelines = new AzurePipelines(environment, log);

            // Act & Assert
            azurePipelines.GenerateSetProgressMessage(5, 10, "progress")
            .ShouldBe($"##vso[task.setprogress value={50};] progress");
        }
示例#10
0
        public void GenerateLogIssueWarningMessageShouldReturnCorrectValue()
        {
            // Setup
            var environment    = new TestEnvironment();
            var log            = new Mock <ILog>().Object;
            var azurePipelines = new AzurePipelines(environment, log);

            // Act & Assert
            azurePipelines.GenerateLogIssueWarningMessage("warning")
            .ShouldBe("##vso[task.logissue type=warning;] warning");
        }
示例#11
0
        public void MissingEnvShouldNotBlowUp()
        {
            environment.SetEnvironmentVariable(key, null);

            var versionBuilder = new AzurePipelines(environment, log);
            var semver         = "0.0.0-Unstable4";
            var vars           = new TestableVersionVariables(fullSemVer: semver);
            var vsVersion      = versionBuilder.GenerateSetVersionMessage(vars);

            vsVersion.ShouldBe(semver);
        }
示例#12
0
        public void Build_Should_Be_Set_When_Enviornment_Variable_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("BUILD_BUILDID", "123");
            var pipelines = new AzurePipelines();

            // When
            var build = pipelines.Build;

            // Then
            build.Should().Be("123");
        }
示例#13
0
        public void Build_Should_Be_Empty_String_When_Enviornment_Variable_Does_Not_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("BUILD_BUILDID", null);
            var pipelines = new AzurePipelines();

            // When
            var build = pipelines.Build;

            // Then
            build.Should().BeEmpty();
        }
示例#14
0
        public void Branch_Should_Be_Set_When_Enviornment_Variable_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("BUILD_SOURCEBRANCHNAME", "develop");
            var pipelines = new AzurePipelines();

            // When
            var branch = pipelines.Branch;

            // Then
            branch.Should().Be("develop");
        }
示例#15
0
        public void Slug_Should_Be_Set_When_Enviornment_Variable_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("BUILD_REPOSITORY_NAME", "foo/bar");
            var pipelines = new AzurePipelines();

            // When
            var slug = pipelines.Slug;

            // Then
            slug.Should().Be("foo/bar");
        }
示例#16
0
        public void Slug_Should_Be_Empty_String_When_Enviornment_Variable_Does_Not_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("BUILD_REPOSITORY_NAME", null);
            var pipelines = new AzurePipelines();

            // When
            var slug = pipelines.Slug;

            // Then
            slug.Should().BeEmpty();
        }
示例#17
0
        public void CanApplyToCurrentContextShouldReturnFalseWhenVariableIsNullOrEmpty(string variableValue)
        {
            // Setup
            var environment    = new TestEnvironment();
            var log            = new Mock <ILog>().Object;
            var azurePipelines = new AzurePipelines(environment, log);

            environment.SetEnvironmentVariable("TF_BUILD", variableValue);

            // Act & Assert
            azurePipelines.CanApplyToCurrentContext().ShouldBe(false);
        }
示例#18
0
        public void Detecter_Should_Be_False_When_TfBuild_Enviornment_Variable_Does_Not_Exit(string pipelinesData)
        {
            // Given
            Environment.SetEnvironmentVariable("TF_BUILD", pipelinesData);
            var pipelines = new AzurePipelines();

            // When
            var detecter = pipelines.Detecter;

            // Then
            detecter.Should().BeFalse();
        }
示例#19
0
        public void Project_Should_Be_Set_When_Enviornment_Variable_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("SYSTEM_TEAMPROJECT", "123");
            var pipelines = new AzurePipelines();

            // When
            var project = pipelines.Project;

            // Then
            project.Should().Be("123");
        }
示例#20
0
        public void Branch_Should_Be_Empty_String_When_Enviornment_Variable_Does_Not_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("BUILD_SOURCEBRANCHNAME", null);
            var pipelines = new AzurePipelines();

            // When
            var branch = pipelines.Branch;

            // Then
            branch.Should().BeEmpty();
        }
示例#21
0
        public void ServerUri_Should_Be_Empty_String_When_Enviornment_Variable_Does_Not_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("SYSTEM_TEAMFOUNDATIONSERVERURI", null);
            var pipelines = new AzurePipelines();

            // When
            var serverUri = pipelines.ServerUri;

            // Then
            serverUri.Should().BeEmpty();
        }
示例#22
0
        public void CanApplyToCurrentContextShouldReturnTrueWhenVariableIsSet()
        {
            // Setup
            var environment    = new TestEnvironment();
            var log            = new Mock <ILog>().Object;
            var azurePipelines = new AzurePipelines(environment, log);

            environment.SetEnvironmentVariable("TF_BUILD", "True");

            // Act & Assert
            azurePipelines.CanApplyToCurrentContext().ShouldBe(true);
        }
示例#23
0
        public void Commit_Should_Be_Empty_String_When_Enviornment_Variable_Does_Not_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("BUILD_SOURCEVERSION", null);
            var pipelines = new AzurePipelines();

            // When
            var commit = pipelines.Commit;

            // Then
            commit.Should().BeEmpty();
        }
示例#24
0
        public void Commit_Should_Be_Set_When_Enviornment_Variable_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("BUILD_SOURCEVERSION", "123");
            var pipelines = new AzurePipelines();

            // When
            var commit = pipelines.Commit;

            // Then
            commit.Should().Be("123");
        }
示例#25
0
        public void Pr_Should_Be_Empty_String_When_Enviornment_Variable_Does_Not_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("SYSTEM_PULLREQUEST_PULLREQUESTNUMBER", null);
            var pipelines = new AzurePipelines();

            // When
            var pr = pipelines.Pr;

            // Then
            pr.Should().BeEmpty();
        }
示例#26
0
        public void Pr_Should_Be_Set_When_Enviornment_Variable_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("SYSTEM_PULLREQUEST_PULLREQUESTNUMBER", "123");
            var pipelines = new AzurePipelines();

            // When
            var pr = pipelines.Pr;

            // Then
            pr.Should().Be("123");
        }
示例#27
0
        public void ServerUri_Should_Be_Set_When_Enviornment_Variable_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("SYSTEM_TEAMFOUNDATIONSERVERURI", "123");
            var pipelines = new AzurePipelines();

            // When
            var serverUri = pipelines.ServerUri;

            // Then
            serverUri.Should().Be("123");
        }
示例#28
0
        public void Project_Should_Be_Empty_String_When_Enviornment_Variable_Does_Not_Exits()
        {
            // Given
            Environment.SetEnvironmentVariable("SYSTEM_TEAMPROJECT", null);
            var pipelines = new AzurePipelines();

            // When
            var project = pipelines.Project;

            // Then
            project.Should().BeEmpty();
        }
示例#29
0
        public void Job_Should_Not_Be_Empty_String_When_Enviornment_Variables_Exit()
        {
            // Given
            Environment.SetEnvironmentVariable("BUILD_REPOSITORY_NAME", "foo/bar");
            Environment.SetEnvironmentVariable("BUILD_BUILDNUMBER", "bang");
            var pipelines = new AzurePipelines();

            // When
            var job = pipelines.Job;

            // Then
            job.Should().Be("foo/bar/bang");
        }
示例#30
0
        public void Branch_Should_Prefer_Pull_Request()
        {
            // Given
            Environment.SetEnvironmentVariable("SYSTEM_PULLREQUEST_TARGETBRANCH", "pr");
            Environment.SetEnvironmentVariable("BUILD_SOURCEBRANCHNAME", "master");
            var pipelines = new AzurePipelines();

            // When
            var branch = pipelines.Branch;

            // Then
            branch.Should().Be("pr");
        }