Example #1
0
        public void VerifyThatDiscussionsItemAreAddedAndRemoved()
        {
            this.permissionService.Setup(x => x.CanWrite(It.IsAny <Thing>())).Returns(true);

            var discussion1 = new EngineeringModelDataDiscussionItem(Guid.NewGuid(), this.assembler.Cache, this.uri);

            discussion1.Author  = this.participant;
            discussion1.Content = "discussion 1";

            this.rid.Discussion.Add(discussion1);

            var vm = new AnnotationFloatingDialogViewModel(this.rid, this.session.Object);

            Assert.AreEqual(1, vm.DiscussionRows.Count);

            var discussionRow = vm.DiscussionRows.Single();

            discussionRow.Content = "mod";

            discussionRow.SaveCommand.Execute(null);
            this.session.Verify(x => x.Write(It.IsAny <OperationContainer>()));

            discussionRow.CancelCommand.Execute(null);
            Assert.AreEqual(discussion1.Content, discussionRow.Content);

            this.rid.Discussion.Clear();
            this.rev.SetValue(this.rid, 10);

            CDPMessageBus.Current.SendObjectChangeEvent(this.rid, EventKind.Updated);
            Assert.AreEqual(0, vm.DiscussionRows.Count);
        }
Example #2
0
        public void VerifyThatViewModelIsPopulatedAndCommandWorks()
        {
            this.permissionService.Setup(x => x.CanWrite(It.IsAny <ClassKind>(), It.IsAny <Thing>())).Returns(true);
            this.permissionService.Setup(x => x.CanWrite(It.IsAny <Thing>())).Returns(true);

            this.rid.Title     = "title";
            this.rid.Content   = "content";
            this.rid.ShortName = "sn";

            var vm = new AnnotationFloatingDialogViewModel(this.rid, this.session.Object);

            Assert.AreEqual(vm.ShortName, this.rid.ShortName);
            Assert.AreEqual(vm.Title, this.rid.Title);
            Assert.AreEqual(vm.Content, this.rid.Content);
            Assert.AreEqual(0, vm.DiscussionRows.Count);
            Assert.IsFalse(vm.PostDiscussionItemCommand.CanExecute(null));

            vm.NewDiscussionItemText = "test";
            Assert.IsTrue(vm.PostDiscussionItemCommand.CanExecute(null));

            vm.PostDiscussionItemCommand.Execute(null);
            this.session.Verify(x => x.Write(It.IsAny <OperationContainer>()));
        }
Example #3
0
        /// <summary>
        /// Executes the <see cref="OpenAnnotationWindowCommand"/>
        /// </summary>
        /// <param name="annotation">The associated <see cref="ModellingAnnotationItem"/></param>
        protected override void ExecuteOpenAnnotationWindow(ModellingAnnotationItem annotation)
        {
            var vm = new AnnotationFloatingDialogViewModel(annotation, this.Session);

            this.DialogNavigationService.NavigateFloating(vm);
        }