Ejemplo n.º 1
0
 public DestructionController()
 {
     _db         = new DistilDBContext();
     _dl         = new DataLayer(_db);
     _purchase   = new PurchaseWorkflow(_db, _dl);
     _production = new ProductionWorkflow(_db, _dl);
 }
Ejemplo n.º 2
0
        public void UseAverageMock()
        {
            var averageMock      = new Mock <IDiscountLogic>();
            var expectedPurchase = new Purchase();

            expectedPurchase.AddItem(new Item(400));

            var purchaseWorkflow
                = new PurchaseWorkflow(averageMock.Object);

            purchaseWorkflow.AddItemsStep(new Item(400));
            purchaseWorkflow.DiscountStep();

            averageMock.Verify(am => am.ApplyDiscount(
                                   It.IsInRange(1, long.MaxValue,
                                                Range.Inclusive),
                                   "DISCOUNT_123",
                                   It.Is <Purchase>(p => p.Equals(expectedPurchase))));
        }
Ejemplo n.º 3
0
        public void UseDemandingMock()
        {
            var demandingMock    = new Mock <IDiscountLogic>();
            var expectedPurchase = new Purchase();

            expectedPurchase.AddItem(new Item(400));
            expectedPurchase.AddItem(new Item(650));

            var purchaseWorkflow
                = new PurchaseWorkflow(demandingMock.Object);

            purchaseWorkflow.AddItemsStep(new Item(400),
                                          new Item(650));
            purchaseWorkflow.DiscountStep();
            purchaseWorkflow.DiscountStep();
            purchaseWorkflow.DiscountStep();

            demandingMock.Verify(am => am.ApplyDiscount(
                                     It.IsInRange(1000000L, 9999999L,
                                                  Range.Inclusive),
                                     It.IsRegex("DISCOUNT_\\d{3,10}[X-Z]?"),
                                     It.Is <Purchase>(p => IsPremiumPurchase(p))),
                                 Times.Exactly(3));
        }
Ejemplo n.º 4
0
 public PurchaseController()
 {
     _db       = new DistilDBContext();
     _dl       = new DataLayer(_db);
     _purchase = new PurchaseWorkflow(_db, _dl);
 }