public void should_transfer_all_from_crate_to_a_silo_2()
        {
            ITransferManager transfer = new TransferManager();

            Commodity grain = new Commodity("Grain1", "Grain", UnitOfMeasurement.Kilogram, 0.01, false);
            IItemStore grainContainer = new ItemStoreComposite(2);
            bool transfered = transfer.Item(101, grain).To(grainContainer);

            Assert.IsTrue(transfered);
            Assert.AreEqual(101, grainContainer["Grain"].Used);

            IItemStore toContainer = new ItemStoreComposite(1);

            transfered = transfer.Item(5, grain).From(grainContainer).To(toContainer);

            Assert.IsTrue(transfered);
            Assert.AreEqual(1, grainContainer["Grain"].Slots);

            Assert.AreEqual(5, toContainer["Grain"].Used);
        }
        public void ensure_that_storage_with_1_slot_behaves_as_expected()
        {
            ITransferManager transfer = new TransferManager();

            IItemStore storage = new ItemStoreComposite(1);
            ICanStore grain = new Commodity("Grain1", "Grain", UnitOfMeasurement.Kilogram, 0.001, false);

            transfer.Item(5, grain).To(storage);

            Assert.AreEqual(1, storage.SlotsUsed);

            Assert.IsNotNull(storage["Grain"]);

            IItemContainer grainContainer;
            bool transfered = transfer.Item(5, grain).From(storage).ToContainer(out grainContainer);

            Assert.IsTrue(transfered);
            Assert.AreEqual(5, grainContainer.Used);
            Assert.IsNull(storage["Grain"]);
        }
Esempio n. 3
0
 private void InitModuleItemStores()
 {
     IItemStore commonStore1 = new ItemStoreComposite(5);
     _moduleItemStores.Add(1, commonStore1);
     _moduleItemStores.Add(2, commonStore1);
 }