Пример #1
0
        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);
        }
Пример #2
0
        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)));
        }
Пример #3
0
        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));
        }
Пример #4
0
        internal void EndSkippedMachineWideProcessProgress(SkippedReasons reason)
        {
            Debug.Assert(m_mwProc != MachineWideProcesses.None);
            var msg = GetSkippedMachineWideProcessMessage(m_mwProc, reason);

            Statusbar.EndProgress();
            Statusbar.Text.Value = msg;
            m_mwProc             = MachineWideProcesses.None;
        }
Пример #5
0
        internal void EndCompletedMachineWideProcessProgress()
        {
            Debug.Assert(m_mwProc != MachineWideProcesses.None);
            var msg = GetCompletedMachineWideProcessMessage(m_mwProc);

            Statusbar.EndProgress();
            Statusbar.Text.Value = msg;
            m_mwProc             = MachineWideProcesses.None;
        }
Пример #6
0
        public void ReportEnvironmentVariableProcessedProgress_should_report_the_progress(
            [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)]
            MachineWideProcesses mwProc)
        {
            // Arrange
            var fixture = new Fixture().Customize(new AutoMoqCustomization());

            var vm = new ConsoleViewModel();

            vm.BeginMachineWideProcessProgress(mwProc);

            // Act
            vm.ReportEnvironmentVariableProcessedProgress();


            // Assert
            Assert.IsNotNullOrEmpty(vm.Message.Value);
        }
Пример #7
0
        public void ShowSkippedMachineWideProcessMessage_should_show_the_message(
            [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)]
            MachineWideProcesses mwProc,
            [Values(SkippedReasons.AlreadyRegistered, SkippedReasons.Error)]
            SkippedReasons reason)
        {
            // Arrange
            var fixture = new Fixture().Customize(new AutoMoqCustomization());

            var vm = new ConsoleViewModel();

            vm.BeginMachineWideProcessProgress(mwProc);

            // Act
            vm.ShowSkippedMachineWideProcessMessage(reason);


            // Assert
            Assert.IsNotNullOrEmpty(vm.Message.Value);
        }
Пример #8
0
        public void EndCompletedMachineWideProcessProgress_should_report_the_progress(
            [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)]
            MachineWideProcesses mwProc)
        {
            // Arrange
            var fixture = new Fixture().Customize(new AutoMoqCustomization());

            var vm = new ConsoleViewModel();

            vm.BeginMachineWideProcessProgress(mwProc);
            vm.ShowCompletedMachineWideProcessMessage();

            // Act
            vm.EndCompletedMachineWideProcessProgress();


            // Assert
            Assert.IsNotNullOrEmpty(vm.Message.Value);
            Assert.AreEqual(0, vm.ExitCode.Value);
        }
Пример #9
0
        public void ReportProfilerProcessingProgress_should_report_the_progress(
            [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)]
            MachineWideProcesses mwProc)
        {
            // Arrange
            var fixture = new Fixture().Customize(new AutoMoqCustomization());

            var pathOfInstalling = fixture.Create <string>();
            var profLoc          = new ProfilerLocation(RegistryView.Registry64, pathOfInstalling);

            var vm = new ConsoleViewModel();

            vm.BeginMachineWideProcessProgress(mwProc);

            // Act
            vm.ReportProfilerProcessingProgress(profLoc);


            // Assert
            Assert.That(vm.Message.Value, Is.StringMatching(pathOfInstalling));
        }
Пример #10
0
        public void ReportNuGetSourceProcessingProgress_should_report_the_progress(
            [Values(MachineWideProcesses.Installing, MachineWideProcesses.Uninstalling)]
            MachineWideProcesses mwProc)
        {
            // Arrange
            var fixture = new Fixture().Customize(new AutoMoqCustomization());

            var path = fixture.Create <string>();
            var name = fixture.Create <string>();

            var vm = new ConsoleViewModel();

            vm.BeginMachineWideProcessProgress(mwProc);

            // Act
            vm.ReportNuGetSourceProcessingProgress(path, name);


            // Assert
            Assert.That(vm.Message.Value, Is.StringMatching(string.Format("({0})|({1})", path, name)));
        }
Пример #11
0
        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);
        }
Пример #12
0
        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);
        }
Пример #13
0
        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);
        }
Пример #14
0
        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);
        }
Пример #15
0
 internal void EndSkippedMachineWideProcessProgress(SkippedReasons reason)
 {
     Debug.Assert(m_mwProc != MachineWideProcesses.None);
     var msg = GetSkippedMachineWideProcessMessage(m_mwProc, reason);
     Statusbar.EndProgress();
     Statusbar.Text.Value = msg;
     m_mwProc = MachineWideProcesses.None;
 }
Пример #16
0
 internal void BeginMachineWideProcessProgress(MachineWideProcesses mwProc)
 {
     m_mwProc = mwProc;
 }
Пример #17
0
 internal void EndCompletedMachineWideProcessProgress()
 {
     Debug.Assert(m_mwProc != MachineWideProcesses.None);
     m_mwProc       = MachineWideProcesses.None;
     ExitCode.Value = 0;
 }
Пример #18
0
 internal void EndSkippedMachineWideProcessProgress(SkippedReasons reason)
 {
     Debug.Assert(m_mwProc != MachineWideProcesses.None);
     m_mwProc       = MachineWideProcesses.None;
     ExitCode.Value = 10 + (int)reason;
 }
Пример #19
0
 internal void BeginMachineWideProcessProgress(MachineWideProcesses mwProc)
 {
     m_mwProc = mwProc;
     Statusbar.BeginProgress(100u);
 }
Пример #20
0
        static string GetCompletedMachineWideProcessMessage(MachineWideProcesses mwProc)
        {
            var resName = string.Format("CompletedMachineWideProcess_{0}_Message", mwProc);

            return(PrigResources.GetString(resName));
        }
Пример #21
0
        static string GetSkippedMachineWideProcessMessage(MachineWideProcesses mwProc, SkippedReasons reason)
        {
            var resName = string.Format("SkippedMachineWideProcess_{0}_{1}_Message", mwProc, reason);

            return(PrigResources.GetString(resName));
        }
Пример #22
0
 internal void BeginMachineWideProcessProgress(MachineWideProcesses mwProc)
 {
     m_mwProc = mwProc;
     Statusbar.BeginProgress(100u);
 }
Пример #23
0
 static string GetSkippedMachineWideProcessMessage(MachineWideProcesses mwProc, SkippedReasons reason)
 {
     var resName = string.Format("SkippedMachineWideProcess_{0}_{1}_Message", mwProc, reason);
     return PrigResources.GetString(resName);
 }
Пример #24
0
 static string GetCompletedMachineWideProcessMessage(MachineWideProcesses mwProc)
 {
     var resName = string.Format("CompletedMachineWideProcess_{0}_Message", mwProc);
     return PrigResources.GetString(resName);
 }
Пример #25
0
 internal void EndCompletedMachineWideProcessProgress()
 {
     Debug.Assert(m_mwProc != MachineWideProcesses.None);
     var msg = GetCompletedMachineWideProcessMessage(m_mwProc);
     Statusbar.EndProgress();
     Statusbar.Text.Value = msg;
     m_mwProc = MachineWideProcesses.None;
 }