From 67550a789b77b18d718e417184735474edd5173f Mon Sep 17 00:00:00 2001 From: Colin McMillen Date: Wed, 18 Mar 2020 14:03:37 -0400 Subject: [PATCH] move History.ToArray() into test code. --- Shared/History.cs | 10 ---------- SharedTests/HistoryTests.cs | 18 +++++++++++++----- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/Shared/History.cs b/Shared/History.cs index 50fcbcb..d6f00d3 100644 --- a/Shared/History.cs +++ b/Shared/History.cs @@ -49,15 +49,5 @@ namespace SemiColinGames { return items[lookup]; } } - - // This creates and populates a new array. It's O(n) and should probably only be used for tests. - // TODO: restrict visibility so that it can only be used by tests. - public T[] ToArray() { - T[] result = new T[items.Length]; - for (int i = 0; i < items.Length; i++) { - result[i] = this[i]; - } - return result; - } } } diff --git a/SharedTests/HistoryTests.cs b/SharedTests/HistoryTests.cs index 4ecfe57..0dc8ff5 100644 --- a/SharedTests/HistoryTests.cs +++ b/SharedTests/HistoryTests.cs @@ -4,6 +4,14 @@ using System; namespace SemiColinGames.Tests { [TestClass] public class HistoryTests { + public static int[] ToArray(History history) { + int[] result = new int[history.Length]; + for (int i = 0; i < history.Length; i++) { + result[i] = history[i]; + } + return result; + } + [TestMethod] public void TestLength() { var h = new History(3); @@ -24,17 +32,17 @@ namespace SemiColinGames.Tests { [TestMethod] public void TestAdds() { var h = new History(3); - Assert.AreEqual("0 0 0", String.Join(" ", h.ToArray())); + Assert.AreEqual("0 0 0", String.Join(" ", ToArray(h))); h.Add(2); - Assert.AreEqual("2 0 0", String.Join(" ", h.ToArray())); + Assert.AreEqual("2 0 0", String.Join(" ", ToArray(h))); h.Add(3); h.Add(5); - Assert.AreEqual("5 3 2", String.Join(" ", h.ToArray())); + Assert.AreEqual("5 3 2", String.Join(" ", ToArray(h))); h.Add(7); - Assert.AreEqual("7 5 3", String.Join(" ", h.ToArray())); + Assert.AreEqual("7 5 3", String.Join(" ", ToArray(h))); h.Add(11); h.Add(13); - Assert.AreEqual("13 11 7", String.Join(" ", h.ToArray())); + Assert.AreEqual("13 11 7", String.Join(" ", ToArray(h))); } [TestMethod]