private static void GivenTransportablesInStorage(IEnumerable <Transportable> transportables, TransportableStorage storage) { foreach (Transportable transportable in transportables) { storage.Transportables.Add(transportable); transportable.Transporter = storage; } }
public void UpdateTakeFromSource() { #region Setup var mockComponentActorFactory = new Mock <ComponentActorFactory <TransportableStorage> >(Sys); mockComponentActorFactory.Setup(f => f.GetProps(It.IsAny <TransportableStorage>())) .Returns(Props.Create(() => new EntityTestActor())); var sourceEntity = new Entity(); var resourceContainer = new ResourceContainer(); var sourceTransporter = new TransportableStorage(); // TODO: Entity might not be needed var containerEntity = new Entity { resourceContainer, new Transportable { Transporter = sourceTransporter } }; var orderTargetTransportable = new TransportableStorage(); var orderTargetEntity = new Entity { orderTargetTransportable }; var deliverOrder = new DeliverContainerToStorage(resourceContainer, orderTargetEntity, mockComponentActorFactory.Object); var transporterStorage = new TransportableStorage(); var transporterEntity = new Entity { transporterStorage }; #endregion deliverOrder.Update(transporterEntity, new GameTime()); var messageToEntityComponent = ExpectMsg <MessageToEntityComponentFirstOfType <TransportableStorage> >(); Assert.Equal(sourceEntity.Id, messageToEntityComponent.EntityId); var giveTransportableTo = Assert.IsType <GiveTransportableTo>(messageToEntityComponent.Message); Assert.Equal(resourceContainer.Id, giveTransportableTo.Transportable.Id); Assert.Equal(transporterStorage.Id, giveTransportableTo.Target.Id); }
private static void GivenStorageHasCapacity(TransportableStorage storage, uint capacity) { storage.Capacity = capacity; }
private void GivenTargetStorageExists() { targetStorage = CreateEmptyStorage(); }
private void TellMessageToStorage(GiveTransportableTo message, TransportableStorage storage) { SetupTransportableStorageActor(storage).Tell(message); }
private IActorRef SetupTransportableStorageActor(TransportableStorage storage) { return(Sys.ActorOf(TransportableStorageActor.Props(storage))); }
private void GivenSourceStorageExists() { sourceStorage = CreateEmptyStorage(); }
public GiveTransportableTo([NotNull] Components.Transportable transportable, [NotNull] TransportableStorage target) { Transportable = transportable; Target = target; }