public void Should_Add_Mandatory_Arguments() { // Given var fixture = new VSWhereLegacyFixture(); // When var result = fixture.Run(); // Then Assert.Equal("-legacy -property installationPath -nologo", result.Args); }
public void Should_Find_VSWhere_Executable_If_Tool_Path_Not_Provided() { // Given var fixture = new VSWhereLegacyFixture(); // When var result = fixture.Run(); // Then Assert.Equal("/Working/tools/vswhere.exe", result.Path.FullPath); }
public void Should_Find_VSWhere_Executable_If_Tool_Path_Not_Provided() { // Given var fixture = new VSWhereLegacyFixture(); // When var result = fixture.Run(); // Then Assert.Equal("/Program86/Microsoft Visual Studio/Installer/vswhere.exe", result.Path.FullPath); }
public void Should_Throw_If_Process_Has_A_Non_Zero_Exit_Code() { // Given var fixture = new VSWhereLegacyFixture(); fixture.GivenProcessExitsWithCode(1); // When var result = Record.Exception(() => fixture.Run()); // Then AssertEx.IsCakeException(result, "VSWhere: Process returned an error (exit code 1)."); }
public void Should_Throw_If_Process_Was_Not_Started() { // Given var fixture = new VSWhereLegacyFixture(); fixture.GivenProcessCannotStart(); // When var result = Record.Exception(() => fixture.Run()); // Then AssertEx.IsCakeException(result, "VSWhere: Process was not started."); }
public void Should_Throw_If_VSWhere_Executable_Was_Not_Found() { // Given var fixture = new VSWhereLegacyFixture(); fixture.GivenDefaultToolDoNotExist(); // When var result = Record.Exception(() => fixture.Run()); // Then AssertEx.IsCakeException(result, "VSWhere: Could not locate executable."); }
public void Should_Include_Latest_To_Arguments_If_Set_To_True() { // Given var fixture = new VSWhereLegacyFixture(); fixture.Settings.Latest = true; // When var result = fixture.Run(); // Then Assert.Equal("-legacy -latest -property installationPath -nologo", result.Args); }
public void Should_Throw_If_Settings_Are_Null() { // Given var fixture = new VSWhereLegacyFixture(); fixture.Settings = null; // When var result = Record.Exception(() => fixture.Run()); // Then AssertEx.IsArgumentNullException(result, "settings"); }
public void Should_Not_Include_Property_To_Arguments_If_Set_To_Empty() { // Given var fixture = new VSWhereLegacyFixture(); fixture.Settings.ReturnProperty = string.Empty; // When var result = fixture.Run(); // Then Assert.Equal("-legacy -nologo", result.Args); }
public void Should_Add_Version_To_Arguments_If_Set() { // Given var fixture = new VSWhereLegacyFixture(); fixture.Settings.Version = "15"; // When var result = fixture.Run(); // Then Assert.Equal("-legacy -version \"15\" -property installationPath -nologo", result.Args); }
public void Should_Add_Prerelease_To_Arguments_If_Set() { // Given var fixture = new VSWhereLegacyFixture(); fixture.Settings.IncludePrerelease = true; // When var result = fixture.Run(); // Then Assert.Equal("-legacy -property installationPath -prerelease -nologo", result.Args); }
public void Should_Use_VSWhere_Executable_From_Tool_Path_If_Provided_On_Windows(string toolPath, string expected) { // Given var fixture = new VSWhereLegacyFixture(); fixture.Settings.ToolPath = toolPath; fixture.GivenSettingsToolPathExist(); // When var result = fixture.Run(); // Then Assert.Equal(expected, result.Path.FullPath); }