public void RenewalService_MessageGenerator_Test()
        {
            var renewalService = new RenewalMessageService(new CustomerService(MockCustomerRepository.Object, new NullLogger <CustomerService>()), new NullLogger <RenewalMessageService>());
            var result         = renewalService.GenerateRenewalMessage(InputPath, OutputPath, TemplatePath);

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(string));
        }
        public void CustomerNameNullTest()
        {
            InputPath = $"{Directory.GetCurrentDirectory()}\\TestData\\CustomerNameNull.csv";
            MockCustomerRepository.Setup(a => a.GetCustomers(It.IsAny <string>()))
            .Returns(GetCustomers(InputPath));
            var renewalService = new RenewalMessageService(new CustomerService(MockCustomerRepository.Object, new NullLogger <CustomerService>()), new NullLogger <RenewalMessageService>());
            var result         = renewalService.GenerateRenewalMessage(InputPath, OutputPath, TemplatePath);

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(string));
        }
        public void FetchCSVWithMissingData_Test()
        {
            InputPath = $"{GetApplicationRoot()}\\TestData\\CustomerWrongTestData.csv";
            MockCustomerRepository.Setup(a => a.GetCustomers(It.IsAny <string>()))
            .Returns(GetCustomers(InputPath));
            var renewalService = new RenewalMessageService(new CustomerService(MockCustomerRepository.Object, new NullLogger <CustomerService>()), new NullLogger <RenewalMessageService>());
            var result         = renewalService.GenerateRenewalMessage(InputPath, OutputPath, TemplatePath);

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(string));
        }
        public void FetchWrongCSVTest()
        {
            InputPath = $"{GetApplicationRoot()}\\TestData\\wrong.csv";
            MockCustomerRepository.Setup(a => a.GetCustomers(InputPath))
            .Returns(GetCustomers(InputPath));
            var renewalService = new RenewalMessageService(new CustomerService(MockCustomerRepository.Object, new NullLogger <CustomerService>()), new NullLogger <RenewalMessageService>());
            var result         = renewalService.GenerateRenewalMessage(InputPath, OutputPath, TemplatePath);

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(string));
            Assert.AreEqual("0 renewal letter generated.", result);
        }