Ejemplo n.º 1
0
        public void Updating_InvoiceStatus_Triggers_Events_And_Invoice_Is_Passed()
        {
            _invoice.Id = 12;
            _invoice.ResetDirtyProperties();
            CommitCalled = false;

            _invoice.InvoiceStatus = MockInvoiceStatusDataMaker.InvoiceStatusCompletedMock();

            _invoiceService.Save(_invoice);

            Assert.IsTrue(_statusBefore);
            var firstOrDefault = _beforeInvoice.FirstOrDefault();

            if (firstOrDefault != null)
            {
                Assert.AreEqual(_invoice.InvoiceNumber, firstOrDefault.InvoiceNumber);
            }
            else
            {
                Assert.Fail();
            }

            Assert.IsTrue(_statusAfter);
            var orDefault = _afterInvoice.FirstOrDefault();

            if (orDefault != null)
            {
                Assert.AreEqual(_invoice.InvoiceDate, orDefault.InvoiceDate);
            }
            else
            {
                Assert.Fail();
            }
        }
Ejemplo n.º 2
0
        public void Event_Handler_Returns_Which_Invoices_In_Collection_Have_Status_Changed()
        {
            var invoices = new List <IInvoice>()
            {
                { MakeFakeInvoice(1) },
                { MakeFakeInvoice(2) },
                { MakeFakeInvoice(3) },
                { MakeFakeInvoice(4) },
                { MakeFakeInvoice(5) }
            };

            invoices[1].InvoiceStatus = MockInvoiceStatusDataMaker.InvoiceStatusCompletedMock();
            invoices[2].InvoiceStatus = MockInvoiceStatusDataMaker.InvoiceStatusCompletedMock();
            invoices[4].InvoiceStatus = MockInvoiceStatusDataMaker.InvoiceStatusCompletedMock();

            _invoiceService.Save(invoices);

            Console.Write(_beforeInvoice.Count().ToString());

            Assert.IsTrue(3 == _beforeInvoice.Count());
            Assert.IsTrue(invoices[1].InvoiceStatus.Name == _beforeInvoice.First().InvoiceStatus.Name);
            Assert.IsTrue(invoices[4].InvoiceStatus.Name == _beforeInvoice.Last().InvoiceStatus.Name);
        }