コード例 #1
0
            public void ShowSummary()
            {
                ResourceInventory inventory = ResourceInventory.Stocktake(_containers, Parsers.ParseTags(_tags), Parsers.ParseResourceFilter(_allow));

                _ctx.MaxAmount = (MyFixedPoint)inventory.GetMaximum();
                _panel.WriteText(_renderer.Render(inventory.GetResources().Select(resource => new ResourceItemRenderer(resource))));
            }
コード例 #2
0
            public void TestCompareContainerResources()
            {
                ResourceInventory inventory = new ResourceInventory(new TestContainer(new ResourceStack[] { new ResourceStack(new ResourceType("", "Ice")) }).GetResources());

                Assert.IsTrue(Enumerable.SequenceEqual(new List <ResourceStack>()
                {
                    new ResourceStack(new ResourceType("", "Ice"))
                }, inventory.GetResources()));
            }
コード例 #3
0
            public void TestConsolidateInventory()
            {
                ResourceInventory inventory = new ResourceInventory(new List <ResourceStack>()
                {
                    new ResourceStack(new ResourceType("", "Ice"), 22), new ResourceStack(new ResourceType("", "Ice"), 14)
                });

                Assert.IsTrue(Enumerable.SequenceEqual(new List <ResourceStack>()
                {
                    new ResourceStack(new ResourceType("", "Ice"), 14 + 22)
                }, inventory.GetResources()));
            }
コード例 #4
0
            public void TestInventoryAddition()
            {
                ResourceInventory inventoryA = new ResourceInventory(new List <ResourceStack>()
                {
                    new ResourceStack(new ResourceType("Ore", "Ice"), 20)
                });
                ResourceInventory inventoryB = new ResourceInventory(new List <ResourceStack>()
                {
                    new ResourceStack(new ResourceType("Ore", "Ice"), 50)
                });
                ResourceInventory inventoryC = inventoryA + inventoryB;

                Assert.IsTrue(Enumerable.SequenceEqual(new List <ResourceStack>()
                {
                    new ResourceStack(new ResourceType("Ore", "Ice"), 70)
                }, inventoryC.GetResources()));
            }
コード例 #5
0
 public bool Equals(ResourceInventory that)
 {
     if (Object.ReferenceEquals(that, null))
     {
         return(false);
     }
     if (Object.ReferenceEquals(this, that))
     {
         return(true);
     }
     if (this.GetType() != that.GetType())
     {
         return(false);
     }
     return(Enumerable.SequenceEqual(this.GetResources().OrderBy(kvp => kvp.Type), that.GetResources().OrderBy(kvp => kvp.Type)));
 }