public void testFactory() { ScoringCategoryFactory factory = new ScoringCategoryFactory(); ScoringCategory cat; cat = factory.makeCategory("Ones"); Assert.AreEqual("Ones", cat.Name); cat = factory.makeCategory("Twos"); Assert.AreEqual("Twos", cat.Name); cat = factory.makeCategory("Threes"); Assert.AreEqual("Threes", cat.Name); cat = factory.makeCategory("Fours"); Assert.AreEqual("Fours", cat.Name); cat = factory.makeCategory("Fives"); Assert.AreEqual("Fives", cat.Name); cat = factory.makeCategory("Sixes"); Assert.AreEqual("Sixes", cat.Name); cat = factory.makeCategory("Three of a Kind"); Assert.AreEqual("Three of a Kind", cat.Name); Assert.IsInstanceOf(typeof(ThreeOfAKindCategory), cat); cat = factory.makeCategory("Four of a Kind"); Assert.AreEqual("Four of a Kind", cat.Name); Assert.IsInstanceOf(typeof(FourOfAKindCategory), cat); cat = factory.makeCategory("Full House"); Assert.AreEqual("Full House", cat.Name); Assert.IsInstanceOf(typeof(FullHouseCategory), cat); cat = factory.makeCategory("Small Straight"); Assert.AreEqual("Small Straight", cat.Name); Assert.IsInstanceOf(typeof(SmallStraightCategory), cat); cat = factory.makeCategory("Large Straight"); Assert.AreEqual("Large Straight", cat.Name); Assert.IsInstanceOf(typeof(LargeStraightCategory), cat); cat = factory.makeCategory("Yahtzee"); Assert.AreEqual("Yahtzee", cat.Name); cat = factory.makeCategory("Chance"); Assert.AreEqual("Chance", cat.Name); cat = factory.makeCategory("Big Straight"); Assert.AreEqual("Big Straight", cat.Name); cat = factory.makeCategory("Four of a Kind Alt"); Assert.IsInstanceOf(typeof(FourOfAKindAltCategory), cat); Assert.AreEqual("Four of a Kind", cat.Name); cat = factory.makeCategory("Full House Alt"); Assert.IsInstanceOf(typeof(FullHouseAltCategory), cat); Assert.AreEqual("Full House", cat.Name); cat = factory.makeCategory("Large Straight Alt"); Assert.IsInstanceOf(typeof(LargeStraightAltCategory), cat); Assert.AreEqual("Large Straight", cat.Name); cat = factory.makeCategory("Little Straight"); Assert.AreEqual("Little Straight", cat.Name); cat = factory.makeCategory("One Pair"); Assert.AreEqual("One Pair", cat.Name); cat = factory.makeCategory("Small Straight Alt"); Assert.IsInstanceOf(typeof(SmallStraightAltCategory), cat); Assert.AreEqual("Small Straight", cat.Name); cat = factory.makeCategory("Three of a Kind Alt"); Assert.IsInstanceOf(typeof(ThreeOfAKindAltCategory), cat); Assert.AreEqual("Three of a Kind", cat.Name); cat = factory.makeCategory("Two Pairs"); Assert.AreEqual("Two Pairs", cat.Name); }
private void SetupYatzy() { ScoringCategoryFactory factory = new ScoringCategoryFactory(); ScoringCategories.Add(factory.makeCategory("Ones")); ScoringCategories.Add(factory.makeCategory("Twos")); ScoringCategories.Add(factory.makeCategory("Threes")); ScoringCategories.Add(factory.makeCategory("Fours")); ScoringCategories.Add(factory.makeCategory("Fives")); ScoringCategories.Add(factory.makeCategory("Sixes")); ScoringCategories.Add(factory.makeCategory("One Pair")); ScoringCategories.Add(factory.makeCategory("Two Pairs")); ScoringCategories.Add(factory.makeCategory("Three of a Kind Alt")); ScoringCategories.Add(factory.makeCategory("Four of a Kind Alt")); ScoringCategories.Add(factory.makeCategory("Full House Alt")); ScoringCategories.Add(factory.makeCategory("Small Straight")); ScoringCategories.Add(factory.makeCategory("Large Straight")); ScoringCategories.Add(factory.makeCategory("Yahtzee")); ScoringCategories.Add(factory.makeCategory("Chance")); Bonus = 0; useBonus = true; bonusThreshold = 63; bonusAmount = 50; jokerRules = false; BonusYahtzeeAmount = 0; }
private void SetupYacht() { ScoringCategoryFactory factory = new ScoringCategoryFactory(); ScoringCategories.Add(factory.makeCategory("Ones")); ScoringCategories.Add(factory.makeCategory("Twos")); ScoringCategories.Add(factory.makeCategory("Threes")); ScoringCategories.Add(factory.makeCategory("Fours")); ScoringCategories.Add(factory.makeCategory("Fives")); ScoringCategories.Add(factory.makeCategory("Sixes")); ScoringCategories.Add(factory.makeCategory("Four of a Kind Alt")); ScoringCategories.Add(factory.makeCategory("Full House Alt")); ScoringCategories.Add(factory.makeCategory("Little Straight")); ScoringCategories.Add(factory.makeCategory("Big Straight")); ScoringCategory cat = factory.makeCategory("Yahtzee"); cat.Name = "Yacht"; ScoringCategories.Add(cat); cat = factory.makeCategory("Chance"); cat.Name = "Choice"; ScoringCategories.Add(cat); Bonus = 0; useBonus = false; bonusThreshold = 0; bonusAmount = 0; jokerRules = false; BonusYahtzeeAmount = 0; }
// will likely end up refactoring this to factory at some point, but for now // this code will create a standard Yahtzee score sheet private void SetupStandard() { ScoringCategoryFactory factory = new ScoringCategoryFactory(); ScoringCategory cat = factory.makeCategory("Ones"); cat.Name = "Aces"; ScoringCategories.Add(cat); ScoringCategories.Add(factory.makeCategory("Twos")); ScoringCategories.Add(factory.makeCategory("Threes")); ScoringCategories.Add(factory.makeCategory("Fours")); ScoringCategories.Add(factory.makeCategory("Fives")); ScoringCategories.Add(factory.makeCategory("Sixes")); ScoringCategories.Add(factory.makeCategory("Three of a Kind")); ScoringCategories.Add(factory.makeCategory("Four of a Kind")); ScoringCategories.Add(factory.makeCategory("Full House")); ScoringCategories.Add(factory.makeCategory("Small Straight")); ScoringCategories.Add(factory.makeCategory("Large Straight")); ScoringCategories.Add(factory.makeCategory("Yahtzee")); ScoringCategories.Add(factory.makeCategory("Chance")); Bonus = 0; useBonus = true; bonusThreshold = 63; bonusAmount = 35; jokerRules = true; BonusYahtzeeAmount = 100; }
public List<ScoringCategory> printScoreSheet() { List<ScoringCategory> result = new List<ScoringCategory>(); ScoringCategoryFactory factory = new ScoringCategoryFactory(); bool onUpper = true; foreach (ScoringCategory cat in ScoringCategories) { if (onUpper & cat.Lower) { onUpper = false; result.Add(factory.makeTotal("Upper Total", getUpperScore())); if (useBonus) result.Add(factory.makeTotal("Upper Bonus", Bonus)); } result.Add(cat); } result.Add(factory.makeTotal("Lower Total", getLowerScore())); if (BonusYahtzeeAmount > 0) result.Add(factory.makeTotal("Bonus Yahtzee Total", BonusYahtzeeAmount * ExtraYahtzees)); result.Add(factory.makeTotal("Total", CurrentScore())); return result; }
public void testTotal() { ScoringCategoryFactory factory = new ScoringCategoryFactory(); ScoringCategory cat = factory.makeTotal("My Total", 42); Assert.AreEqual("My Total", cat.Name); Assert.AreEqual(42, cat.FinalScore); }
public void testFactoryBadName() { ScoringCategoryFactory factory = new ScoringCategoryFactory(); factory.makeCategory("Bad Name"); }
public void testBlankRules() { ScoringCategoryFactory factory = new ScoringCategoryFactory(); ScoringCategory cat = factory.makeTotal("My Total", 0); Assert.AreEqual("", cat.getRules()); }