public void RulesTests_DebitCardAccountRule_PassesFor_ClassicBundle() { var bundle = new ClassicBundle().GetDefault; var rule = new DebitCardAccountRule(); var result = rule.Execute(bundle); Assert.IsTrue(result); }
public void ProductBundleService_GetsAnswersFor_ClassicBundle() { var bundle = new ClassicBundle(); var answers = _productBundleService.GetRulesConditions(bundle); var expectedAnswers = new[] { "Age > 17", "Income > 0" }; Assert.IsTrue(answers.Length == expectedAnswers.Length); Assert.IsTrue(answers.All(expectedAnswers.Contains)); }
public void ProductBundleService_ModifyBundle_Returns_ClassicBundle(int income) { var classicBundle = new ClassicBundle(); var response = _productBundleService.ModifyBundle ( new Answers { AgeAnswer = new AgeAnswer(18), StudentAnswer = new StudentAnswer(true), IncomeAnswer = new IncomeAnswer(income) }, classicBundle, new Product[] { new CurrentAccount(), new DebitCard() } ); Assert.IsInstanceOf <ClassicBundle>(response.ResultBundle); }
public void ProductBundleService_ModifyBundle_Returns_StudentBundleForRichStudent() { var classicBundle = new ClassicBundle(); var response = _productBundleService.ModifyBundle ( new Answers { AgeAnswer = new AgeAnswer(18), StudentAnswer = new StudentAnswer(true), IncomeAnswer = new IncomeAnswer(IncomeRangeEnum.Range_12001_40000) }, classicBundle, new Product[] { new StudentAccount(), new DebitCard(), new CreditCard() } ); Assert.IsInstanceOf <StudentBundle>(response.ResultBundle); }