public async Task Run_fails_if_the_current_version_already_exists_and_points_to_a_different_commit() { // ARRANGE var config = new ChangeLogConfiguration() { CurrentVersion = "1.2.3" }; var head = GetGitCommit(id: TestGitIds.Id1); m_RepositoryMock.Setup(x => x.Head).Returns(head); var changeLog = new ApplicationChangeLog() { GetSingleVersionChangeLog(version: "1.2.3", commitId: TestGitIds.Id2) }; var sut = new LoadCurrentVersionTask(m_Logger, config, m_RepositoryMock.Object); // ACT var result = await sut.RunAsync(changeLog); // ASSERT Assert.Equal(ChangeLogTaskResult.Error, result); }
public async Task Run_succeeds_if_the_current_version_already_exists_and_points_to_the_same_commit() { // ARRANGE var config = new ChangeLogConfiguration() { CurrentVersion = "1.2.3" }; var head = GetGitCommit(id: TestGitIds.Id1); m_RepositoryMock.Setup(x => x.Head).Returns(head); var changeLog = new ApplicationChangeLog() { GetSingleVersionChangeLog(version: "1.2.3", commitId: head.Id) }; var sut = new LoadCurrentVersionTask(m_Logger, config, m_RepositoryMock.Object); // ACT var result = await sut.RunAsync(changeLog); // ASSERT Assert.Equal(ChangeLogTaskResult.Success, result); var singleVersionChangeLog = Assert.Single(changeLog.ChangeLogs); Assert.Equal(NuGetVersion.Parse("1.2.3"), singleVersionChangeLog.Version.Version); }
public async Task Run_adds_expected_version_to_changelog() { // ARRANGE var config = new ChangeLogConfiguration() { CurrentVersion = "1.2.3" }; var head = GetGitCommit(id: TestGitIds.Id1); m_RepositoryMock.Setup(x => x.Head).Returns(head); var sut = new LoadCurrentVersionTask(m_Logger, config, m_RepositoryMock.Object); var changeLog = new ApplicationChangeLog(); // ACT var result = await sut.RunAsync(changeLog); // ASSERT Assert.Equal(ChangeLogTaskResult.Success, result); var addedVersion = Assert.Single(changeLog.Versions); Assert.Equal(NuGetVersion.Parse("1.2.3"), addedVersion.Version); Assert.Equal(head.Id, addedVersion.Commit); }
public async Task Task_is_skipped_if_current_version_is_not_set(string currentVersion) { // ARRANGE var config = new ChangeLogConfiguration() { CurrentVersion = currentVersion }; var sut = new LoadCurrentVersionTask(m_Logger, config, m_RepositoryMock.Object); var changeLog = new ApplicationChangeLog(); // ACT var result = await sut.RunAsync(changeLog); // ASSERT Assert.Equal(ChangeLogTaskResult.Skipped, result); Assert.Empty(changeLog.Versions); }