示例#1
0
 public void RulePrinter_UsesSimpleRuleProperly()
 {
     var expectedResults = new int[100].Select((a, b) =>
                                               (b + 1) != 21
                                                   ? (b + 1).ToString()
                                                   : "blackjack").ToList();
     var results = new RulePrinter.Implementation.RulePrinters.RulePrinter(1, 100, new Rule(i => i == 21, "blackjack")).Execute().ToList();
     Assert.IsTrue(expectedResults.SequenceEqual(results));
 }
示例#2
0
 public void RulePrinter_InstantiatesProperly()
 {
     const long start = 1;
     const long end = 100;
     var rules = new[] {new Rule(i => i%3 == 0, "fizz")};
     var ruleprinter = new RulePrinter.Implementation.RulePrinters.RulePrinter(start, end, rules);
     Assert.AreEqual(start, ruleprinter.Start);
     Assert.AreEqual(end, ruleprinter.End);
     Assert.AreEqual(rules.Count(), ruleprinter.Rules.Count());
     Assert.IsNotNull(ruleprinter.DefaultResult);
 }
示例#3
0
 public void RulePrinter_ThrowsErrorOnBadConfiguration()
 {
     var results = new RulePrinter.Implementation.RulePrinters.RulePrinter(-1, 0).Execute().ToList();
 }
示例#4
0
 public void RulePrinter_IteratesFrom1To100()
 {
     var expectedResults = new int[100].Select((a,b) => (b + 1).ToString()).ToList();
     var results = new RulePrinter.Implementation.RulePrinters.RulePrinter(1, 100).Execute().ToList();
     Assert.IsTrue(expectedResults.SequenceEqual(results));
 }