public void AddingAndRemovingHandlerInTheSameFrameExecutesNoCode()
 {
     var entity = new MockEntity().Start<IncrementCounter>();
     entity.Stop<IncrementCounter>();
     entities.RunEntities();
     Assert.IsFalse(entity.Contains<string>());
 }
		public void SelectingEntityHandlerProcessesEntitiesThatPassTheSelectionCriteria()
		{
			var entities = new MockEntitiesRunner(typeof(IncludeOnlyEntitiesWithPositiveFloats));
			var first = new MockEntity().Start<IncludeOnlyEntitiesWithPositiveFloats>().Add(3.0f);
			var excluded = new MockEntity().Start<IncludeOnlyEntitiesWithPositiveFloats>().Add(-1.0f);
			var second = new MockEntity().Start<IncludeOnlyEntitiesWithPositiveFloats>().Add(2.0f);
			entities.RunEntities();
			var start = first.Get<int>();
			Assert.IsFalse(excluded.Contains<int>());
			Assert.AreEqual(start + 1, second.Get<int>());
		}
Example #3
0
		public void AddAndRemoveComponent()
		{
			Assert.AreEqual(1, entities.NumberOfEntities);
			var entity = new MockEntity().Add(new object());
			Assert.AreEqual(2, entities.NumberOfEntities);
			Assert.AreEqual(1, entity.NumberOfComponents);
			Assert.IsNotNull(entity.Get<object>());
			entity.Remove<object>();
			Assert.AreEqual(0, entity.NumberOfComponents);
			Assert.IsFalse(entity.Contains<object>());
			Assert.Throws<ArgumentNullException>(() => new MockEntity().Add<object>(null));
		}
 public void RemovingHandlerWhenNeverAddedExecutesNoCode()
 {
     var entity = new MockEntity();
     entities.RunEntities();
     entity.Stop<IncrementCounter>();
     entities.RunEntities();
     Assert.IsFalse(entity.Contains<string>());
 }