public async Task ChangePreWithBadFormatTest() { using (var fs = new DisposableFileSystem()) { fs.CreateFile("MySolution.sln"); fs.CreateFolder("src/Services"); fs.CreateFile("src/Services/project1.csproj", ProjectHelper.SetVersion("5.0.8-beta")); var store = new ProjectStore(); var command = new PreCommand(GitHelper.CreateDefaultGitMock().Object); var context = new CommandContext(_console, Verbosity.Info); context.Directory = fs.RootPath; await Assert.ThrowsAsync <FormatException>(() => command.ExecuteAsync(context)); } }
public void FiltersExcludedFiles(string filename, FileAttributes attributes, ExclusionFilters filters, bool excluded) { var fileInfo = new FileInfo(Path.Combine(_fileSystem.RootPath, filename)); _fileSystem.CreateFile(fileInfo); fileInfo.Attributes = attributes; Assert.Equal(excluded, FileSystemInfoHelper.IsExcluded(_fileSystem.GetFile(filename), filters)); }
public async Task ChangeVersionWithoutNoGitToolTest() { using (var fs = new DisposableFileSystem()) { fs.CreateFile("MySolution.sln"); fs.CreateFolder("src/Services"); fs.CreateFile("src/Services/project1.csproj", ProjectHelper.SetVersion("1.5.1")); var store = new ProjectStore(); var command = new MajorCommand(GitHelper.CreateDefaultGitMock().Object); var context = new CommandContext(_console, Verbosity.Info); context.Directory = fs.RootPath; context.Message = "test"; var exception = await Assert.ThrowsAsync <InvalidOperationException>(() => command.ExecuteAsync(context)); Assert.Equal("Unable to commit because git is not installed.", exception.Message); } }
public async Task ChangeVersionTest() { using (var fs = new DisposableFileSystem()) { fs.CreateFile("MySolution.sln"); fs.CreateFolder("src/Services"); fs.CreateFile("src/Services/project1.csproj", ProjectHelper.SetVersion("1.5.1")); var store = new ProjectStore(); var command = new SetCommand(GitHelper.CreateDefaultGitMock().Object); var context = new CommandContext(_console, Verbosity.Info); context.Directory = fs.RootPath; await command.ExecuteAsync(context, "3.0.1"); var project = store.Read(PathHelper.GetFile(fs, "src/Services/project1.csproj")); Assert.Equal("3.0.1", project.Version); } }
public async Task CreateCommitTest() { using (var fs = new DisposableFileSystem()) { fs.CreateFile("MySolution.sln"); fs.CreateFolder("src/Services"); fs.CreateFile("src/Services/project1.csproj", ProjectHelper.SetVersion("1.5.1")); var store = new ProjectStore(); var gitMock = GitHelper.CreateGitMock(true); var command = new MajorCommand(gitMock.Object); var context = new CommandContext(_console, Verbosity.Info); context.Directory = fs.RootPath; context.Message = "test"; await command.ExecuteAsync(context); gitMock.Verify(git => git.IsInstalled()); gitMock.Verify(git => git.RunCommandAsync(It.IsAny <CommandContext>(), It.Is <string>(args => args.Equals("commit -a -m \"test\"")))); } }
public void FindWithProjectFiles() { using (var fs = new DisposableFileSystem()) { fs.CreateFile("project1.csproj") .CreateFile("project2.csproj"); var finder = new ProjectFinder(fs.RootPath); var projects = finder.FindProjects().OrderBy(p => p.Name).ToArray(); Assert.Equal("project1.csproj", projects[0].Name); Assert.Equal("project2.csproj", projects[1].Name); } }
public void UpdateProjectWithBadVersionTest() { string projectFile = "MyProject.csproj"; using (var fs = new DisposableFileSystem()) { fs.CreateFile(projectFile, ProjectHelper.SetVersion("1.4.0")); var store = new ProjectStore(); var project = store.Read(CreateFileInfo(fs, projectFile)); project.Version = "${BuildVersion}"; Assert.Throws <ArgumentException>("version", () => store.Save(project)); } }
public void ReadProjectWithPatchTest() { string projectFile = "MyProject.csproj"; using (var fs = new DisposableFileSystem()) { fs.CreateFile(projectFile, ProjectHelper.SetVersion("1.3.5")); var store = new ProjectStore(); var project = store.Read(CreateFileInfo(fs, projectFile)); Assert.Equal("1.3.5", project.Version); } }
public void ReadNoVersionTest() { string projectFile = "project2.csproj"; using (var fs = new DisposableFileSystem()) { fs.CreateFile(projectFile, ProjectHelper.SetVersion(string.Empty)); var store = new ProjectStore(); var project = store.Read(CreateFileInfo(fs, projectFile)); Assert.Equal("0.1.0", project.Version); } }
public void UpdateProjectTest() { string projectFile = "MyProject.csproj"; using (var fs = new DisposableFileSystem()) { fs.CreateFile(projectFile, ProjectHelper.SetVersion("1.4.0")); var store = new ProjectStore(); var project = store.Read(CreateFileInfo(fs, projectFile)); project.Version = "2.0"; store.Save(project); var newProject = store.Read(CreateFileInfo(fs, projectFile)); Assert.Equal("2.0", project.Version); } }
public void FindWithSolutionFile() { using (var fs = new DisposableFileSystem()) { fs.CreateFile("MySolution.sln") .CreateFolder("src/project") .CreateFile("src/project/proj1.csproj"); var finder = new ProjectFinder(fs.RootPath); var projectFiles = finder.FindProjects(); var project = projectFiles.First(); Assert.Single(projectFiles); Assert.Equal("proj1.csproj", project.Name); } }
public async Task ChangeNullVersionTest() { using (var fs = new DisposableFileSystem()) { fs.CreateFile("MySolution.sln") .CreateFolder("src/Services/project1") .CreateFile("src/Services/project1/project1.csproj", ProjectHelper.SetVersion("1.5.1")) .CreateFolder("src/Services/project2") .CreateFile("src/Services/project2/project2.csproj", ProjectHelper.SetVersion("2.1.0")); var store = new ProjectStore(); var command = new SetCommand(GitHelper.CreateDefaultGitMock().Object); var context = new CommandContext(_console, Verbosity.Info); context.Directory = fs.RootPath; var exception = await Assert.ThrowsAsync <ArgumentNullException>(() => command.ExecuteAsync(context, null)); Assert.Equal("version", exception.ParamName); } }