示例#1
0
        protected override void OnTestInitialize()
        {
            ITFSSettingView view        = Container.GetExportedValue <ITFSSettingView>();
            IUriHelpView    uriHelpView = Container.GetExportedValue <IUriHelpView>();

            this.viewModel = new TFSSettingViewModel(view, uriHelpView);
        }
示例#2
0
        public void AfterCloseSettingDialogCancelTest()
        {
            if (order++ != 12) { throw new NotSupportedException("This unit test must run as order."); }

            proxy.AfterCloseSettingDialog(true);
            Assert.IsTrue(File.Exists(SettingDocumentType.FilePath));
            var view = proxy.InitializeSettingDialog();
            viewModel = (view as ITFSSettingView).GetViewModel<TFSSettingViewModel>();

            var idMapping = viewModel.PropertyMappingCollection["ID"];
            var bugFilterField = viewModel.BugFilterField;
            var bugFilterValue = viewModel.BugFilterValue;

            viewModel.PropertyMappingCollection["ID"] = string.Empty;
            viewModel.BugFilterField = string.Empty;
            viewModel.BugFilterValue = string.Empty;
            Assert.AreEqual(SettingDialogValidateionResult.UnValid, proxy.ValidateBeforeCloseSettingDialog());

            proxy.AfterCloseSettingDialog(false);

            var doc = SettingDocumentType.Open();
            Assert.AreEqual(idMapping, doc.PropertyMappingCollection["ID"]);
            Assert.AreEqual(bugFilterField, doc.BugFilterField);
            Assert.AreEqual(bugFilterValue, doc.BugFilterValue);

            Assert.IsTrue(proxy.CanQuery);
        }
示例#3
0
        public void SettingViewModelPriorityMappingChangedTest()
        {
            if (order++ != 16)
            {
                throw new NotSupportedException("This unit test must run as order.");
            }

            var view = proxy.InitializeSettingDialog();

            viewModel = (view as ITFSSettingView).GetViewModel <TFSSettingViewModel>();

            var priorityMapping = viewModel.PropertyMappingCollection["Priority"];
            var priorityRed     = viewModel.PriorityRed;

            viewModel.PropertyMappingCollection["Priority"] = string.Empty;
            Assert.AreEqual(string.Empty, viewModel.PriorityRed);
            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsFalse(viewModel.PriorityValues.Any());

            viewModel.PropertyMappingCollection["Priority"] = priorityMapping;
            Assert.AreEqual(priorityRed, viewModel.PriorityRed);
            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsTrue(viewModel.PriorityValues.Any());
            Assert.IsTrue(viewModel.PriorityValues.Any(x => x.IsChecked));

            proxy.AfterCloseSettingDialog(false);
        }
示例#4
0
        public void SettingViewModelPasswordPropertyChangedTest()
        {
            if (order++ != 15)
            {
                throw new NotSupportedException("This unit test must run as order.");
            }

            var view = proxy.InitializeSettingDialog();

            viewModel = (view as ITFSSettingView).GetViewModel <TFSSettingViewModel>();
            Assert.AreEqual(ProgressTypes.Success, viewModel.ProgressType);
            Assert.AreEqual(100, viewModel.ProgressValue);

            viewModel.Password = "******";
            Assert.AreEqual(ProgressTypes.NotWorking, viewModel.ProgressType);
            Assert.AreEqual(0, viewModel.ProgressValue);

            foreach (var mapping in viewModel.PropertyMappingCollection)
            {
                Assert.AreEqual(string.Empty, viewModel.PropertyMappingCollection[mapping.Key]);
            }

            Assert.IsNotNull(viewModel.TFSFields);
            Assert.IsFalse(viewModel.TFSFields.Any());
            Assert.IsNotNull(viewModel.BugFilterFields);
            Assert.IsFalse(viewModel.BugFilterFields.Any());
            Assert.AreEqual(string.Empty, viewModel.BugFilterField);
            Assert.AreEqual(string.Empty, viewModel.BugFilterValue);

            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsFalse(viewModel.PriorityValues.Any());
            Assert.AreEqual(string.Empty, viewModel.PriorityRed);

            proxy.AfterCloseSettingDialog(false);
        }
示例#5
0
        public void AfterCloseSettingDialogCancelTest()
        {
            if (order++ != 12)
            {
                throw new NotSupportedException("This unit test must run as order.");
            }

            proxy.AfterCloseSettingDialog(true);
            Assert.IsTrue(File.Exists(SettingDocumentType.FilePath));
            var view = proxy.InitializeSettingDialog();

            viewModel = (view as ITFSSettingView).GetViewModel <TFSSettingViewModel>();

            var idMapping      = viewModel.PropertyMappingCollection["ID"];
            var bugFilterField = viewModel.BugFilterField;
            var bugFilterValue = viewModel.BugFilterValue;

            viewModel.PropertyMappingCollection["ID"] = string.Empty;
            viewModel.BugFilterField = string.Empty;
            viewModel.BugFilterValue = string.Empty;
            Assert.AreEqual(SettingDialogValidateionResult.UnValid, proxy.ValidateBeforeCloseSettingDialog());

            proxy.AfterCloseSettingDialog(false);

            var doc = SettingDocumentType.Open();

            Assert.AreEqual(idMapping, doc.PropertyMappingCollection["ID"]);
            Assert.AreEqual(bugFilterField, doc.BugFilterField);
            Assert.AreEqual(bugFilterValue, doc.BugFilterValue);

            Assert.IsTrue(proxy.CanQuery);
        }
示例#6
0
        public void InitializeSettingDialogWithDataTest()
        {
            if (order++ != 10)
            {
                throw new NotSupportedException("This unit test must run as order.");
            }

            var view = proxy.InitializeSettingDialog();

            Assert.IsNotNull(view);
            Assert.IsInstanceOfType(view, typeof(ITFSSettingView));

            viewModel = (view as ITFSSettingView).GetViewModel <TFSSettingViewModel>();
            Assert.IsNotNull(viewModel);

            Assert.AreEqual(new Uri(TheCodePlexUri).AbsoluteUri, viewModel.ConnectUri.AbsoluteUri);
            Assert.AreEqual(TheUsername, viewModel.UserName);
            Assert.AreEqual(ThePassword, viewModel.Password);

            Assert.AreEqual("ID", viewModel.PropertyMappingCollection["ID"]);
            Assert.AreEqual("Title", viewModel.PropertyMappingCollection["Title"]);
            Assert.AreEqual("Description", viewModel.PropertyMappingCollection["Description"]);
            Assert.AreEqual("Assigned To", viewModel.PropertyMappingCollection["AssignedTo"]);
            Assert.AreEqual("State", viewModel.PropertyMappingCollection["State"]);
            Assert.AreEqual("Changed Date", viewModel.PropertyMappingCollection["ChangedDate"]);
            Assert.AreEqual("Created By", viewModel.PropertyMappingCollection["CreatedBy"]);
            Assert.AreEqual("Code Studio Rank", viewModel.PropertyMappingCollection["Priority"]);

            Assert.IsNotNull(viewModel.TFSFields);
            Assert.IsTrue(viewModel.TFSFields.Any());

            Assert.AreEqual("Work Item Type", viewModel.BugFilterField);
            Assert.AreEqual("Work Item", viewModel.BugFilterValue);
            Assert.AreEqual("High;Low", viewModel.PriorityRed);
            Assert.IsTrue(viewModel.PriorityValues.Any(x => x.IsChecked));

            Assert.AreEqual(ProgressTypes.Success, viewModel.ProgressType);
            Assert.AreEqual(100, viewModel.ProgressValue);
        }
示例#7
0
        public void InitializeSettingDialogTest()
        {
            if (order++ != 1)
            {
                throw new NotSupportedException("This unit test must run as order.");
            }

            var view = proxy.InitializeSettingDialog();

            Assert.IsNotNull(view);
            Assert.IsInstanceOfType(view, typeof(ITFSSettingView));

            viewModel = (view as ITFSSettingView).GetViewModel <TFSSettingViewModel>();
            Assert.IsNotNull(viewModel);

            Assert.IsNull(viewModel.ConnectUri);
            Assert.AreEqual(string.Empty, viewModel.UserName);
            Assert.AreEqual(string.Empty, viewModel.Password);

            foreach (var mapping in viewModel.PropertyMappingCollection)
            {
                Assert.AreEqual(string.Empty, viewModel.PropertyMappingCollection[mapping.Key]);
            }

            Assert.IsNotNull(viewModel.TFSFields);
            Assert.IsFalse(viewModel.TFSFields.Any());
            Assert.IsNotNull(viewModel.BugFilterFields);
            Assert.IsFalse(viewModel.BugFilterFields.Any());
            Assert.AreEqual(string.Empty, viewModel.BugFilterField);
            Assert.AreEqual(string.Empty, viewModel.BugFilterValue);

            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsFalse(viewModel.PriorityValues.Any());
            Assert.AreEqual(string.Empty, viewModel.PriorityRed);

            Assert.AreEqual(ProgressTypes.NotWorking, viewModel.ProgressType);
            Assert.AreEqual(0, viewModel.ProgressValue);
        }
示例#8
0
        public void SettingViewModelPriorityValuePropertyChangedTest()
        {
            if (order++ != 17)
            {
                throw new NotSupportedException("This unit test must run as order.");
            }

            var view = proxy.InitializeSettingDialog();

            viewModel = (view as ITFSSettingView).GetViewModel <TFSSettingViewModel>();
            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsTrue(viewModel.PriorityValues.Any());
            Assert.IsFalse(string.IsNullOrWhiteSpace(viewModel.PriorityRed));
            Assert.IsTrue(viewModel.PriorityValues.Any(x => x.IsChecked));

            foreach (var value in viewModel.PriorityValues)
            {
                value.IsChecked = false;
            }
            Assert.IsTrue(string.IsNullOrWhiteSpace(viewModel.PriorityRed));

            proxy.AfterCloseSettingDialog(false);
        }
示例#9
0
文件: TFSProxy.cs 项目: alibad/Bugger
        /// <summary>
        /// Initializes the setting dialog.
        /// </summary>
        /// <returns></returns>
        public override ISettingView InitializeSettingDialog()
        {
            if (this.settingViewModel == null)
            {
                ITFSSettingView view        = this.container.GetExportedValue <ITFSSettingView>();
                IUriHelpView    uriHelpView = this.container.GetExportedValue <IUriHelpView>();
                this.settingViewModel = new TFSSettingViewModel(view, uriHelpView);
                this.settingViewModel.TestConnectionCommand = this.testConnectionCommand;
            }

            RemoveWeakEventListener(this.settingViewModel, SettingViewModelPropertyChanged);
            this.settingViewModel.ClearMappingData();

            this.settingViewModel.ConnectUri = this.document.ConnectUri;
            this.settingViewModel.UserName   = this.document.UserName;
            this.settingViewModel.Password   = this.document.Password;

            foreach (var mapping in this.document.PropertyMappingCollection)
            {
                this.settingViewModel.PropertyMappingCollection[mapping.Key] = mapping.Value;
            }

            foreach (var field in this.tfsFieldsCache)
            {
                this.settingViewModel.TFSFields.Add(field);
                if (field.AllowedValues.Any())
                {
                    this.settingViewModel.BugFilterFields.Add(field);
                }
            }

            this.settingViewModel.BugFilterField = this.document.BugFilterField;
            this.settingViewModel.BugFilterValue = this.document.BugFilterValue;
            this.settingViewModel.PriorityRed    = this.document.PriorityRed;

            UpdateSettingDialogPriorityValues();

            if (this.CanQuery)
            {
                if (string.IsNullOrWhiteSpace(this.settingViewModel.BugFilterField) &&
                    string.IsNullOrWhiteSpace(this.settingViewModel.BugFilterValue) &&
                    this.settingViewModel.PropertyMappingCollection
                    .Where(x => !ignoreField.Contains(x.Key))
                    .Any(x =>
                {
                    return(string.IsNullOrWhiteSpace(x.Value));
                }))
                {
                    this.settingViewModel.ProgressType = ProgressTypes.SuccessWithError;
                }
                else
                {
                    this.settingViewModel.ProgressType = ProgressTypes.Success;
                }
                this.settingViewModel.ProgressValue = 100;
            }

            AddWeakEventListener(this.settingViewModel, SettingViewModelPropertyChanged);

            return(this.settingViewModel.View as ISettingView);
        }
示例#10
0
        public void SettingViewModelUserNamePropertyChangedTest()
        {
            if (order++ != 14) { throw new NotSupportedException("This unit test must run as order."); }

            var view = proxy.InitializeSettingDialog();
            viewModel = (view as ITFSSettingView).GetViewModel<TFSSettingViewModel>();
            Assert.AreEqual(ProgressTypes.Success, viewModel.ProgressType);
            Assert.AreEqual(100, viewModel.ProgressValue);

            viewModel.UserName = "******";
            Assert.AreEqual(ProgressTypes.NotWorking, viewModel.ProgressType);
            Assert.AreEqual(0, viewModel.ProgressValue);

            foreach (var mapping in viewModel.PropertyMappingCollection)
            {
                Assert.AreEqual(string.Empty, viewModel.PropertyMappingCollection[mapping.Key]);
            }

            Assert.IsNotNull(viewModel.TFSFields);
            Assert.IsFalse(viewModel.TFSFields.Any());
            Assert.IsNotNull(viewModel.BugFilterFields);
            Assert.IsFalse(viewModel.BugFilterFields.Any());
            Assert.AreEqual(string.Empty, viewModel.BugFilterField);
            Assert.AreEqual(string.Empty, viewModel.BugFilterValue);

            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsFalse(viewModel.PriorityValues.Any());
            Assert.AreEqual(string.Empty, viewModel.PriorityRed);

            proxy.AfterCloseSettingDialog(false);
        }
示例#11
0
        public void SettingViewModelPriorityValuePropertyChangedTest()
        {
            if (order++ != 17) { throw new NotSupportedException("This unit test must run as order."); }

            var view = proxy.InitializeSettingDialog();
            viewModel = (view as ITFSSettingView).GetViewModel<TFSSettingViewModel>();
            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsTrue(viewModel.PriorityValues.Any());
            Assert.IsFalse(string.IsNullOrWhiteSpace(viewModel.PriorityRed));
            Assert.IsTrue(viewModel.PriorityValues.Any(x => x.IsChecked));

            foreach (var value in viewModel.PriorityValues)
            {
                value.IsChecked = false;
            }
            Assert.IsTrue(string.IsNullOrWhiteSpace(viewModel.PriorityRed));

            proxy.AfterCloseSettingDialog(false);
        }
示例#12
0
        public void SettingViewModelPriorityMappingChangedTest()
        {
            if (order++ != 16) { throw new NotSupportedException("This unit test must run as order."); }

            var view = proxy.InitializeSettingDialog();
            viewModel = (view as ITFSSettingView).GetViewModel<TFSSettingViewModel>();

            var priorityMapping = viewModel.PropertyMappingCollection["Priority"];
            var priorityRed = viewModel.PriorityRed;

            viewModel.PropertyMappingCollection["Priority"] = string.Empty;
            Assert.AreEqual(string.Empty, viewModel.PriorityRed);
            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsFalse(viewModel.PriorityValues.Any());

            viewModel.PropertyMappingCollection["Priority"] = priorityMapping;
            Assert.AreEqual(priorityRed, viewModel.PriorityRed);
            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsTrue(viewModel.PriorityValues.Any());
            Assert.IsTrue(viewModel.PriorityValues.Any(x => x.IsChecked));

            proxy.AfterCloseSettingDialog(false);
        }
示例#13
0
        public void InitializeSettingDialogWithDataTest()
        {
            if (order++ != 10) { throw new NotSupportedException("This unit test must run as order."); }

            var view = proxy.InitializeSettingDialog();
            Assert.IsNotNull(view);
            Assert.IsInstanceOfType(view, typeof(ITFSSettingView));

            viewModel = (view as ITFSSettingView).GetViewModel<TFSSettingViewModel>();
            Assert.IsNotNull(viewModel);

            Assert.AreEqual(new Uri(TheCodePlexUri).AbsoluteUri, viewModel.ConnectUri.AbsoluteUri);
            Assert.AreEqual(TheUsername, viewModel.UserName);
            Assert.AreEqual(ThePassword, viewModel.Password);

            Assert.AreEqual("ID", viewModel.PropertyMappingCollection["ID"]);
            Assert.AreEqual("Title", viewModel.PropertyMappingCollection["Title"]);
            Assert.AreEqual("Description", viewModel.PropertyMappingCollection["Description"]);
            Assert.AreEqual("Assigned To", viewModel.PropertyMappingCollection["AssignedTo"]);
            Assert.AreEqual("State", viewModel.PropertyMappingCollection["State"]);
            Assert.AreEqual("Changed Date", viewModel.PropertyMappingCollection["ChangedDate"]);
            Assert.AreEqual("Created By", viewModel.PropertyMappingCollection["CreatedBy"]);
            Assert.AreEqual("Code Studio Rank", viewModel.PropertyMappingCollection["Priority"]);

            Assert.IsNotNull(viewModel.TFSFields);
            Assert.IsTrue(viewModel.TFSFields.Any());

            Assert.AreEqual("Work Item Type", viewModel.BugFilterField);
            Assert.AreEqual("Work Item", viewModel.BugFilterValue);
            Assert.AreEqual("High;Low", viewModel.PriorityRed);
            Assert.IsTrue(viewModel.PriorityValues.Any(x => x.IsChecked));

            Assert.AreEqual(ProgressTypes.Success, viewModel.ProgressType);
            Assert.AreEqual(100, viewModel.ProgressValue);
        }
示例#14
0
        public void InitializeSettingDialogTest()
        {
            if (order++ != 1) { throw new NotSupportedException("This unit test must run as order."); }

            var view = proxy.InitializeSettingDialog();
            Assert.IsNotNull(view);
            Assert.IsInstanceOfType(view, typeof(ITFSSettingView));

            viewModel = (view as ITFSSettingView).GetViewModel<TFSSettingViewModel>();
            Assert.IsNotNull(viewModel);

            Assert.IsNull(viewModel.ConnectUri);
            Assert.AreEqual(string.Empty, viewModel.UserName);
            Assert.AreEqual(string.Empty, viewModel.Password);

            foreach (var mapping in viewModel.PropertyMappingCollection)
            {
                Assert.AreEqual(string.Empty, viewModel.PropertyMappingCollection[mapping.Key]);
            }

            Assert.IsNotNull(viewModel.TFSFields);
            Assert.IsFalse(viewModel.TFSFields.Any());
            Assert.IsNotNull(viewModel.BugFilterFields);
            Assert.IsFalse(viewModel.BugFilterFields.Any());
            Assert.AreEqual(string.Empty, viewModel.BugFilterField);
            Assert.AreEqual(string.Empty, viewModel.BugFilterValue);

            Assert.IsNotNull(viewModel.PriorityValues);
            Assert.IsFalse(viewModel.PriorityValues.Any());
            Assert.AreEqual(string.Empty, viewModel.PriorityRed);

            Assert.AreEqual(ProgressTypes.NotWorking, viewModel.ProgressType);
            Assert.AreEqual(0, viewModel.ProgressValue);
        }
示例#15
0
        protected override void OnTestInitialize()
        {
            ITFSSettingView view = Container.GetExportedValue<ITFSSettingView>();
            IUriHelpView uriHelpView = Container.GetExportedValue<IUriHelpView>();

            this.viewModel = new TFSSettingViewModel(view, uriHelpView);
        }
示例#16
0
文件: TFSProxy.cs 项目: alibad/Bugger
        /// <summary>
        /// Initializes the setting dialog.
        /// </summary>
        /// <returns></returns>
        public override ISettingView InitializeSettingDialog()
        {
            if (this.settingViewModel == null)
            {
                ITFSSettingView view = this.container.GetExportedValue<ITFSSettingView>();
                IUriHelpView uriHelpView = this.container.GetExportedValue<IUriHelpView>();
                this.settingViewModel = new TFSSettingViewModel(view, uriHelpView);
                this.settingViewModel.TestConnectionCommand = this.testConnectionCommand;
            }

            RemoveWeakEventListener(this.settingViewModel, SettingViewModelPropertyChanged);
            this.settingViewModel.ClearMappingData();

            this.settingViewModel.ConnectUri = this.document.ConnectUri;
            this.settingViewModel.UserName = this.document.UserName;
            this.settingViewModel.Password = this.document.Password;

            foreach (var mapping in this.document.PropertyMappingCollection)
            {
                this.settingViewModel.PropertyMappingCollection[mapping.Key] = mapping.Value;
            }

            foreach (var field in this.tfsFieldsCache)
            {
                this.settingViewModel.TFSFields.Add(field);
                if (field.AllowedValues.Any())
                {
                    this.settingViewModel.BugFilterFields.Add(field);
                }
            }

            this.settingViewModel.BugFilterField = this.document.BugFilterField;
            this.settingViewModel.BugFilterValue = this.document.BugFilterValue;
            this.settingViewModel.PriorityRed = this.document.PriorityRed;

            UpdateSettingDialogPriorityValues();

            if (this.CanQuery)
            {
                if (string.IsNullOrWhiteSpace(this.settingViewModel.BugFilterField)
                    && string.IsNullOrWhiteSpace(this.settingViewModel.BugFilterValue)
                    && this.settingViewModel.PropertyMappingCollection
                            .Where(x => !ignoreField.Contains(x.Key))
                            .Any(x =>
                            {
                                return string.IsNullOrWhiteSpace(x.Value);
                            }))
                {
                    this.settingViewModel.ProgressType = ProgressTypes.SuccessWithError;
                }
                else
                {
                    this.settingViewModel.ProgressType = ProgressTypes.Success;
                }
                this.settingViewModel.ProgressValue = 100;
            }

            AddWeakEventListener(this.settingViewModel, SettingViewModelPropertyChanged);

            return this.settingViewModel.View as ISettingView;
        }