Beispiel #1
0
        public void UsingInvalidGitDirectory_ThrowsDirectoryNotFoundException()
        {
            var task = new WriteVersionInfoToBuildLog
            {
                BuildEngine       = new MockBuildEngine(),
                SolutionDirectory = Path.GetTempPath()
            };

            Assert.That(task.InnerExecute, Throws.InstanceOf <DirectoryNotFoundException>());
        }
        public void UsingInvalidGitDirectory_ThrowsDirectoryNotFoundException()
        {
            var task = new WriteVersionInfoToBuildLog
            {
                BuildEngine = new MockBuildEngine(),
                SolutionDirectory = Path.GetTempPath()
            };

            Assert.That(task.InnerExecute, Throws.InstanceOf<DirectoryNotFoundException>());
        }
        public void WriteVersionInfoTaskShouldLogOutputVariablesToBuildOutputInBuildServer()
        {
            var task = new WriteVersionInfoToBuildLog();

            using var result = ExecuteMsBuildTaskInBuildServer(task);

            result.Success.ShouldBe(true);
            result.Errors.ShouldBe(0);
            result.Log.ShouldContain("##vso[task.setvariable variable=GitVersion.FullSemVer]1.0.1+1");
        }
Beispiel #4
0
        public void WriteVersionInfoTaskShouldUpdateBuildNumberInAzurePipeline(string buildNumber, string expected)
        {
            var task = new WriteVersionInfoToBuildLog();

            using var result = ExecuteMsBuildTaskInAzurePipeline(task, buildNumber);

            result.Success.ShouldBe(true);
            result.Errors.ShouldBe(0);
            result.Log.ShouldContain($"##vso[build.updatebuildnumber]{expected}");
        }
Beispiel #5
0
        public void WriteVersionInfoTaskShouldNotUpdateBuildNumberInAzurePipeline(string buildNumber)
        {
            var task    = new WriteVersionInfoToBuildLog();
            var content = @"update-build-number: false";

            using var result = ExecuteMsBuildTaskInAzurePipeline(task, buildNumber: buildNumber, configurationText: content);

            result.Success.ShouldBe(true);
            result.Errors.ShouldBe(0);
            result.Log.ShouldNotContain($"##vso[build.updatebuildnumber]");
        }
Beispiel #6
0
        public void WriteVersionInfoTaskShouldLogOutputVariablesToBuildOutputInGitHubActions()
        {
            var task = new WriteVersionInfoToBuildLog();

            using var result = ExecuteMsBuildTaskInGitHubActions(task, GitHubEnvFilePath);

            result.Success.ShouldBe(true);
            result.Errors.ShouldBe(0);
            string content = System.IO.File.ReadAllText(GitHubEnvFilePath);

            content.ShouldContain("GitVersion_SemVer=1.0.1");
        }
        public void WriteVersionInfoTaskShouldNotLogOutputVariablesToBuildOutputIfNotRunningInBuildServer()
        {
            using var fixture = CreateLocalRepositoryFixture();

            var task = new WriteVersionInfoToBuildLog
            {
                SolutionDirectory = fixture.RepositoryPath,
            };

            var result = ExecuteMsBuildTask(task);

            result.Success.ShouldBe(true);
            result.Errors.ShouldBe(0);
            result.Log.ShouldNotContain("##vso[task.setvariable variable=GitVersion.FullSemVer]");
        }
        public void WriteVersionInfoToBuildLog(WriteVersionInfoToBuildLog task)
        {
            var logger = task.Log;

            gitVersionCalculator.TryCalculateVersionVariables(out var versionVariables);
            var buildServer = buildServerResolver.Resolve();
            if (buildServer != null)
            {
                logger.LogMessage($"Executing GenerateSetVersionMessage for '{buildServer.GetType().Name}'.");
                logger.LogMessage(buildServer.GenerateSetVersionMessage(versionVariables));
                logger.LogMessage($"Executing GenerateBuildLogOutput for '{buildServer.GetType().Name}'.");
                foreach (var buildParameter in BuildOutputFormatter.GenerateBuildLogOutput(buildServer, versionVariables))
                {
                    logger.LogMessage(buildParameter);
                }
            }
        }
Beispiel #9
0
        public void WriteVersionInfoToBuildLog(WriteVersionInfoToBuildLog task)
        {
            var logger = task.Log;

            var buildServer = buildServerResolver.Resolve();

            if (buildServer == null)
            {
                return;
            }

            logger.LogMessage($"Executing GenerateSetVersionMessage for '{buildServer.GetType().Name}'.");
            logger.LogMessage(buildServer.GenerateSetVersionMessage(versionVariables));
            logger.LogMessage($"Executing GenerateBuildLogOutput for '{buildServer.GetType().Name}'.");
            foreach (var buildParameter in buildServer.GenerateBuildLogOutput(versionVariables))
            {
                logger.LogMessage(buildParameter);
            }
        }
    public void WriteVersionInfoToBuildLog(WriteVersionInfoToBuildLog task)
    {
        var versionVariables = VersionVariables.FromFile(task.VersionFile, fileSystem, log);

        gitVersionOutputTool.OutputVariables(versionVariables, false);
    }
 public void WriteVersionInfoToBuildLog(WriteVersionInfoToBuildLog task)
 {
     gitVersionTool.OutputVariables(versionVariables, m => task.Log.LogMessage(m));
 }
Beispiel #12
0
 public static bool WriteVersionInfoToBuildLog(WriteVersionInfoToBuildLog task) => ExecuteGitVersionTask(task, executor => executor.WriteVersionInfoToBuildLog(task));
Beispiel #13
0
 public void WriteVersionInfoToBuildLog(WriteVersionInfoToBuildLog task)
 {
     gitVersionTool.OutputVariables(versionVariables);
 }