public void MainViewModelApplicationTitle()
        {
            string expectedApplicationTitle = "Installer Studio";
              string notifyApplicationTitle = null;

              TestDialogService dialogService = new TestDialogService();
              MainViewModel model = new MainViewModel();
              model.DialogService = dialogService;
              // Нужно для сохранения.
              model.MainView = new TestMainView(null);

              // При загрузке модели должен быть обычный заголовок без файла.
              Assert.AreEqual(expectedApplicationTitle, model.ApplicationTitle);
              model.PropertyChanged += (s, e) =>
              {
            if (e.PropertyName == "ApplicationTitle")
              notifyApplicationTitle = model.ApplicationTitle;
              };

              // Создаем новый документ.
              model.CreateMsiCommand.Execute(null);
              Assert.AreEqual(expectedApplicationTitle + " - *** Без названия ***", notifyApplicationTitle);

              // Сохраним.
              TestDialogService.TestFileName = "Test.msizip";
              model.SaveAsCommand.Execute(null);
              Assert.AreEqual(expectedApplicationTitle + " - Test.msizip", notifyApplicationTitle);

              // Переименуем файл и откроем его.
              if (File.Exists("NewTest.msizip"))
            File.Delete("NewTest.msizip");
              File.Move("Test.msizip", "NewTest.msizip");
              TestDialogService.TestFileName = "NewTest.msizip";
              model.OpenCommand.Execute(null);
              Assert.AreEqual(expectedApplicationTitle + " - NewTest.msizip", notifyApplicationTitle);

              // Закроем документ.
              model.CloseCommand.Execute(null);
              Assert.AreEqual(expectedApplicationTitle, notifyApplicationTitle);

              if (File.Exists("NewTest.msizip"))
            File.Delete("NewTest.msizip");
        }
        public void MainViewModelOpenFileFromCommandLine()
        {
            // Создаем модель и необходимую инфраструктуру.
              TestDialogService dialogService = new TestDialogService();
              MainViewModel model = new MainViewModel();
              model.DialogService = dialogService;
              model.MainView = new TestMainView("C:\\InstallerStudio.exe");
              // Вызовем инициализацию.
              model.ViewInitialized();
              // Ни чего не должно открыться.
              Assert.IsNull(model.BuilderViewModel);

              // Создадим файл.
              model.CreateMsiCommand.Execute(null);
              // Сохраним.
              TestDialogService.TestFileName = "Test.msizip";
              model.SaveAsCommand.Execute(null);

              // Создадим новую модель.
              model = new MainViewModel();
              model.DialogService = dialogService;
              model.MainView = new TestMainView("C:\\InstallerStudio.exe", "Test.msizip");
              // Вызовем инициализацию.
              model.ViewInitialized();
              // Должен открыться файл.
              Assert.IsNotNull(model.BuilderViewModel);

              // Создадим новую модель.
              model = new MainViewModel();
              model.DialogService = dialogService;
              model.MainView = new TestMainView("C:\\InstallerStudio.exe", "Errror.msizip");
              // Вызовем инициализацию.
              model.ViewInitialized();
              // Ни чего не должно открыться.
              Assert.IsNull(model.BuilderViewModel);

              if (File.Exists("Test.msizip"))
            File.Delete("Test.msizip");
        }