private void InitializeOutChart() { OutCalculator outCalculator = new OutCalculator(InOutRule.Double); List <string> allOutsList = new List <string>(); Dictionary <int, List <Dart> > allOuts = outCalculator.GetAllOuts(); // iterate through the dictionary to get all the outs foreach (KeyValuePair <int, List <Dart> > entry in allOuts) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(entry.Key.ToString()); stringBuilder.Append(": "); for (int j = 0; j < entry.Value.Count; j++) { stringBuilder.Append(entry.Value[j].Abbreviation); if (j != entry.Value.Count - 1) { stringBuilder.Append(", "); } } string outItemText = stringBuilder.ToString(); allOutsList.Add(outItemText); } Android.Widget.ListView lstMyList = (Android.Widget.ListView)FindViewById <Android.Widget.ListView>(Resource.Id.MyList); lstMyList.Adapter = new OutChartAdapter(this, allOutsList); }
private string RecommendedOut(int TotalOut) //This gets the out from the classes and vocalizes the words { int dartCount = 0; OutCalculator clsOutCalc = new OutCalculator(InOutRule.Double); List <Dart> recOut = clsOutCalc.GetDartsForOut(TotalOut); StringBuilder sb = new StringBuilder(); foreach (Dart mDart in recOut) { sb.Append(recOut[dartCount].ToString() + ", "); dartCount++; } string strOutText = ""; if (0 == sb.Length) { strOutText = "Out Not Found"; } else { sb = sb.Remove(sb.Length - 2, 2); strOutText = sb.ToString(); } return(strOutText); }
public void GetAllOuts_WithDoubleOutRule_GetsTheExpectedOuts() { // Arrange OutCalculator calculator = new OutCalculator(InOutRule.Double); // Act var subject = calculator.GetAllOuts(); // Assert Assert.AreEqual("DoubleOutSplitBullOuts", subject.GetType().Name, "Not expected class"); }
public void RuleProperty_Always_ReturnsWhatWasPassedIntoConstructor() { // Arrange InOutRule expectedRule = InOutRule.Open; // Act OutCalculator subject = new OutCalculator(expectedRule); // Assert Assert.AreEqual(expectedRule, subject.Rule, "Rule was not the expected value"); }
public void GetDartsForOut_Provide1DartsRemainingWithNoPossibleOut_ReturnsExpectedOut() { // Arrange OutCalculator calculator = new OutCalculator(InOutRule.Double); // Act List <Dart> subject = calculator.GetDartsForOut(51, 1); // Assert Assert.IsNotNull(subject, "Return was null when not expected"); Assert.AreEqual(0, subject.Count, "Unexpected number of darts"); }
public void GetDartsForOut_NoOutForProvidedScore_ReturnsEmptyList() { // Arrange OutCalculator calculator = new OutCalculator(InOutRule.Double); // Act List <Dart> subject = calculator.GetDartsForOut(181); // Assert Assert.IsNotNull(subject, "Return was null when not expected"); Assert.AreEqual(0, subject.Count, "Unexpected number of darts"); }
public void GetDartsForOut_Provide1DartsRemaining_ReturnsExpectedOut() { // Arrange OutCalculator calculator = new OutCalculator(InOutRule.Double); // Act List <Dart> subject = calculator.GetDartsForOut(38, 1); // Assert Assert.IsNotNull(subject, "Return was null when not expected"); Assert.AreEqual(1, subject.Count, "Unexpected number of darts"); Assert.AreEqual("D19", subject[0].Abbreviation, "Unexpected second dart"); }
public void GetDartsForOut_170WithDoubleOutRule_GetsTheExpectedOut() { // Arrange OutCalculator calculator = new OutCalculator(InOutRule.Double); // Act List <Dart> subject = calculator.GetDartsForOut(170); // Assert Assert.AreEqual(3, subject.Count, "Unexpected number of darts"); Assert.AreEqual("T20", subject[0].Abbreviation, "Unexpected first dart"); Assert.AreEqual("T20", subject[1].Abbreviation, "Unexpected second dart"); Assert.AreEqual("DB", subject[2].Abbreviation, "Unexpected third dart"); }
private string GetAbbrevOut(int TotalOut) { int score = TotalOut; OutCalculator outCalculator = new OutCalculator(InOutRule.Double); List <Dart> outs = outCalculator.GetDartsForOut(score); StringBuilder stringBuilder = new StringBuilder(); for (int i = 0; i < outs.Count; i++) { stringBuilder.Append(outs[i].Abbreviation); if (i != outs.Count - 1) { stringBuilder.Append(", "); } } string text = stringBuilder.ToString(); return(text); }
public void GetAllOuts_WithDoubleOutRule_MathOfExpectedOutsWorks() { // Arrange OutCalculator calculator = new OutCalculator(InOutRule.Double); // Act var subject = calculator.GetAllOuts(); // Assert foreach (var keyValue in subject) { int total = 0; foreach (Dart dart in keyValue.Value) { total += dart.Value; } Assert.AreEqual(keyValue.Key, total, string.Format("Total did not match for {0}", keyValue.Key)); Assert.AreEqual(SegmentMultiplier.Double, keyValue.Value.LastOrDefault().Multiplier, "Last dart multiplier was not Double"); } }