コード例 #1
0
ファイル: ManufacturingTask.cs プロジェクト: andy-uq/Echo
        private void BuildQuanta(BluePrintInfo bluePrint)
        {
            var firstLoad = new List<ItemState>();
            var subsequentLoads = new List<ItemState>();

            var quantaFactor = (double)TimeRemaining;
            foreach (var item in bluePrint.Materials)
            {
                var quanta = new ItemState() {Code = item.Code, Quantity = (uint) System.Math.Floor(item.Quantity/quantaFactor)};
                subsequentLoads.Add(quanta);

                firstLoad.Add(new ItemState { Code = item.Code, Quantity = item.Quantity - (uint )System.Math.Floor(quanta.Quantity * (quantaFactor - 1)) } );
            }

            _firstLoad = firstLoad.ToArray();
            _subsequentLoad = subsequentLoads.ToArray();
        }
コード例 #2
0
ファイル: ManufacturingTests.cs プロジェクト: andy-uq/Echo
 private void SetupItem(BluePrintInfo bluePrint)
 {
     var item = TestItems.BuildItem(bluePrint.Code, bluePrint.TargetQuantity);
     _itemFactory.Setup(f => f.Build(bluePrint.Code, bluePrint.TargetQuantity)).Returns(item);
 }
コード例 #3
0
ファイル: Agent.cs プロジェクト: andy-uq/Echo
 public bool CanUse(BluePrintInfo bluePrint)
 {
     Ensure.That(bluePrint).IsNotNull();
     return CanUse(bluePrint.BuildRequirements);
 }
コード例 #4
0
ファイル: BluePrintTests.cs プロジェクト: andy-uq/Echo
        public void NewBluePrint()
        {
            var bluePrint = new BluePrintInfo();

            bluePrint.BuildRequirements.ShouldBeEmpty();
            bluePrint.Materials.ShouldBeEmpty();
        }