public void ProductApplicationService_SubmitApplicationFor_WhenCalledWithSelectiveInvoiceDiscount_ShouldReturnOne()
        {
            _confidentialInvoiceServiceMock.Setup(m => m.SubmitApplicationFor(It.IsAny <CompanyDataRequest>(), It.IsAny <decimal>(), It.IsAny <decimal>(), It.IsAny <decimal>())).Returns(_result.Object);
            var result = _sut.SubmitApplicationFor(_sellerApplication);

            result.Should().Be(1);
        }
        public void SubmitApplicationFor_ShouldCallSelectInvoiceService_WhenGetSelectiveInvoiceDiscountProduct()
        {
            var sellerApplication = CreateSellerApplicationWithSelectiveInvoiceDiscount();

            _productApplicationService.SubmitApplicationFor(sellerApplication);

            A.CallTo(
                () => _selectInvoiceService.SubmitApplicationFor(
                    A <string> ._,
                    A <decimal> ._,
                    A <decimal> ._))
            .MustHaveHappened();
        }
        public void ProductApplicationService_SubmitApplicationFor_WhenCalledWithSelectiveInvoiceDiscount_ShouldReturnExpectedResult()
        {
            // Arrange
            ISellerApplication application = CreateSelectiveInvoiceDiscount();

            int expected = 999;

            SetupMockSelectInvoiceService(application, expected);

            // Act
            int result = sut.SubmitApplicationFor(application);

            // Assert
            result.Should().Be(expected);
            _mockSelectInvoiceService.VerifyAll();
        }