Ejemplo n.º 1
0
        public void StockItem_should_be_able_to_receive_stock()
        {
            const int numberOfItems = 7;
            var       dateReceived  = new DateTime(2011, 2, 14);

            stockItem.ReceiveStock(numberOfItems, dateReceived, user);

            stockItem.Level.ShouldEqual(7);
            stockItem.History.Count.ShouldEqual(2);
            var itemsRecieved = stockItem.History[1] as ReceivedStock;

            itemsRecieved.ShouldNotBeNull();
            itemsRecieved.DateTime.ShouldEqual(dateReceived);
            itemsRecieved.Description.ShouldEqual("7 Received");
            itemsRecieved.User.ShouldEqual(user);
            itemsRecieved.Level.ShouldEqual(7);
        }
Ejemplo n.º 2
0
        public void AnyModification_should_raise_domain_event()
        {
            IDomainEvent capturedDomainEvent = null;
            using (DomainEvent.TestWith(domainEvent => { capturedDomainEvent = domainEvent; }))
            {
                stockItem = StockItem.Create(productName, sizeName, dateCreated, user);
                capturedDomainEvent.ShouldBe<StockItemCreated>();

                stockItem.ReceiveStock(10, dateCreated, user);
                capturedDomainEvent.ShouldBe<ReceivedStock>();

                stockItem.Dispatch(5, 1, dateCreated, user);
                capturedDomainEvent.ShouldBe<DispatchedStock>();
            }
        }
Ejemplo n.º 3
0
        public void AnyModification_should_raise_domain_event()
        {
            IDomainEvent capturedDomainEvent = null;

            using (DomainEvent.TestWith(domainEvent => { capturedDomainEvent = domainEvent; }))
            {
                stockItem = StockItem.Create(productName, sizeName, dateCreated, user);
                capturedDomainEvent.ShouldBe <StockItemCreated>();

                stockItem.ReceiveStock(10, dateCreated, user);
                capturedDomainEvent.ShouldBe <ReceivedStock>();

                stockItem.Dispatch(5, 1, dateCreated, user);
                capturedDomainEvent.ShouldBe <DispatchedStock>();
            }
        }