public OrdersController(
     IOrderRepository orderRepository,
     IInvoiceGenerator invoiceGenerator)
 {
     this.orderRepository  = orderRepository;
     this.invoiceGenerator = invoiceGenerator;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="OrderProcessor`1"/> class.
 /// </summary>
 /// <param name="testData">An instance of <see cref="ITestData`1"/> for order generation.</param>
 /// <param name="invoiceGenerator">An instance of <see cref="IInvoiceGenerator`1"/> for invoice files generation.</param>
 /// <param name="mailManager">An instance of <see cref="IMailManager`1"/> for invoice sending.</param>
 public OrderProcessor(ITestData testData, IInvoiceGenerator invoiceGenerator,
                       IMailManager mailManager)
 {
     this.testData         = testData;
     this.invoiceGenerator = invoiceGenerator;
     this.mailManager      = mailManager;
 }
Esempio n. 3
0
 public OrdersController(IOrdersRepository ordersRepo, IInvoiceGenerator invoiceGenerator,
                         IFeeRepository feeRepository, ICustomersRepository customersRepository)
 {
     OrdersRepo          = ordersRepo;
     InvoiceGenerator    = invoiceGenerator;
     FeeRepository       = feeRepository;
     CustomersRepository = customersRepository;
 }
 public void can_generate_invoice()
 {
     _sut = new InvoiceGenerator(new FakeTimeBlockRepo());
     var start = DateTime.Parse("11/1/2012");
     var end = DateTime.Parse("11/30/2012");
     var inv = _sut.Create(start, end);
     inv.Lines.Count.ShouldEqual(2);
 }
 public GenerateInvoiceUseCase(
     IOrderRepository orderRepo,
     IInvoiceGenerator invoiceGen,
     IInvoiceRepository invoiceRepo)
 {
     _orderRepo   = orderRepo;
     _invoiceGen  = invoiceGen;
     _invoiceRepo = invoiceRepo;
 }
Esempio n. 6
0
        public void Setup()
        {
            _supplier = Substitute.For <IPerson>();
            _supplier.IsVatPayer.Returns(true);
            _supplier.Country.Returns("Lithuania");

            _customer = Substitute.For <IPerson>();

            _eUCountryRequester = Substitute.For <IEUCountryRequester>();
            _eUCountryChecker   = Substitute.For <IEUCountryChecker>();
            _vATReuester        = Substitute.For <IVATRequester>();
            _invoiceGenerator   = new InvoiceGenerator(_vATReuester, _eUCountryChecker);
        }
Esempio n. 7
0
        public void Sould_Return_Country_VAT_If_Supplier_And_Cutomer_In_The_Same_Country()
        {
            var expectedResult = 21;

            _customer.Country.Returns("Lithuania");
            _eUCountryChecker.IsEUCoutry(_customer.Country).Returns(true);
            _eUCountryChecker.GetEUCoutryAlpha2Code(_customer.Country).Returns("lt");
            _vATReuester.GetEUCountryVAT(_eUCountryChecker.GetEUCoutryAlpha2Code(_customer.Country)).Returns(21);
            _invoiceGenerator = new InvoiceGenerator(_vATReuester, _eUCountryChecker);

            var result = _invoiceGenerator.GenerateInvoiceVAT(_supplier, _customer);

            Assert.AreEqual(result, expectedResult);
        }
Esempio n. 8
0
        public void Sould_Return_Countiry_VAT_If_Supplier_Is_VAT_Payer_And_Customer_Not_VAT_Payer_And_Customer_Not_In_EU_Region_And_Supplier_In_Different_Country()
        {
            var expectedResult = 21;

            _customer.IsVatPayer.Returns(false);
            _eUCountryChecker.IsEUCoutry(_customer.Country).Returns(true);
            _eUCountryChecker.GetEUCoutryAlpha2Code(_customer.Country).Returns("lt");
            _vATReuester.GetEUCountryVAT(_eUCountryChecker.GetEUCoutryAlpha2Code(_customer.Country)).Returns(21);
            _invoiceGenerator = new InvoiceGenerator(_vATReuester, _eUCountryChecker);

            var result = _invoiceGenerator.GenerateInvoiceVAT(_supplier, _customer);

            Assert.AreEqual(result, expectedResult);
        }
Esempio n. 9
0
 public ServiceManager(IInvoiceGenerator invoiceGenerator)
 {
     _invoiceGenerator = invoiceGenerator;
 }