public void NoTargetsTest() { ObservableCollection <string> coll = new ObservableCollection <string>(new[] { "This", "is", "a", "test" }); var observer = new CollectionObserver(coll); coll.Add("Test"); }
private void Awake() { mGame = new Game(SavedPlayer, Level); mGame.LevelComplete += GameOnLevelComplete; var mapViewGO = Instantiate(MapViewPrefab); mapViewGO.transform.SetParent(transform); MapView = mapViewGO.GetComponentInChildren <MapView>(); MapView.Load(mGame.Map, this); var playerInst = Instantiate(PlayerPrefab); playerInst.transform.SetParent(mapViewGO.transform); PlayerView = playerInst.GetComponentInChildren <PlayerView>(); PlayerView.Load(mGame.Player, this); GenerateViewsByInfo(MapView.Monsters.transform, MonsterInfos, mGame.Monsters); var skills = new List <SkillView>(); GenerateViewsByInfo(MapView.Skills.transform, SkillInfos, mGame.AllSkills, view => skills.Add(view as SkillView)); AllSkills = skills.AsReadOnly(); mItemsObserver = new CollectionObserver <Item>(mGame.Items.Keys); mItemsObserver.Added += ItemAdded; mItemsObserver.Removed += ItemRemoved; }
public ListChangedCommand(CollectionObserver collection, NotifyCollectionChangedEventArgs e) { if (e.Action == System.Collections.Specialized.NotifyCollectionChangedAction.Add) { foreach (var item in e.NewItems) { snapshot = new Snapshot() { Collection = collection, NewState = DataState.Created, NewValue = item, Index = e.NewStartingIndex }; } } else if (e.Action == System.Collections.Specialized.NotifyCollectionChangedAction.Remove) { foreach (var item in e.OldItems) { snapshot = new Snapshot() { Collection = collection, NewState = DataState.Deleted, OldValue = item, Index = e.OldStartingIndex }; } } }
public void DisposeTest() { ObservableCollection <string> coll = new ObservableCollection <string>(new[] { "This", "is", "a", "test" }); ReceiverTest test = new ReceiverTest(); var observer = new CollectionObserver(coll); observer.CollectionChanged += test.OnObserver; observer.Dispose(); coll.Clear(); Assert.AreEqual(0, test.List.Count); }
public override void Load <T>(T model, Root root) { base.Load(model, root); if (mParticlesObserver != null) { mParticlesObserver.Added -= BulledsObserverOnAdded; mParticlesObserver.Removed -= BulledsObserverOnRemoved; } mParticlesObserver = new CollectionObserver <TParticle>(GetParticles(model)); mParticlesObserver.Added += BulledsObserverOnAdded; mParticlesObserver.Removed += BulledsObserverOnRemoved; }
public void BadEventTargetTest() { ObservableCollection <string> coll = new ObservableCollection <string>(new[] { "This", "is", "a", "test" }); var observer = new CollectionObserver(coll); observer.CollectionChanged += (s, e) => { throw new Exception("boom!"); }; ReceiverTest test = new ReceiverTest(); observer.CollectionChanged += test.OnObserver; coll.Add("Test"); coll.Clear(); Assert.AreEqual(2, test.List.Count); }
/// <inheritdoc /> public AggregationsExampleContext() { this.anyEqualsTestProperty = CollectionAggregation.Any <AggregationsExampleTextContext, string>(this.Texts, item => item.TextProperty, text => Equals(text, "Test")); this.sumProperty = CollectionAggregation.Sum(this.Texts, item => { float number; return(float.TryParse(item.Text, out number) ? number : 0.0f); }); var textsObserver = new CollectionObserver <AggregationsExampleTextContext>(); textsObserver.RegisterItem += item => item.Remove += this.OnRemoveText; textsObserver.UnregisterItem += item => item.Remove -= this.OnRemoveText; textsObserver.Init(this.Texts); }
public void CollectionObserverTest() { ObservableCollection <string> coll = new ObservableCollection <string>(new [] { "This", "is", "a", "test" }); ReceiverTest test = new ReceiverTest(); var observer = new CollectionObserver(coll); observer.CollectionChanged += test.OnObserver; coll.RemoveAt(0); coll.Add("of"); coll.Clear(); Assert.AreEqual(3, test.List.Count); Assert.AreEqual(NotifyCollectionChangedAction.Remove, test.List[0].Action); Assert.AreEqual(NotifyCollectionChangedAction.Add, test.List[1].Action); Assert.AreEqual(NotifyCollectionChangedAction.Reset, test.List[2].Action); }
public void GCDisposeTest() { ObservableCollection <string> coll = new ObservableCollection <string>(new[] { "This", "is", "a", "test" }); WeakReference weakReference = new WeakReference(coll); ReceiverTest test = new ReceiverTest(); var observer = new CollectionObserver(coll); observer.CollectionChanged += test.OnObserver; observer.Dispose(); coll = null; Assert.AreEqual(0, test.List.Count); test = null; GC.Collect(2, GCCollectionMode.Forced); Assert.IsFalse(weakReference.IsAlive); }
void Awake() { mBugObserver = new CollectionObserver <Item>(Root.PlayerView.Model <Player>().Inventory.Bag); mBugObserver.Added += BugObserverOnAdded; mBugObserver.Removed += BugObserverOnRemoved; }
public void NullCollectionTest() { var observer = new CollectionObserver(null); }