Exemple #1
0
        public void MakeApplicationQueriesTheDatabaseForCards()
        {
            DatabaseAccessService.ReadAsJSON(Arg.Any <string>(), Arg.Any <SqlParameter[]>())
            .Returns("{}");

            ApplicationService.MakeApplication("Jim", DOB, 100);

            DatabaseAccessService.Received(1).ReadAsJSON(FindApplicableCardQuery, Arg.Any <SqlParameter[]>());
        }
Exemple #2
0
        public CreditCardModel FindCard(int cardId)
        {
            var statement = $"SELECT * FROM CreditCards WHERE Id = @CardId";
            var sqlParams = new SqlParameter[]
            {
                new SqlParameter("@CardId", cardId)
            };
            var json = databaseAccess.ReadAsJSON(statement, sqlParams);

            return(Newtonsoft.Json.JsonConvert.DeserializeObject <CreditCardModel>(json));
        }
Exemple #3
0
        public ApplicationResponse MakeApplication(string name, DateTime dob, int salary)
        {
            int ageInYears = DateTime.Today.Year - dob.Year;
            var parameters = BuildCardLocationParams(salary, ageInYears);
            var result     = database.ReadAsJSON(FindApplicableCardQuery, parameters);

            if (result == "{}")
            {
                return(UnsuccessfulApplication(name, dob));
            }
            return(SuccessfulApplication(name, dob, result));
        }
        public void ItReturnsTheRetrievedCard()
        {
            var card = new CreditCardModel
            {
                Id = 1, CardName = "Test Card", Apr = 1.5F, ImageUrl = "image.com", MaximumSalary = 100, MinimumAge = 19, MinimumSalary = 10, SalesText = ""
            };

            DatabaseAccessService.ReadAsJSON(Arg.Any <string>(), Arg.Any <SqlParameter[]>()).Returns(JsonConvert.SerializeObject(card));

            var result = CardService.FindCard(1);

            result.Should().BeEquivalentTo(card);
        }