public void ReportPackageReferenceAddedProgress_should_report_the_progress_to_statusbar() { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var prog = fixture.Create <uint>(); var id = fixture.Create <string>(); { var m = new Mock <IVsPackageMetadata>(MockBehavior.Strict); m.Setup(_ => _.Id).Returns(id); fixture.Inject(m); } var vm = new PrigViewModel(); // Act vm.ReportPackageReferenceAddedProgress(prog, fixture.Freeze <IVsPackageMetadata>()); // Assert var progState = vm.Statusbar.ProgressState.Value; Assert.AreEqual(prog, progState.Value); Assert.That(progState.Label, Is.StringMatching(id)); }
public void ReportDefaultSourceProcessingProgress_should_report_the_progress_to_statusbar( [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)] MachineWideProcesses mwProc) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var prog = fixture.Create <uint>(); var pkgName = fixture.Create <string>(); var src = fixture.Create <string>(); var vm = new PrigViewModel(); vm.BeginMachineWideProcessProgress(mwProc); // Act vm.ReportPrigSourceProcessingProgress(prog, pkgName, src); // Assert var progState = vm.Statusbar.ProgressState.Value; Assert.AreEqual(prog, progState.Value); Assert.That(progState.Label, Is.StringMatching(string.Format("({0})|({1})", pkgName, src))); }
public void ReportProfilerProcessingProgress_should_report_the_progress_to_statusbar( [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)] MachineWideProcesses mwProc) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var prog = fixture.Create <uint>(); var pathOfInstalling = fixture.Create <string>(); var profLoc = new ProfilerLocation(RegistryView.Registry64, pathOfInstalling); var vm = new PrigViewModel(); vm.BeginMachineWideProcessProgress(mwProc); // Act vm.ReportProfilerProcessingProgress(prog, profLoc); // Assert var progState = vm.Statusbar.ProgressState.Value; Assert.AreEqual(prog, progState.Value); Assert.That(progState.Label, Is.StringMatching(pathOfInstalling)); }
public void EndSkippedProjectWideProcessProgress_should_report_the_progress_to_statusbar( [Values( ProjectWideProcesses.PrigAssemblyAdding, ProjectWideProcesses.PrigIndirectionSettingsEditing, ProjectWideProcesses.PrigAssemblyRemoving, ProjectWideProcesses.TestAdapterEnabling, ProjectWideProcesses.TestAdapterDisabling)] ProjectWideProcesses pwProc) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var include = fixture.Create <string>(); var vm = new PrigViewModel(); vm.BeginProjectWideProcessProgress(pwProc); // Act vm.EndSkippedProjectWideProcessProgress(SkippedReasons.NotRegisteredYet, include); // Assert var progState = vm.Statusbar.ProgressState.Value; Assert.AreEqual(0u, progState.Value); Assert.IsNullOrEmpty(progState.Label); Assert.IsNotNullOrEmpty(vm.Statusbar.Text.Value); }
public void ShowSkippedProjectWideProcessMessage_should_report_the_progress_to_statusbar( [Values( ProjectWideProcesses.PrigAssemblyAdding, ProjectWideProcesses.PrigIndirectionSettingsEditing, ProjectWideProcesses.PrigAssemblyRemoving, ProjectWideProcesses.TestAdapterEnabling, ProjectWideProcesses.TestAdapterDisabling)] ProjectWideProcesses pwProc) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var include = fixture.Create <string>(); var vm = new PrigViewModel(); vm.BeginProjectWideProcessProgress(pwProc); // Act vm.ShowSkippedProjectWideProcessMessage(SkippedReasons.NotRegisteredYet, include); // Assert var msgBox = vm.MessageBoxParameter.Value; Assert.AreEqual(OLEMSGBUTTON.OLEMSGBUTTON_OK, msgBox.Button); Assert.AreEqual(OLEMSGICON.OLEMSGICON_WARNING, msgBox.Icon); Assert.IsNotNullOrEmpty(msgBox.Text); }
public void ConfirmRestartingVisualStudioToTakeEffect_should_show_the_message_to_message_box( [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)] MachineWideProcesses mwProc, [Values(VSConstants.MessageBoxResult.IDYES, VSConstants.MessageBoxResult.IDNO)] VSConstants.MessageBoxResult response) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var vm = new PrigViewModel(); vm.BeginMachineWideProcessProgress(mwProc); vm.MessageBoxParameter.Subscribe(_ => _.Result = response); // Act var result = vm.ConfirmRestartingVisualStudioToTakeEffect(); // Assert Assert.AreEqual(response == VSConstants.MessageBoxResult.IDYES, result); var msgBox = vm.MessageBoxParameter.Value; Assert.AreEqual(OLEMSGBUTTON.OLEMSGBUTTON_YESNO, msgBox.Button); Assert.AreEqual(OLEMSGICON.OLEMSGICON_WARNING, msgBox.Icon); Assert.IsNotNullOrEmpty(msgBox.Text); }
public void NewDisableTestAdapterCommand_should_bind_Text_property_to_CurrentProject_status() { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var projName = fixture.Create <string>(); { var m = fixture.Freeze <Mock <Project> >(); m.Setup(_ => _.Name).Returns(projName); } var vm = new PrigViewModel(); var menuCommand = PrigPackage.NewDisableTestAdapterCommand(vm); menuCommand.Text = null; // Act vm.CurrentProject.Value = null; var defaultText = menuCommand.Text; vm.CurrentProject.Value = fixture.Freeze <Project>(); var projectSelectedText = menuCommand.Text; // Assert Assert.IsNotNull(defaultText); Assert.AreNotEqual(defaultText, projectSelectedText); Assert.That(projectSelectedText, Is.StringMatching(projName)); }
public void GetCurrentProjectOrException_should_throw_InvalidOperationException_if_it_is_not_set() { // Arrange var vm = new PrigViewModel(); vm.CurrentProject.Value = null; // Act, Assert Assert.Throws <InvalidOperationException>(() => vm.GetCurrentProjectOrException()); }
public Project SetToCurrentProjectIfSupported_(IFixture fixture) { // Arrange var vm = new PrigViewModel(); // Act vm.SetToCurrentProjectIfSupported(fixture.Freeze <Project>()); // Assert fixture.Freeze <Mock <Project> >().VerifyAll(); return(vm.CurrentProject.Value); }
public bool SetEditPrigIndirectionSettingsCommandVisibility_(IFixture fixture) { // Arrange var vm = new PrigViewModel(); // Act vm.SetEditPrigIndirectionSettingsCommandVisibility(fixture.Freeze <ProjectItem>()); // Assert fixture.Freeze <Mock <ProjectItem> >().VerifyAll(); return(vm.IsEditPrigIndirectionSettingsCommandVisible.Value); }
public bool CanEnableTestAdapter_(bool isTestAdapterEnabled, Project currentProject, IFixture fixture) { // Arrange var vm = new PrigViewModel(); vm.IsTestAdapterEnabled.Value = isTestAdapterEnabled; vm.CurrentProject.Value = currentProject; // Act var result = vm.HasEnabledTestAdapter(fixture.Freeze <Project>()); // Assert fixture.Freeze <Mock <Project> >().VerifyAll(); return(result); }
public void ReportNuGetPackageCreatingProgress_should_report_the_progress_to_statusbar() { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var prog = fixture.Create <uint>(); var pkgName = fixture.Create <string>(); var vm = new PrigViewModel(); // Act vm.ReportNuGetPackageCreatingProgress(prog, pkgName); // Assert Assert.AreEqual(prog, vm.Statusbar.ProgressState.Value.Value); Assert.That(vm.Statusbar.ProgressState.Value.Label, Is.StringMatching(pkgName)); }
public void ShowVisualStudioHasNotBeenElevatedYetMessage_should_show_the_message_to_message_box() { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var vm = new PrigViewModel(); // Act vm.ShowVisualStudioHasNotBeenElevatedYetMessage(); // Assert var msgBox = vm.MessageBoxParameter.Value; Assert.AreEqual(OLEMSGBUTTON.OLEMSGBUTTON_OK, msgBox.Button); Assert.AreEqual(OLEMSGICON.OLEMSGICON_INFO, msgBox.Icon); Assert.IsNotNullOrEmpty(msgBox.Text); }
public void ReportPackagePreparingProgress_should_report_the_progress_to_statusbar() { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var prog = fixture.Create <uint>(); var vm = new PrigViewModel(); // Act vm.ReportPackagePreparingProgress(prog); // Assert var progState = vm.Statusbar.ProgressState.Value; Assert.AreEqual(prog, progState.Value); Assert.IsNotNullOrEmpty(progState.Label); }
public void EndCompletedMachineWideProcessProgress_should_report_the_progress_to_statusbar( [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)] MachineWideProcesses mwProc) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var vm = new PrigViewModel(); vm.BeginMachineWideProcessProgress(mwProc); // Act vm.EndCompletedMachineWideProcessProgress(); // Assert var progState = vm.Statusbar.ProgressState.Value; Assert.AreEqual(0u, progState.Value); Assert.IsNullOrEmpty(progState.Label); Assert.IsNotNullOrEmpty(vm.Statusbar.Text.Value); }
public void GetCurrentProjectOrException_should_return_current_project_if_it_is_set() { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var curProj = default(Project); { var m = new Mock <Project>(MockBehavior.Strict); curProj = m.Object; fixture.Inject(m); } var vm = new PrigViewModel(); vm.CurrentProject.Value = curProj; // Act var result = vm.GetCurrentProjectOrException(); // Assert Assert.AreSame(curProj, result); }
public void ReportEnvironmentVariableProcessedProgress_should_report_the_progress_to_statusbar( [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)] MachineWideProcesses mwProc) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var prog = fixture.Create <uint>(); var vm = new PrigViewModel(); vm.BeginMachineWideProcessProgress(mwProc); // Act vm.ReportEnvironmentVariableProcessedProgress(prog); // Assert var progState = vm.Statusbar.ProgressState.Value; Assert.AreEqual(prog, progState.Value); Assert.IsNotNullOrEmpty(progState.Label); }
public void EndSkippedMachineWideProcessProgress_should_report_the_progress_to_statusbar( [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)] MachineWideProcesses mwProc, [Values(SkippedReasons.AlreadyRegistered, SkippedReasons.CanceledByUser)] SkippedReasons reason) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var vm = new PrigViewModel(); vm.BeginMachineWideProcessProgress(mwProc); // Act vm.EndSkippedMachineWideProcessProgress(reason); // Assert var progState = vm.Statusbar.ProgressState.Value; Assert.AreEqual(0u, progState.Value); Assert.IsNullOrEmpty(progState.Label); Assert.IsNotNullOrEmpty(vm.Statusbar.Text.Value); }
public void ConfirmRemovingPrigAssembly_should_show_the_message_to_message_box( [Values(VSConstants.MessageBoxResult.IDYES, VSConstants.MessageBoxResult.IDNO)] VSConstants.MessageBoxResult response) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var deletionalInclude = fixture.Create <string>(); var vm = new PrigViewModel(); vm.MessageBoxParameter.Subscribe(_ => _.Result = response); // Act var result = vm.ConfirmRemovingPrigAssembly(deletionalInclude); // Assert Assert.AreEqual(response == VSConstants.MessageBoxResult.IDYES, result); var msgBox = vm.MessageBoxParameter.Value; Assert.AreEqual(OLEMSGBUTTON.OLEMSGBUTTON_YESNO, msgBox.Button); Assert.AreEqual(OLEMSGICON.OLEMSGICON_QUERY, msgBox.Icon); Assert.IsNotNullOrEmpty(msgBox.Text); }
public void ShowSkippedMachineWideProcessMessage_should_show_the_message_to_message_box( [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)] MachineWideProcesses mwProc, [Values(SkippedReasons.AlreadyRegistered, SkippedReasons.CanceledByUser)] SkippedReasons reason) { // Arrange var fixture = new Fixture().Customize(new AutoMoqCustomization()); var vm = new PrigViewModel(); vm.BeginMachineWideProcessProgress(mwProc); // Act vm.ShowSkippedMachineWideProcessMessage(reason); // Assert var msgBox = vm.MessageBoxParameter.Value; Assert.AreEqual(OLEMSGBUTTON.OLEMSGBUTTON_OK, msgBox.Button); Assert.AreEqual(OLEMSGICON.OLEMSGICON_INFO, msgBox.Icon); Assert.IsNotNullOrEmpty(msgBox.Text); }