예제 #1
0
        public void VerifyThatOrderOfPossibleStatesIsUpdated()
        {
            var list = new PossibleFiniteStateList(Guid.NewGuid(), this.cache, this.uri);

            this.iteration.PossibleFiniteStateList.Add(list);
            var row = new PossibleFiniteStateListRowViewModel(list, this.session.Object, null);

            var state1 = new PossibleFiniteState(Guid.NewGuid(), this.cache, this.uri)
            {
                Name = "1"
            };
            var state2 = new PossibleFiniteState(Guid.NewGuid(), this.cache, this.uri)
            {
                Name = "2"
            };

            list.PossibleState.Add(state1);
            list.PossibleState.Add(state2);

            this.rev.SetValue(list, 2);
            CDPMessageBus.Current.SendObjectChangeEvent(list, EventKind.Updated);
            Assert.AreEqual(2, row.ContainedRows.Count);
            Assert.AreEqual("1", ((PossibleFiniteStateRowViewModel)row.ContainedRows.First()).Name);
            Assert.AreEqual("2", ((PossibleFiniteStateRowViewModel)row.ContainedRows.Last()).Name);

            list.PossibleState.Move(1, 0);
            this.rev.SetValue(list, 3);
            CDPMessageBus.Current.SendObjectChangeEvent(list, EventKind.Updated);
            Assert.AreEqual("2", ((PossibleFiniteStateRowViewModel)row.ContainedRows.First()).Name);
            Assert.AreEqual("1", ((PossibleFiniteStateRowViewModel)row.ContainedRows.Last()).Name);
        }
예제 #2
0
        public void VerifyThatTreeIsCorrectlyBuilt()
        {
            var list = new PossibleFiniteStateList(Guid.NewGuid(), this.cache, this.uri);

            this.iteration.PossibleFiniteStateList.Add(list);
            var row = new PossibleFiniteStateListRowViewModel(list, this.session.Object, null);

            Assert.IsEmpty(row.ContainedRows);
            var state = new PossibleFiniteState(Guid.NewGuid(), this.cache, this.uri);

            list.PossibleState.Add(state);

            rev.SetValue(list, 2);
            CDPMessageBus.Current.SendObjectChangeEvent(list, EventKind.Updated);
            var staterow = (PossibleFiniteStateRowViewModel)row.ContainedRows.SingleOrDefault();

            Assert.IsNotNull(staterow);
        }