public void VerifyThatDragOverWorks() { var row = new GlossaryRowViewModel(this.glossary1, this.session.Object, null); this.dropinfo.Setup(x => x.Payload).Returns(this.sitedir); this.dropinfo.SetupProperty(x => x.Effects); row.DragOver(this.dropinfo.Object); Assert.AreEqual(DragDropEffects.None, this.dropinfo.Object.Effects); //dragover current row this.dropinfo.Setup(x => x.Payload).Returns(this.term1); row.DragOver(this.dropinfo.Object); Assert.AreEqual(DragDropEffects.None, this.dropinfo.Object.Effects); //dragover a term in a another rdl that requires the current one var row2 = new GlossaryRowViewModel(this.glossary2, this.session.Object, null); row2.DragOver(this.dropinfo.Object); Assert.AreEqual(DragDropEffects.None, this.dropinfo.Object.Effects); //dragover a term in an element of the required rdl this.dropinfo.Setup(x => x.Payload).Returns(this.term2); row.DragOver(this.dropinfo.Object); Assert.AreEqual(DragDropEffects.Move, this.dropinfo.Object.Effects); }
public void VerifyThatDropWorks() { this.dropinfo.Setup(x => x.Payload).Returns(this.term2); this.dropinfo.Setup(x => x.Effects).Returns(DragDropEffects.Move); var row = new GlossaryRowViewModel(this.glossary1, this.session.Object, null); row.Drop(this.dropinfo.Object); this.session.Verify(x => x.Write(It.IsAny <OperationContainer>()), Times.Exactly(1)); }
public void VerifyThatTermEventsAreCaught() { var revProperty = typeof(Thing).GetProperty("RevisionNumber"); var glossary = new Glossary(Guid.NewGuid(), null, this.uri) { Name = "test Glossary", ShortName = "TG" }; this.srdl.Glossary.Add(glossary); var glossaryRow = new GlossaryRowViewModel(glossary, this.session.Object, null); this.glossaryBrowser.Glossaries.Add(glossaryRow); var term = new Term(Guid.NewGuid(), null, this.uri); glossary.Term.Add(term); revProperty.SetValue(glossary, 25); CDPMessageBus.Current.SendObjectChangeEvent(glossary, EventKind.Updated); Assert.AreEqual(1, glossaryRow.ContainedRows.Count); term.Name = "modified name"; // workaround to modify a read-only field revProperty.SetValue(term, 50); CDPMessageBus.Current.SendObjectChangeEvent(term, EventKind.Updated); var row = (TermRowViewModel)glossaryRow.ContainedRows.Single(); Assert.AreEqual(term.Name, row.Name); glossary.Term.Clear(); revProperty.SetValue(glossary, 50); CDPMessageBus.Current.SendObjectChangeEvent(glossary, EventKind.Updated); Assert.AreEqual(0, glossaryRow.ContainedRows.Count); }