diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml old mode 100644 new mode 100755 diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 diff --git a/CSharp/README.md b/CSharp/README.md deleted file mode 100644 index 13affe9..0000000 --- a/CSharp/README.md +++ /dev/null @@ -1,8 +0,0 @@ -The CSharp code base is adapted from https://github.com/evilz/kata - -The code uses [ApprovalTests](http://approvaltests.com), which means that -when the test fails it will open up a diff-tool to compare the files -*TriviaTests.RefactoringTests.approved.txt* and the result of the run -*TriviaTests.RefactoringTests.received.txt*. -If you have a « Could not find a diff program to use » exception, you can -change the configuration in TrivaTests.cs BuildConfiguration method. \ No newline at end of file diff --git a/CSharp/basic/Trivia.sln b/CSharp/basic/Trivia.sln deleted file mode 100644 index d0443dc..0000000 --- a/CSharp/basic/Trivia.sln +++ /dev/null @@ -1,16 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Trivia", "Trivia\Trivia.csproj", "{16408F61-A579-4006-8744-85F5B750D89C}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {16408F61-A579-4006-8744-85F5B750D89C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {16408F61-A579-4006-8744-85F5B750D89C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {16408F61-A579-4006-8744-85F5B750D89C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {16408F61-A579-4006-8744-85F5B750D89C}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection -EndGlobal diff --git a/CSharp/basic/Trivia/Game.cs b/CSharp/basic/Trivia/Game.cs deleted file mode 100644 index 0d13ad2..0000000 --- a/CSharp/basic/Trivia/Game.cs +++ /dev/null @@ -1,213 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; - -namespace Trivia -{ - public class Game - { - - - List players = new List(); - - int[] places = new int[6]; - int[] purses = new int[6]; - - bool[] inPenaltyBox = new bool[6]; - - LinkedList popQuestions = new LinkedList(); - LinkedList scienceQuestions = new LinkedList(); - LinkedList sportsQuestions = new LinkedList(); - LinkedList rockQuestions = new LinkedList(); - - int currentPlayer = 0; - bool isGettingOutOfPenaltyBox; - - public Game() - { - for (int i = 0; i < 50; i++) - { - popQuestions.AddLast("Pop Question " + i); - scienceQuestions.AddLast(("Science Question " + i)); - sportsQuestions.AddLast(("Sports Question " + i)); - rockQuestions.AddLast(CreateRockQuestion(i)); - } - } - - public String CreateRockQuestion(int index) - { - return "Rock Question " + index; - } - - public bool IsPlayable() - { - return (HowManyPlayers() >= 2); - } - - public bool Add(String playerName) - { - - - players.Add(playerName); - places[HowManyPlayers()] = 0; - purses[HowManyPlayers()] = 0; - inPenaltyBox[HowManyPlayers()] = false; - - Console.WriteLine(playerName + " was Added"); - Console.WriteLine("They are player number " + players.Count); - return true; - } - - public int HowManyPlayers() - { - return players.Count; - } - - public void Roll(int roll) - { - Console.WriteLine(players[currentPlayer] + " is the current player"); - Console.WriteLine("They have rolled a " + roll); - - if (inPenaltyBox[currentPlayer]) - { - if (roll % 2 != 0) - { - isGettingOutOfPenaltyBox = true; - - Console.WriteLine(players[currentPlayer] + " is getting out of the penalty box"); - places[currentPlayer] = places[currentPlayer] + roll; - if (places[currentPlayer] > 11) places[currentPlayer] = places[currentPlayer] - 12; - - Console.WriteLine(players[currentPlayer] - + "'s new location is " - + places[currentPlayer]); - Console.WriteLine("The category is " + CurrentCategory()); - AskQuestion(); - } - else - { - Console.WriteLine(players[currentPlayer] + " is not getting out of the penalty box"); - isGettingOutOfPenaltyBox = false; - } - - } - else - { - - places[currentPlayer] = places[currentPlayer] + roll; - if (places[currentPlayer] > 11) places[currentPlayer] = places[currentPlayer] - 12; - - Console.WriteLine(players[currentPlayer] - + "'s new location is " - + places[currentPlayer]); - Console.WriteLine("The category is " + CurrentCategory()); - AskQuestion(); - } - - } - - private void AskQuestion() - { - if (CurrentCategory() == "Pop") - { - Console.WriteLine(popQuestions.First()); - popQuestions.RemoveFirst(); - } - if (CurrentCategory() == "Science") - { - Console.WriteLine(scienceQuestions.First()); - scienceQuestions.RemoveFirst(); - } - if (CurrentCategory() == "Sports") - { - Console.WriteLine(sportsQuestions.First()); - sportsQuestions.RemoveFirst(); - } - if (CurrentCategory() == "Rock") - { - Console.WriteLine(rockQuestions.First()); - rockQuestions.RemoveFirst(); - } - } - - - private String CurrentCategory() - { - if (places[currentPlayer] == 0) return "Pop"; - if (places[currentPlayer] == 4) return "Pop"; - if (places[currentPlayer] == 8) return "Pop"; - if (places[currentPlayer] == 1) return "Science"; - if (places[currentPlayer] == 5) return "Science"; - if (places[currentPlayer] == 9) return "Science"; - if (places[currentPlayer] == 2) return "Sports"; - if (places[currentPlayer] == 6) return "Sports"; - if (places[currentPlayer] == 10) return "Sports"; - return "Rock"; - } - - public bool WasCorrectlyAnswered() - { - if (inPenaltyBox[currentPlayer]) - { - if (isGettingOutOfPenaltyBox) - { - Console.WriteLine("Answer was correct!!!!"); - currentPlayer++; - if (currentPlayer == players.Count) currentPlayer = 0; - purses[currentPlayer]++; - Console.WriteLine(players[currentPlayer] - + " now has " - + purses[currentPlayer] - + " Gold Coins."); - - bool winner = DidPlayerWin(); - - return winner; - } - else - { - currentPlayer++; - if (currentPlayer == players.Count) currentPlayer = 0; - return true; - } - - - - } - else - { - - Console.WriteLine("Answer was corrent!!!!"); - purses[currentPlayer]++; - Console.WriteLine(players[currentPlayer] - + " now has " - + purses[currentPlayer] - + " Gold Coins."); - - bool winner = DidPlayerWin(); - currentPlayer++; - if (currentPlayer == players.Count) currentPlayer = 0; - - return winner; - } - } - - public bool WrongAnswer() - { - Console.WriteLine("Question was incorrectly answered"); - Console.WriteLine(players[currentPlayer] + " was sent to the penalty box"); - inPenaltyBox[currentPlayer] = true; - - currentPlayer++; - if (currentPlayer == players.Count) currentPlayer = 0; - return true; - } - - - private bool DidPlayerWin() - { - return !(purses[currentPlayer] == 6); - } - } - -} diff --git a/CSharp/basic/Trivia/GameRunner.cs b/CSharp/basic/Trivia/GameRunner.cs deleted file mode 100644 index 6d4c665..0000000 --- a/CSharp/basic/Trivia/GameRunner.cs +++ /dev/null @@ -1,43 +0,0 @@ -using System; - -namespace Trivia -{ - public class GameRunner - { - - private static bool notAWinner; - - public static void Main(String[] args) - { - Game aGame = new Game(); - - aGame.Add("Chet"); - aGame.Add("Pat"); - aGame.Add("Sue"); - - Random rand = new Random(); - - do - { - - aGame.Roll(rand.Next(5) + 1); - - if (rand.Next(9) == 7) - { - notAWinner = aGame.WrongAnswer(); - } - else - { - notAWinner = aGame.WasCorrectlyAnswered(); - } - - - - } while (notAWinner); - - } - - - } - -} diff --git a/CSharp/basic/Trivia/Properties/AssemblyInfo.cs b/CSharp/basic/Trivia/Properties/AssemblyInfo.cs deleted file mode 100644 index 78e2087..0000000 --- a/CSharp/basic/Trivia/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System.Reflection; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Trivia")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Trivia")] -[assembly: AssemblyCopyright("Copyright © 2018")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("16408F61-A579-4006-8744-85F5B750D89C")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] \ No newline at end of file diff --git a/CSharp/basic/Trivia/Trivia.csproj b/CSharp/basic/Trivia/Trivia.csproj deleted file mode 100644 index e5b2502..0000000 --- a/CSharp/basic/Trivia/Trivia.csproj +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - Debug - AnyCPU - {16408F61-A579-4006-8744-85F5B750D89C} - Exe - Properties - Trivia - Trivia - v4.7.1 - 512 - - - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - ..\packages\Assent.1.3.0\lib\net45\Assent.dll - - - - - - - ..\packages\xunit.abstractions.2.0.1\lib\net35\xunit.abstractions.dll - - - ..\packages\xunit.assert.2.3.1\lib\netstandard1.1\xunit.assert.dll - - - ..\packages\xunit.extensibility.core.2.3.1\lib\netstandard1.1\xunit.core.dll - - - ..\packages\xunit.extensibility.execution.2.3.1\lib\net452\xunit.execution.desktop.dll - - - - - - - - - - - - - - - - - - - - - - This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - - - \ No newline at end of file diff --git a/CSharp/basic/Trivia/TriviaTests.RefactoringTests.approved.txt b/CSharp/basic/Trivia/TriviaTests.RefactoringTests.approved.txt deleted file mode 100644 index f2bd350..0000000 --- a/CSharp/basic/Trivia/TriviaTests.RefactoringTests.approved.txt +++ /dev/null @@ -1,113 +0,0 @@ -False -Chet was Added -They are player number 1 -Pat was Added -They are player number 2 -Sue was Added -They are player number 3 -Chet is the current player -They have rolled a 1 -Chet's new location is 1 -The category is Science -Science Question 0 -Chet is the current player -They have rolled a 1 -Chet's new location is 2 -The category is Sports -Sports Question 0 -Chet is the current player -They have rolled a 1 -Chet's new location is 3 -The category is Rock -Rock Question 0 -Chet is the current player -They have rolled a 1 -Chet's new location is 4 -The category is Pop -Pop Question 0 -Chet is the current player -They have rolled a 1 -Chet's new location is 5 -The category is Science -Science Question 1 -Chet is the current player -They have rolled a 1 -Chet's new location is 6 -The category is Sports -Sports Question 1 -Chet is the current player -They have rolled a 1 -Chet's new location is 7 -The category is Rock -Rock Question 1 -Chet is the current player -They have rolled a 1 -Chet's new location is 8 -The category is Pop -Pop Question 1 -Chet is the current player -They have rolled a 1 -Chet's new location is 9 -The category is Science -Science Question 2 -Chet is the current player -They have rolled a 1 -Chet's new location is 10 -The category is Sports -Sports Question 2 -Chet is the current player -They have rolled a 1 -Chet's new location is 11 -The category is Rock -Rock Question 2 -Chet is the current player -They have rolled a 1 -Chet's new location is 0 -The category is Pop -Pop Question 2 -Chet is the current player -They have rolled a 1 -Chet's new location is 1 -The category is Science -Science Question 3 -Chet is the current player -They have rolled a 1 -Chet's new location is 2 -The category is Sports -Sports Question 3 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 2 -Sue's new location is 2 -The category is Sports -Sports Question 4 -Sue is the current player -They have rolled a 6 -Sue's new location is 8 -The category is Pop -Pop Question 3 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 2 -Chet's new location is 4 -The category is Pop -Pop Question 4 -Chet is the current player -They have rolled a 2 -Chet's new location is 6 -The category is Sports -Sports Question 5 -Question was incorrectly answered -Chet was sent to the penalty box -Sue is the current player -They have rolled a 1 -Sue is getting out of the penalty box -Sue's new location is 9 -The category is Science -Science Question 4 -Answer was correct!!!! -Chet now has 2 Gold Coins. diff --git a/CSharp/basic/Trivia/TriviaTests.cs b/CSharp/basic/Trivia/TriviaTests.cs deleted file mode 100644 index d81fe6d..0000000 --- a/CSharp/basic/Trivia/TriviaTests.cs +++ /dev/null @@ -1,91 +0,0 @@ -using System; -using System.IO; -using System.Text; -using Xunit; -using Assent; -using Assent.Reporters; -using Assent.Reporters.DiffPrograms; - -namespace Trivia -{ - public class TriviaTests - { - [Fact] - public void RefactoringTests() - { - var output = new StringBuilder(); - Console.SetOut(new StringWriter(output)); - - Game aGame = new Game(); - Console.WriteLine(aGame.IsPlayable()); - aGame.Add("Chet"); - aGame.Add("Pat"); - aGame.Add("Sue"); - - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - - aGame.WasCorrectlyAnswered(); - aGame.WrongAnswer(); - - aGame.Roll(2); - - aGame.Roll(6); - - aGame.WrongAnswer(); - - aGame.Roll(2); - - aGame.Roll(2); - - - aGame.WrongAnswer(); - - aGame.WasCorrectlyAnswered(); - aGame.Roll(1); - aGame.WasCorrectlyAnswered(); - - var configuration = BuildConfiguration(); - this.Assent(output.ToString(), configuration); - } - - private static Configuration BuildConfiguration() - { - return - new Configuration() - - // Uncomment this block if an exception - // « Could not find a diff program to use » - // is thrown and if you have VsCode installed. - // Otherwise, use other DiffProgram with its full path - // as parameter. - // See https://github.com/droyad/Assent/wiki/Reporting -// .UsingReporter( -// new DiffReporter( -// new [] -// { -// For linux -// new VsCodeDiffProgram(new [] -// { -// "/usr/bin/code" -// }) - -// For Windows -// new VsCodeDiffProgram(), -// })) - ; - } - } -} diff --git a/CSharp/basic/Trivia/packages.config b/CSharp/basic/Trivia/packages.config deleted file mode 100644 index 96d8748..0000000 --- a/CSharp/basic/Trivia/packages.config +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/CSharp/netcore2/Game.cs b/CSharp/netcore2/Game.cs deleted file mode 100644 index 0d13ad2..0000000 --- a/CSharp/netcore2/Game.cs +++ /dev/null @@ -1,213 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; - -namespace Trivia -{ - public class Game - { - - - List players = new List(); - - int[] places = new int[6]; - int[] purses = new int[6]; - - bool[] inPenaltyBox = new bool[6]; - - LinkedList popQuestions = new LinkedList(); - LinkedList scienceQuestions = new LinkedList(); - LinkedList sportsQuestions = new LinkedList(); - LinkedList rockQuestions = new LinkedList(); - - int currentPlayer = 0; - bool isGettingOutOfPenaltyBox; - - public Game() - { - for (int i = 0; i < 50; i++) - { - popQuestions.AddLast("Pop Question " + i); - scienceQuestions.AddLast(("Science Question " + i)); - sportsQuestions.AddLast(("Sports Question " + i)); - rockQuestions.AddLast(CreateRockQuestion(i)); - } - } - - public String CreateRockQuestion(int index) - { - return "Rock Question " + index; - } - - public bool IsPlayable() - { - return (HowManyPlayers() >= 2); - } - - public bool Add(String playerName) - { - - - players.Add(playerName); - places[HowManyPlayers()] = 0; - purses[HowManyPlayers()] = 0; - inPenaltyBox[HowManyPlayers()] = false; - - Console.WriteLine(playerName + " was Added"); - Console.WriteLine("They are player number " + players.Count); - return true; - } - - public int HowManyPlayers() - { - return players.Count; - } - - public void Roll(int roll) - { - Console.WriteLine(players[currentPlayer] + " is the current player"); - Console.WriteLine("They have rolled a " + roll); - - if (inPenaltyBox[currentPlayer]) - { - if (roll % 2 != 0) - { - isGettingOutOfPenaltyBox = true; - - Console.WriteLine(players[currentPlayer] + " is getting out of the penalty box"); - places[currentPlayer] = places[currentPlayer] + roll; - if (places[currentPlayer] > 11) places[currentPlayer] = places[currentPlayer] - 12; - - Console.WriteLine(players[currentPlayer] - + "'s new location is " - + places[currentPlayer]); - Console.WriteLine("The category is " + CurrentCategory()); - AskQuestion(); - } - else - { - Console.WriteLine(players[currentPlayer] + " is not getting out of the penalty box"); - isGettingOutOfPenaltyBox = false; - } - - } - else - { - - places[currentPlayer] = places[currentPlayer] + roll; - if (places[currentPlayer] > 11) places[currentPlayer] = places[currentPlayer] - 12; - - Console.WriteLine(players[currentPlayer] - + "'s new location is " - + places[currentPlayer]); - Console.WriteLine("The category is " + CurrentCategory()); - AskQuestion(); - } - - } - - private void AskQuestion() - { - if (CurrentCategory() == "Pop") - { - Console.WriteLine(popQuestions.First()); - popQuestions.RemoveFirst(); - } - if (CurrentCategory() == "Science") - { - Console.WriteLine(scienceQuestions.First()); - scienceQuestions.RemoveFirst(); - } - if (CurrentCategory() == "Sports") - { - Console.WriteLine(sportsQuestions.First()); - sportsQuestions.RemoveFirst(); - } - if (CurrentCategory() == "Rock") - { - Console.WriteLine(rockQuestions.First()); - rockQuestions.RemoveFirst(); - } - } - - - private String CurrentCategory() - { - if (places[currentPlayer] == 0) return "Pop"; - if (places[currentPlayer] == 4) return "Pop"; - if (places[currentPlayer] == 8) return "Pop"; - if (places[currentPlayer] == 1) return "Science"; - if (places[currentPlayer] == 5) return "Science"; - if (places[currentPlayer] == 9) return "Science"; - if (places[currentPlayer] == 2) return "Sports"; - if (places[currentPlayer] == 6) return "Sports"; - if (places[currentPlayer] == 10) return "Sports"; - return "Rock"; - } - - public bool WasCorrectlyAnswered() - { - if (inPenaltyBox[currentPlayer]) - { - if (isGettingOutOfPenaltyBox) - { - Console.WriteLine("Answer was correct!!!!"); - currentPlayer++; - if (currentPlayer == players.Count) currentPlayer = 0; - purses[currentPlayer]++; - Console.WriteLine(players[currentPlayer] - + " now has " - + purses[currentPlayer] - + " Gold Coins."); - - bool winner = DidPlayerWin(); - - return winner; - } - else - { - currentPlayer++; - if (currentPlayer == players.Count) currentPlayer = 0; - return true; - } - - - - } - else - { - - Console.WriteLine("Answer was corrent!!!!"); - purses[currentPlayer]++; - Console.WriteLine(players[currentPlayer] - + " now has " - + purses[currentPlayer] - + " Gold Coins."); - - bool winner = DidPlayerWin(); - currentPlayer++; - if (currentPlayer == players.Count) currentPlayer = 0; - - return winner; - } - } - - public bool WrongAnswer() - { - Console.WriteLine("Question was incorrectly answered"); - Console.WriteLine(players[currentPlayer] + " was sent to the penalty box"); - inPenaltyBox[currentPlayer] = true; - - currentPlayer++; - if (currentPlayer == players.Count) currentPlayer = 0; - return true; - } - - - private bool DidPlayerWin() - { - return !(purses[currentPlayer] == 6); - } - } - -} diff --git a/CSharp/netcore2/GameRunner.cs b/CSharp/netcore2/GameRunner.cs deleted file mode 100644 index 6d4c665..0000000 --- a/CSharp/netcore2/GameRunner.cs +++ /dev/null @@ -1,43 +0,0 @@ -using System; - -namespace Trivia -{ - public class GameRunner - { - - private static bool notAWinner; - - public static void Main(String[] args) - { - Game aGame = new Game(); - - aGame.Add("Chet"); - aGame.Add("Pat"); - aGame.Add("Sue"); - - Random rand = new Random(); - - do - { - - aGame.Roll(rand.Next(5) + 1); - - if (rand.Next(9) == 7) - { - notAWinner = aGame.WrongAnswer(); - } - else - { - notAWinner = aGame.WasCorrectlyAnswered(); - } - - - - } while (notAWinner); - - } - - - } - -} diff --git a/CSharp/netcore2/README.md b/CSharp/netcore2/README.md deleted file mode 100644 index 34a50e5..0000000 --- a/CSharp/netcore2/README.md +++ /dev/null @@ -1,22 +0,0 @@ -This version is running with [dotnet](https://www.microsoft.com/net) >= 2.0 - -The test script is changed to not contain illegal input, however the -test reference file is not changed. So once you get the test running it -will fail. You'll have to just validate the new result as the reference -result. I don't have an environment to do it. -Some method names have been renamed to comply with default PascalCase C# style guide - -The code uses [Assent](https://github.com/droyad/Assent), which means that -when the test fails it will open up a diff-tool to compare the files -*TriviaTests.RefactoringTests.approved.txt* and the result of the run -*TriviaTests.RefactoringTests.received.txt* - -If you're using CLI tools : -- installing required dependencies: -``` -dotnet restore -``` -- running tests and opening (default) diff tools: -``` -dotnet test -``` diff --git a/CSharp/netcore2/TriviaTests.RefactoringTests.approved.txt b/CSharp/netcore2/TriviaTests.RefactoringTests.approved.txt deleted file mode 100644 index f2bd350..0000000 --- a/CSharp/netcore2/TriviaTests.RefactoringTests.approved.txt +++ /dev/null @@ -1,113 +0,0 @@ -False -Chet was Added -They are player number 1 -Pat was Added -They are player number 2 -Sue was Added -They are player number 3 -Chet is the current player -They have rolled a 1 -Chet's new location is 1 -The category is Science -Science Question 0 -Chet is the current player -They have rolled a 1 -Chet's new location is 2 -The category is Sports -Sports Question 0 -Chet is the current player -They have rolled a 1 -Chet's new location is 3 -The category is Rock -Rock Question 0 -Chet is the current player -They have rolled a 1 -Chet's new location is 4 -The category is Pop -Pop Question 0 -Chet is the current player -They have rolled a 1 -Chet's new location is 5 -The category is Science -Science Question 1 -Chet is the current player -They have rolled a 1 -Chet's new location is 6 -The category is Sports -Sports Question 1 -Chet is the current player -They have rolled a 1 -Chet's new location is 7 -The category is Rock -Rock Question 1 -Chet is the current player -They have rolled a 1 -Chet's new location is 8 -The category is Pop -Pop Question 1 -Chet is the current player -They have rolled a 1 -Chet's new location is 9 -The category is Science -Science Question 2 -Chet is the current player -They have rolled a 1 -Chet's new location is 10 -The category is Sports -Sports Question 2 -Chet is the current player -They have rolled a 1 -Chet's new location is 11 -The category is Rock -Rock Question 2 -Chet is the current player -They have rolled a 1 -Chet's new location is 0 -The category is Pop -Pop Question 2 -Chet is the current player -They have rolled a 1 -Chet's new location is 1 -The category is Science -Science Question 3 -Chet is the current player -They have rolled a 1 -Chet's new location is 2 -The category is Sports -Sports Question 3 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 2 -Sue's new location is 2 -The category is Sports -Sports Question 4 -Sue is the current player -They have rolled a 6 -Sue's new location is 8 -The category is Pop -Pop Question 3 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 2 -Chet's new location is 4 -The category is Pop -Pop Question 4 -Chet is the current player -They have rolled a 2 -Chet's new location is 6 -The category is Sports -Sports Question 5 -Question was incorrectly answered -Chet was sent to the penalty box -Sue is the current player -They have rolled a 1 -Sue is getting out of the penalty box -Sue's new location is 9 -The category is Science -Science Question 4 -Answer was correct!!!! -Chet now has 2 Gold Coins. diff --git a/CSharp/netcore2/TriviaTests.cs b/CSharp/netcore2/TriviaTests.cs deleted file mode 100644 index ecb2bc6..0000000 --- a/CSharp/netcore2/TriviaTests.cs +++ /dev/null @@ -1,91 +0,0 @@ -using System; -using System.IO; -using System.Text; -using Xunit; -using Assent; -using Assent.Reporters; -using Assent.Reporters.DiffPrograms; - -namespace Trivia -{ - public class TriviaTests - { - [Fact] - public void RefactoringTests() - { - var output = new StringBuilder(); - Console.SetOut(new StringWriter(output)); - - Game aGame = new Game(); - Console.WriteLine(aGame.IsPlayable()); - aGame.Add("Chet"); - aGame.Add("Pat"); - aGame.Add("Sue"); - - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - aGame.Roll(1); - - aGame.WasCorrectlyAnswered(); - aGame.WrongAnswer(); - - aGame.Roll(2); - - aGame.Roll(6); - - aGame.WrongAnswer(); - - aGame.Roll(2); - - aGame.Roll(2); - - - aGame.WrongAnswer(); - - aGame.WasCorrectlyAnswered(); - aGame.Roll(1); - aGame.WasCorrectlyAnswered(); - - var configuration = BuildConfiguration(); - this.Assent(output.ToString(), configuration); - } - - private static Configuration BuildConfiguration() - { - return - new Configuration() - - // Uncomment this block if an exception - // « Could not find a diff program to use » - // is thrown and if you have VsCode installed. - // Otherwise, use other DiffProgram with its full path - // as parameter. - // See https://github.com/droyad/Assent/wiki/Reporting -// .UsingReporter( -// new DiffReporter( -// new [] -// { - // For linux -// new VsCodeDiffProgram(new [] -// { -// "/usr/bin/code" -// }) - - // For Windows -// new VsCodeDiffProgram(), -// })) - ; - } - } -} diff --git a/CSharp/netcore2/netcore2.sln b/CSharp/netcore2/netcore2.sln deleted file mode 100644 index 1d2f853..0000000 --- a/CSharp/netcore2/netcore2.sln +++ /dev/null @@ -1,16 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "trivia", "trivia.csproj", "{57870D49-04F9-4F95-BDF2-5A4C9B8D4A53}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {57870D49-04F9-4F95-BDF2-5A4C9B8D4A53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {57870D49-04F9-4F95-BDF2-5A4C9B8D4A53}.Debug|Any CPU.Build.0 = Debug|Any CPU - {57870D49-04F9-4F95-BDF2-5A4C9B8D4A53}.Release|Any CPU.ActiveCfg = Release|Any CPU - {57870D49-04F9-4F95-BDF2-5A4C9B8D4A53}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection -EndGlobal diff --git a/CSharp/netcore2/trivia.csproj b/CSharp/netcore2/trivia.csproj deleted file mode 100644 index 954097a..0000000 --- a/CSharp/netcore2/trivia.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - netcoreapp2.0 - false - false - - - - - - - - - diff --git a/README.md b/README.md old mode 100644 new mode 100755 index 3541f3c..2e4b560 --- a/README.md +++ b/README.md @@ -17,9 +17,6 @@ Prefer small changes in the design, for instance before applying a design patter : We've found some weaknesses for you. Pick your choice in [instructions-intermediate.md](https://github.com/martinsson/BugsZero-Kata/blob/master/instructions-intermediate.md) -## Solutions -After doing your version, have a look at the [various solutions](https://github.com/martinsson/BugsZero-Kata/blob/master/solutions.md) in the form of merge-requests. It is easy to see what the change was using the diff-view. They are meant to be (one of) the best trade-offs for the given problem. There's always trade-offs, but if you find a better or simply good alternative, please fork and merge-request and we'll reference it. - ## Bug Patterns Have a look at the long list of common [bug-patterns](https://github.com/martinsson/BugsZero-Kata/blob/master/bug-patterns.md), mostly unnecessary weaknesses in design. diff --git a/bug-patterns.md b/bug-patterns.md old mode 100644 new mode 100755 diff --git a/bugs-zero-image.jpg b/bugs-zero-image.jpg old mode 100644 new mode 100755 diff --git a/codebases.md b/codebases.md deleted file mode 100644 index ebe8d20..0000000 --- a/codebases.md +++ /dev/null @@ -1,8 +0,0 @@ - -## Trivia -* [Java, NodeJS, Tested with Approval Tests](https://github.com/caradojo/trivia/tree/approvalsImplemented) -* [Java Tested with Approval Tests](https://bitbucket.org/pkofler/ugly-trivia-with-approvals-java-setup) -* [NodeJs with ApprovalTests](https://bitbucket.org/pkofler/ugly-trivia-with-approvals-js-setup) - -## Gilded Rose -* [Java, C#, Scala, JavaScript, ... all tested with ApprovalTests](https://github.com/martinsson/DevelopersAnonymous) \ No newline at end of file diff --git a/handout.pdf b/handout.pdf old mode 100644 new mode 100755 diff --git a/images/Map of patterns AgileInnovation.jpg b/images/Map of patterns AgileInnovation.jpg old mode 100644 new mode 100755 diff --git a/images/worksession on trivia SocratesFR.jpg b/images/worksession on trivia SocratesFR.jpg old mode 100644 new mode 100755 diff --git a/instructions-intermediate.md b/instructions-intermediate.md old mode 100644 new mode 100755 index 073d1e5..875579f --- a/instructions-intermediate.md +++ b/instructions-intermediate.md @@ -9,7 +9,7 @@ You'll practice reading code, looking for parts where it is likely that develope This repository comes packaged with code that is totally tested, using the Golden Master technique. Pick the language of your choice in this repository or contribute another one. In case there is none you're comfortable with you can always try to do this without tests -using any of the [available languages](https://github.com/caradojo/trivia). Beware that it is not identical as we've modified the code to remove some of the noise that wasn't relevant to sources of bugs. +using Java. Beware that it is not identical as we've modified the code to remove some of the noise that wasn't relevant to sources of bugs. ## Procedure 1. Identify a weakness in the design - now that's where we're helping you. @@ -20,22 +20,3 @@ solution is better avoids thinking of **why** it is actually better. The purpose is to experiment with design alternatives, so it is not necessary to refactor to perfection, and it is optional to use tests. The purpose of first explaining the problem in the design is to make sure that the new design is not just different but also adresses one or more specific problems. - ---- - -## Existing bugs and weaknesses (in trivia) -Beware that this list spoils part of the fun :) - -* A Game could have less than two players - How could we make sure it always has at least two. Is this a runtime check or can this be enforced "statically"? - ** What can be done in a language like javascript? -* Someone could try to create a game with 7 players, make sure that's impossible. - ** or slightly easier, allow for 7 players or more -* Existing BUG: A player that gets into prison always stays there. - ** Other than just fixing the bug, try to understand what's wrong with the design and fix the root cause -* Existing BUG: coins are added to the wrong player. Try to understand what made this bug likely and fix the design so that it becomes very unlikely. -* Introducing new categories of questions seems like tricky business. There are business rules: categories are evenly distributed on the board, there are an equal amount of each category. - ** Could you make sure all places have the "right" question and that the distribution is always correct (i.e. same number of each category, distance always the same between categories)? -* The deck could run out of questions - ** Make sure that can't happen (a deck with 1 billion questions is cheating :) -* Similarly changing the board size greatly affects the questions distribution. i.e. how do we ensure that there are as many of each category and that they repeat in a cyclic way? - ** Is there a design where it is guaranteed that the question category distribution stays the same diff --git a/java/.gitignore b/java/.gitignore old mode 100644 new mode 100755 diff --git a/java/pom.xml b/java/pom.xml old mode 100644 new mode 100755 diff --git a/java/src/main/java/com/adaptionsoft/games/trivia/runner/GameRunner.java b/java/src/main/java/com/adaptionsoft/games/trivia/runner/GameRunner.java old mode 100644 new mode 100755 diff --git a/java/src/main/java/com/adaptionsoft/games/uglytrivia/AnswerPlayer.java b/java/src/main/java/com/adaptionsoft/games/uglytrivia/AnswerPlayer.java new file mode 100644 index 0000000..c44a6f5 --- /dev/null +++ b/java/src/main/java/com/adaptionsoft/games/uglytrivia/AnswerPlayer.java @@ -0,0 +1,5 @@ +package com.adaptionsoft.games.uglytrivia; + +public interface AnswerPlayer { + boolean add(String playerName); +} diff --git a/java/src/main/java/com/adaptionsoft/games/uglytrivia/Game.java b/java/src/main/java/com/adaptionsoft/games/uglytrivia/Game.java old mode 100644 new mode 100755 index 9a416c4..4c478e5 --- a/java/src/main/java/com/adaptionsoft/games/uglytrivia/Game.java +++ b/java/src/main/java/com/adaptionsoft/games/uglytrivia/Game.java @@ -4,19 +4,22 @@ import java.util.LinkedList; public class Game { - ArrayList players = new ArrayList(); - int[] places = new int[6]; - int[] purses = new int[6]; - boolean[] inPenaltyBox = new boolean[6]; - - LinkedList popQuestions = new LinkedList(); - LinkedList scienceQuestions = new LinkedList(); - LinkedList sportsQuestions = new LinkedList(); - LinkedList rockQuestions = new LinkedList(); - - int currentPlayer = 0; - boolean isGettingOutOfPenaltyBox; - + ArrayList players = new ArrayList(); + int[] places = new int[6]; + int[] purses = new int[6]; + boolean[] inPenaltyBox = new boolean[6]; + + LinkedList popQuestions = new LinkedList(); + LinkedList scienceQuestions = new LinkedList(); + LinkedList sportsQuestions = new LinkedList(); + LinkedList rockQuestions = new LinkedList(); + + int currentPlayer = 0; + boolean isGettingOutOfPenaltyBox; + + /** + * method of initialisation of game + */ public Game(){ for (int i = 0; i < 50; i++) { popQuestions.addLast("Pop Question " + i); @@ -26,14 +29,28 @@ public Game(){ } } + /** + * + * @param index + * @return question with index + */ public String createRockQuestion(int index){ return "Rock Question " + index; } + /** + * + * @return the controle the number of player not inferior to 2 + */ public boolean isPlayable() { return (howManyPlayers() >= 2); } + /** + * + * @param playerName + * @return add the player name + */ public boolean add(String playerName) { @@ -46,11 +63,19 @@ public boolean add(String playerName) { System.out.println("They are player number " + players.size()); return true; } - + + /** + * + * @return the size of players + */ public int howManyPlayers() { return players.size(); } + /** + * move the player + * @param roll + */ public void roll(int roll) { System.out.println(players.get(currentPlayer) + " is the current player"); System.out.println("They have rolled a " + roll); @@ -73,6 +98,10 @@ public void roll(int roll) { } + /** + * move player after ask questiosns + * @param roll + */ private void movePlayerAndAskQuestion(int roll) { places[currentPlayer] = places[currentPlayer] + roll; if (places[currentPlayer] > 11) places[currentPlayer] = places[currentPlayer] - 12; @@ -84,6 +113,9 @@ private void movePlayerAndAskQuestion(int roll) { askQuestion(); } + /** + * method of ask questions + */ private void askQuestion() { if (currentCategory() == "Pop") System.out.println(popQuestions.removeFirst()); @@ -94,21 +126,45 @@ private void askQuestion() { if (currentCategory() == "Rock") System.out.println(rockQuestions.removeFirst()); } - - + + /** + * + * @return the current category + */ private String currentCategory() { - if (places[currentPlayer] == 0) return "Pop"; - if (places[currentPlayer] == 4) return "Pop"; - if (places[currentPlayer] == 8) return "Pop"; - if (places[currentPlayer] == 1) return "Science"; - if (places[currentPlayer] == 5) return "Science"; - if (places[currentPlayer] == 9) return "Science"; - if (places[currentPlayer] == 2) return "Sports"; - if (places[currentPlayer] == 6) return "Sports"; - if (places[currentPlayer] == 10) return "Sports"; - return "Rock"; + String categorie=""; + switch (places[currentPlayer]) { + case 0: + case 4: + case 8: + categorie="Pop"; + break; + + case 1: + case 5: + case 9: + categorie="Science"; + break; + + case 2: + case 6: + case 10: + categorie="Sports"; + break; + + default: + categorie="Rock"; + break; + } + + return categorie; } + /** + * check if the answers is correct + * @return true if the answers is correct + */ + public boolean wasCorrectlyAnswered() { if (inPenaltyBox[currentPlayer]){ if (isGettingOutOfPenaltyBox) { @@ -148,7 +204,11 @@ public boolean wasCorrectlyAnswered() { return winner; } } - + + /** + * check if the answers is wrong + * @return true if the answers is wrong + */ public boolean wrongAnswer(){ System.out.println("Question was incorrectly answered"); System.out.println(players.get(currentPlayer)+ " was sent to the penalty box"); diff --git a/java/src/main/lib/ApprovalTests.jar b/java/src/main/lib/ApprovalTests.jar old mode 100644 new mode 100755 diff --git a/java/src/test/java/.gitignore b/java/src/test/java/.gitignore old mode 100644 new mode 100755 diff --git a/java/src/test/java/com/adaptionsoft/games/trivia/GameTest.itsLockedDown.approved.txt b/java/src/test/java/com/adaptionsoft/games/trivia/GameTest.itsLockedDown.approved.txt old mode 100644 new mode 100755 diff --git a/java/src/test/java/com/adaptionsoft/games/trivia/GameTest.java b/java/src/test/java/com/adaptionsoft/games/trivia/GameTest.java old mode 100644 new mode 100755 diff --git a/javascript/.gitignore b/javascript/.gitignore deleted file mode 100644 index 0cbf403..0000000 --- a/javascript/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -node_modules -src/game.js diff --git a/javascript/README.md b/javascript/README.md deleted file mode 100644 index a719772..0000000 --- a/javascript/README.md +++ /dev/null @@ -1,7 +0,0 @@ - -Install modules and run the tests - - npm i - npm test -- -w # watch mode - - \ No newline at end of file diff --git a/javascript/package-lock.json b/javascript/package-lock.json deleted file mode 100644 index 0c4da1c..0000000 --- a/javascript/package-lock.json +++ /dev/null @@ -1,849 +0,0 @@ -{ - "name": "trivia", - "version": "1.0.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "ansicolors": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", - "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=", - "dev": true - }, - "approvals": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/approvals/-/approvals-2.1.2.tgz", - "integrity": "sha1-exIOL3YbOycvwbrwRkI3CMzPFI0=", - "dev": true, - "requires": { - "callsite": "^1.0.0", - "chalk": "^1.1.1", - "diff": "^3.2.0", - "event-stream": "^3.1.5", - "file-type": "^4.1.0", - "glob": "^7.1.1", - "js-yaml": "^3.2.2", - "lodash": "^4.17.4", - "minimist": "^1.2.0", - "mkdirp": "^0.5.0", - "msee": "^0.3.3", - "shelljs": "^0.7.6", - "temp": "^0.8.3", - "user-home": "^2.0.0" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" - }, - "assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" - }, - "callsite": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", - "dev": true - }, - "cardinal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cardinal/-/cardinal-1.0.0.tgz", - "integrity": "sha1-UOIcGwqjdyn5N33vGWtanOyTLuk=", - "dev": true, - "requires": { - "ansicolors": "~0.2.1", - "redeyed": "~1.0.0" - }, - "dependencies": { - "ansicolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.2.1.tgz", - "integrity": "sha1-vgiVmQl7dKXJxKhKDNvNtivYeu8=", - "dev": true - } - } - }, - "chai": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-3.5.0.tgz", - "integrity": "sha1-TQJjewZ/6Vi9v906QOxW/vc3Mkc=", - "dev": true, - "requires": { - "assertion-error": "^1.0.1", - "deep-eql": "^0.1.3", - "type-detect": "^1.0.0" - } - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "color-convert": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", - "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", - "dev": true, - "requires": { - "color-name": "^1.1.1" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "combined-stream-wait-for-it": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/combined-stream-wait-for-it/-/combined-stream-wait-for-it-1.1.0.tgz", - "integrity": "sha1-4EtO6ITNZXFerE5Yqxc2eiy6RoU=", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", - "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-eql": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-0.1.3.tgz", - "integrity": "sha1-71WKyrjeJSBs1xOQbXTlaTDrafI=", - "dev": true, - "requires": { - "type-detect": "0.1.1" - }, - "dependencies": { - "type-detect": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-0.1.1.tgz", - "integrity": "sha1-C6XsKohWQORw6k6FBZcZANrFiCI=", - "dev": true - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==" - }, - "duplexer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", - "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", - "dev": true - }, - "entities": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", - "dev": true - }, - "event-stream": { - "version": "3.3.4", - "resolved": "http://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz", - "integrity": "sha1-SrTJoPWlTbkzi0w02Gv86PSzVXE=", - "dev": true, - "requires": { - "duplexer": "~0.1.1", - "from": "~0", - "map-stream": "~0.1.0", - "pause-stream": "0.0.11", - "split": "0.3", - "stream-combiner": "~0.0.4", - "through": "~2.3.1" - } - }, - "file-type": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-4.4.0.tgz", - "integrity": "sha1-G2AOX8ofvcboDApwxxyNul95BsU=", - "dev": true - }, - "from": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", - "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "he": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "interpret": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "lodash": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.13.tgz", - "integrity": "sha512-vm3/XWXfWtRua0FkUyEHBZy8kCPjErNBT9fJx8Zvs+U6zjqPbTUOpkaoum3O5uiA8sm+yNMHXfYkTUHFoMxFNA==" - }, - "make-error": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz", - "integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==" - }, - "map-stream": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz", - "integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=", - "dev": true - }, - "marked": { - "version": "0.3.12", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.12.tgz", - "integrity": "sha512-k4NaW+vS7ytQn6MgJn3fYpQt20/mOgYM5Ft9BYMfQJDz2QT6yEeS9XJ8k2Nw8JTeWK/znPPW2n3UJGzyYEiMoA==", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - } - } - }, - "mocha": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz", - "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==", - "dev": true, - "requires": { - "browser-stdout": "1.3.1", - "commander": "2.15.1", - "debug": "3.1.0", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "glob": "7.1.2", - "growl": "1.10.5", - "he": "1.1.1", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "supports-color": "5.4.0" - }, - "dependencies": { - "supports-color": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", - "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "msee": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/msee/-/msee-0.3.5.tgz", - "integrity": "sha512-4ujQAsunNBX8AVN6nyiIj4jW3uHQsY3xpFVKTzbjKiq57C6GXh0h12qYehXwLYItmhpgWRB3W8PnzODKWxwXxA==", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0", - "ansicolors": "^0.3.2", - "cardinal": "^1.0.0", - "chalk": "^2.3.1", - "combined-stream-wait-for-it": "^1.1.0", - "entities": "^1.1.1", - "marked": "0.3.12", - "nopt": "^4.0.1", - "strip-ansi": "^4.0.0", - "table-header": "^0.2.2", - "text-table": "^0.2.0", - "through2": "^2.0.3", - "wcstring": "^2.1.0", - "xtend": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", - "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "supports-color": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", - "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "nopt": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", - "dev": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", - "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", - "dev": true - }, - "pause-stream": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", - "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=", - "dev": true, - "requires": { - "through": "~2.3" - } - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", - "dev": true - }, - "readable-stream": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz", - "integrity": "sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.0.3", - "util-deprecate": "~1.0.1" - } - }, - "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", - "dev": true, - "requires": { - "resolve": "^1.1.6" - } - }, - "redeyed": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/redeyed/-/redeyed-1.0.1.tgz", - "integrity": "sha1-6WwZO0DAgWsArshCaY5hGF5VSYo=", - "dev": true, - "requires": { - "esprima": "~3.0.0" - }, - "dependencies": { - "esprima": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.0.0.tgz", - "integrity": "sha1-U88kes2ncxPlUcOqLnM0LT+099k=", - "dev": true - } - } - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, - "resolve": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.6.0.tgz", - "integrity": "sha512-mw7JQNu5ExIkcw4LPih0owX/TZXjD/ZUF/ZQ/pDnkw3ZKhDcZZw5klmBlj6gVMwjQ3Pz5Jgu7F3d0jcDVuEWdw==", - "dev": true, - "requires": { - "path-parse": "^1.0.5" - } - }, - "rimraf": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz", - "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=", - "dev": true - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true - }, - "shelljs": { - "version": "0.7.8", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", - "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", - "dev": true, - "requires": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "source-map-support": { - "version": "0.5.9", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.9.tgz", - "integrity": "sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA==", - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "split": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", - "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", - "dev": true, - "requires": { - "through": "2" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "stream-combiner": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz", - "integrity": "sha1-TV5DPBhSYd3mI8o/RMWGvPXErRQ=", - "dev": true, - "requires": { - "duplexer": "~0.1.1" - } - }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "table-header": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/table-header/-/table-header-0.2.2.tgz", - "integrity": "sha1-fJrbQg6laftHF95dj1xFFIBNLAo=", - "dev": true, - "requires": { - "repeat-string": "^1.5.2" - } - }, - "temp": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/temp/-/temp-0.8.3.tgz", - "integrity": "sha1-4Ma8TSa5AxJEEOT+2BEDAU38H1k=", - "dev": true, - "requires": { - "os-tmpdir": "^1.0.0", - "rimraf": "~2.2.6" - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", - "dev": true, - "requires": { - "readable-stream": "^2.1.5", - "xtend": "~4.0.1" - } - }, - "ts-node": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", - "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", - "requires": { - "arrify": "^1.0.0", - "buffer-from": "^1.1.0", - "diff": "^3.1.0", - "make-error": "^1.1.1", - "minimist": "^1.2.0", - "mkdirp": "^0.5.1", - "source-map-support": "^0.5.6", - "yn": "^2.0.0" - } - }, - "type-detect": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-1.0.0.tgz", - "integrity": "sha1-diIXzAbbJY7EiQihKY6LlRIejqI=", - "dev": true - }, - "typescript": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.1.6.tgz", - "integrity": "sha512-tDMYfVtvpb96msS1lDX9MEdHrW4yOuZ4Kdc4Him9oU796XldPYF/t2+uKoX0BBa0hXXwDlqYQbXY5Rzjzc5hBA==" - }, - "user-home": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz", - "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "varsize-string": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/varsize-string/-/varsize-string-2.2.2.tgz", - "integrity": "sha1-7xs7bHLbCDXqL4TN+R/sMMUgaIs=", - "dev": true - }, - "wcsize": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wcsize/-/wcsize-1.0.0.tgz", - "integrity": "sha1-qKLhXmqKdHkdulgPaaV9J+hQ6h4=", - "dev": true - }, - "wcstring": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/wcstring/-/wcstring-2.1.1.tgz", - "integrity": "sha1-3tUtdFycceJNCkidKCbSKjZe0Gc=", - "dev": true, - "requires": { - "varsize-string": "^2.2.1", - "wcsize": "^1.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true - }, - "yn": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", - "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=" - } - } -} diff --git a/javascript/package.json b/javascript/package.json deleted file mode 100644 index 9572a0a..0000000 --- a/javascript/package.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "trivia", - "version": "1.0.0", - "description": "Test with node.js =====================", - "main": "game-runner.js", - "scripts": { - "compile": "tsc -w", - "test:ci": "mocha -r ts-node/register test/**/*.spec.js", - "test": "mocha -w -r ts-node/register test/**/*.spec.js" - }, - "author": "", - "license": "ISC", - "devDependencies": { - "approvals": "^2.1.2", - "chai": "^3.5.0", - "mocha": "^5.2.0" - }, - "dependencies": { - "lodash": "^4.17.13", - "ts-node": "^7.0.1", - "typescript": "^3.1.6" - } -} diff --git a/javascript/src/game-runner.ts b/javascript/src/game-runner.ts deleted file mode 100644 index 16a5c8c..0000000 --- a/javascript/src/game-runner.ts +++ /dev/null @@ -1,27 +0,0 @@ -import {Game} from "./game"; - -export function gameRunner(randomInt) { - - // a simulator of a game - - let notAWinner = false; - - const game = new Game(); - - game.add('Chet'); - game.add('Pat'); - game.add('Sue'); - - do { - - game.roll(randomInt(6)); - - if (randomInt(10) == 7) { - notAWinner = game.wrongAnswer(); - } else { - notAWinner = game.wasCorrectlyAnswered(); - } - - } while (notAWinner); -}; - diff --git a/javascript/src/game.ts b/javascript/src/game.ts deleted file mode 100644 index 02639d6..0000000 --- a/javascript/src/game.ts +++ /dev/null @@ -1,185 +0,0 @@ -export class Game { - - rockQuestions: any[]; - isGettingOutOfPenaltyBox: boolean; - currentPlayer: number; - sportsQuestions: any[]; - scienceQuestions: any[]; - inPenaltyBox: any[]; - popQuestions: any[]; - purses: any[]; - places: any[]; - players: any[]; - - constructor() { - this.players = new Array(); - this.places = new Array(6); - this.purses = new Array(6); - this.inPenaltyBox = new Array(6); - - this.popQuestions = new Array(); - this.scienceQuestions = new Array(); - this.sportsQuestions = new Array(); - this.rockQuestions = new Array(); - - this.currentPlayer = 0; - this.isGettingOutOfPenaltyBox = false; - - for (let i = 0; i < 50; i++) { - this.popQuestions.push("Pop Question " + i); - this.scienceQuestions.push("Science Question " + i); - this.sportsQuestions.push("Sports Question " + i); - this.rockQuestions.push(this.createRockQuestion(i)); - } - - } - - add(playerName) { - this.players.push(playerName); - this.places[this.howManyPlayers() - 1] = 0; - this.purses[this.howManyPlayers() - 1] = 0; - this.inPenaltyBox[this.howManyPlayers() - 1] = false; - - console.log(playerName + " was added"); - console.log("They are player number " + this.players.length); - - return true; - }; - - howManyPlayers() { - return this.players.length; - }; - - didPlayerWin() { - return !(this.purses[this.currentPlayer] == 6) - }; - - currentCategory() { - if (this.places[this.currentPlayer] == 0) - return 'Pop'; - if (this.places[this.currentPlayer] == 4) - return 'Pop'; - if (this.places[this.currentPlayer] == 8) - return 'Pop'; - if (this.places[this.currentPlayer] == 1) - return 'Science'; - if (this.places[this.currentPlayer] == 5) - return 'Science'; - if (this.places[this.currentPlayer] == 9) - return 'Science'; - if (this.places[this.currentPlayer] == 2) - return 'Sports'; - if (this.places[this.currentPlayer] == 6) - return 'Sports'; - if (this.places[this.currentPlayer] == 10) - return 'Sports'; - return 'Rock'; - }; - - - askQuestion() { - if (this.currentCategory() == 'Pop') { - console.log(this.popQuestions.shift()); - } - if (this.currentCategory() == 'Science') { - console.log(this.scienceQuestions.shift()); - } - if (this.currentCategory() == 'Sports') { - console.log(this.sportsQuestions.shift()); - } - if (this.currentCategory() == 'Rock') { - console.log(this.rockQuestions.shift()); - } - }; - - createRockQuestion(index) { - return "Rock Question " + index; - }; - - - isPlayable(howManyPlayers) { - return howManyPlayers >= 2; - }; - - roll(roll) { - console.log(this.players[this.currentPlayer] + " is the current player"); - console.log("They have rolled a " + roll); - - if (this.inPenaltyBox[this.currentPlayer]) { - if (roll % 2 != 0) { - this.isGettingOutOfPenaltyBox = true; - - console.log(this.players[this.currentPlayer] + " is getting out of the penalty box"); - this._movePlayerAndAskQuestion(roll); - } else { - console.log(this.players[this.currentPlayer] + " is not getting out of the penalty box"); - this.isGettingOutOfPenaltyBox = false; - } - } else { - - this._movePlayerAndAskQuestion(roll); - } - }; - - _movePlayerAndAskQuestion(roll) { - this.places[this.currentPlayer] = this.places[this.currentPlayer] + roll; - if (this.places[this.currentPlayer] > 11) { - this.places[this.currentPlayer] = this.places[this.currentPlayer] - 12; - } - - console.log(this.players[this.currentPlayer] + "'s new location is " + this.places[this.currentPlayer]); - console.log("The category is " + this.currentCategory()); - this.askQuestion(); - } - - wasCorrectlyAnswered() { - if (this.inPenaltyBox[this.currentPlayer]) { - if (this.isGettingOutOfPenaltyBox) { - console.log('Answer was correct!!!!'); - this.currentPlayer += 1; - if (this.currentPlayer == this.players.length) - this.currentPlayer = 0; - - this.purses[this.currentPlayer] += 1; - console.log(this.players[this.currentPlayer] + " now has " + - this.purses[this.currentPlayer] + " Gold Coins."); - - var winner = this.didPlayerWin(); - - return winner; - } else { - this.currentPlayer += 1; - if (this.currentPlayer == this.players.length) - this.currentPlayer = 0; - return true; - } - - - } else { - console.log('Answer was correct!!!!'); - - this.currentPlayer += 1; - if (this.currentPlayer == this.players.length) - this.currentPlayer = 0; - this.purses[this.currentPlayer] += 1; - console.log(this.players[this.currentPlayer] + " now has " + - this.purses[this.currentPlayer] + " Gold Coins."); - - var winner = this.didPlayerWin(); - - return winner; - } - }; - - wrongAnswer() { - console.log('Question was incorrectly answered'); - console.log(this.players[this.currentPlayer] + " was sent to the penalty box"); - this.inPenaltyBox[this.currentPlayer] = true; - - this.currentPlayer += 1; - if (this.currentPlayer == this.players.length) - this.currentPlayer = 0; - return true; - }; - -} diff --git a/javascript/src/main.js b/javascript/src/main.js deleted file mode 100644 index 43460c3..0000000 --- a/javascript/src/main.js +++ /dev/null @@ -1,7 +0,0 @@ -"use strict" - -let gameRunner = require('./game-runner') - -gameRunner(function (maxInt) { - return Math.floor(Math.random() * maxInt) + 1 -}); \ No newline at end of file diff --git a/javascript/test/The_game.should_work____.approved.txt b/javascript/test/The_game.should_work____.approved.txt deleted file mode 100644 index 030e9d5..0000000 --- a/javascript/test/The_game.should_work____.approved.txt +++ /dev/null @@ -1,1752 +0,0 @@ -[ - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 5", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 4", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 10", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 1", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 2", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 7", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 4", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat's new location is 4", - "The category is Pop", - "Pop Question 2", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 10", - "The category is Sports", - "Sports Question 4", - "Question was incorrectly answered", - "Sue was sent to the penalty box", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 6", - "The category is Sports", - "Sports Question 5", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 3", - "Sue is getting out of the penalty box", - "Sue's new location is 1", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 0", - "The category is Pop", - "Pop Question 3", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 2", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat's new location is 3", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 1", - "Question was incorrectly answered", - "Sue was sent to the penalty box", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 1", - "Question was incorrectly answered", - "Chet was sent to the penalty box", - "Pat is the current player", - "They have rolled a 1", - "Pat's new location is 4", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue is not getting out of the penalty box", - "Chet is the current player", - "They have rolled a 1", - "Chet is getting out of the penalty box", - "Chet's new location is 4", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 9", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue is getting out of the penalty box", - "Sue's new location is 7", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet is getting out of the penalty box", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 3", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 1", - "Pat's new location is 10", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Sue now has 4 Gold Coins.", - "Sue is the current player", - "They have rolled a 4", - "Sue is not getting out of the penalty box", - "Chet is the current player", - "They have rolled a 3", - "Chet is getting out of the penalty box", - "Chet's new location is 10", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 2", - "The category is Sports", - "Sports Question 4", - "Answer was correct!!!!", - "Sue now has 5 Gold Coins.", - "Sue is the current player", - "They have rolled a 4", - "Sue is not getting out of the penalty box", - "Chet is the current player", - "They have rolled a 6", - "Chet is not getting out of the penalty box", - "Pat is the current player", - "They have rolled a 1", - "Pat's new location is 3", - "The category is Rock", - "Rock Question 4", - "Answer was correct!!!!", - "Sue now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 5", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 6", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 3", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 0", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 5", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 0", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat's new location is 3", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 8", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 4", - "The category is Pop", - "Pop Question 3", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 9", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Sue now has 4 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 8", - "The category is Pop", - "Pop Question 4", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat's new location is 11", - "The category is Rock", - "Rock Question 3", - "Answer was correct!!!!", - "Sue now has 5 Gold Coins.", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 4", - "The category is Pop", - "Pop Question 5", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 9", - "The category is Science", - "Science Question 3", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 4", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 5", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 10", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 11", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 2", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 1", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 9", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 6", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Sue now has 4 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 4", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 3", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 11", - "The category is Rock", - "Rock Question 4", - "Answer was correct!!!!", - "Sue now has 5 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 3", - "The category is Rock", - "Rock Question 5", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 6", - "The category is Sports", - "Sports Question 5", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 4", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 4", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 3", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 9", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 10", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 8", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 11", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 4", - "The category is Pop", - "Pop Question 3", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 11", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 1", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat's new location is 6", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Sue now has 4 Gold Coins.", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 2", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 11", - "The category is Rock", - "Rock Question 3", - "Answer was correct!!!!", - "Sue now has 5 Gold Coins.", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 5", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 8", - "The category is Pop", - "Pop Question 4", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat's new location is 3", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 1", - "Pat's new location is 4", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 5", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 0", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 8", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 10", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 6", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 1", - "Pat's new location is 9", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Sue now has 4 Gold Coins.", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 0", - "The category is Pop", - "Pop Question 3", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat's new location is 11", - "The category is Rock", - "Rock Question 3", - "Answer was correct!!!!", - "Sue now has 5 Gold Coins.", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 7", - "The category is Rock", - "Rock Question 4", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 5", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 1", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat's new location is 3", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 5", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 8", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 9", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 0", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 0", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 0", - "The category is Pop", - "Pop Question 3", - "Question was incorrectly answered", - "Chet was sent to the penalty box", - "Pat is the current player", - "They have rolled a 1", - "Pat's new location is 1", - "The category is Science", - "Science Question 3", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet is not getting out of the penalty box", - "Pat is the current player", - "They have rolled a 4", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 8", - "The category is Pop", - "Pop Question 4", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 1", - "Chet is getting out of the penalty box", - "Chet's new location is 1", - "The category is Science", - "Science Question 4", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat is not getting out of the penalty box", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 0", - "The category is Pop", - "Pop Question 5", - "Answer was correct!!!!", - "Chet now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 2", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat's new location is 3", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 5", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 8", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 9", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 0", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 10", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 0", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 1", - "Pat's new location is 1", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Sue now has 4 Gold Coins.", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 7", - "The category is Rock", - "Rock Question 3", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 3", - "The category is Rock", - "Rock Question 4", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 5", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 5", - "The category is Science", - "Science Question 0", - "Question was incorrectly answered", - "Chet was sent to the penalty box", - "Pat is the current player", - "They have rolled a 2", - "Pat's new location is 2", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet is getting out of the penalty box", - "Chet's new location is 8", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 7", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 7", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet is not getting out of the penalty box", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 0", - "The category is Pop", - "Pop Question 1", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 8", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet is getting out of the penalty box", - "Chet's new location is 11", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet is not getting out of the penalty box", - "Pat is the current player", - "They have rolled a 3", - "Pat is getting out of the penalty box", - "Pat's new location is 3", - "The category is Rock", - "Rock Question 3", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 8", - "The category is Pop", - "Pop Question 3", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet is getting out of the penalty box", - "Chet's new location is 2", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat is getting out of the penalty box", - "Pat's new location is 6", - "The category is Sports", - "Sports Question 4", - "Answer was correct!!!!", - "Sue now has 4 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 5", - "Answer was correct!!!!", - "Chet now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 4", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 6", - "The category is Sports", - "Sports Question 0", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 5", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 8", - "The category is Pop", - "Pop Question 1", - "Question was incorrectly answered", - "Chet was sent to the penalty box", - "Pat is the current player", - "They have rolled a 6", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 9", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet is getting out of the penalty box", - "Chet's new location is 1", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 10", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet is not getting out of the penalty box", - "Pat is the current player", - "They have rolled a 5", - "Pat is getting out of the penalty box", - "Pat's new location is 11", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 3", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 1", - "Chet is getting out of the penalty box", - "Chet's new location is 2", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat is not getting out of the penalty box", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 9", - "The category is Science", - "Science Question 3", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet is getting out of the penalty box", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 1", - "The category is Science", - "Science Question 4", - "Answer was correct!!!!", - "Chet now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 1", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat's new location is 2", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 5", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 6", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 7", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 11", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 0", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 7", - "The category is Rock", - "Rock Question 2", - "Question was incorrectly answered", - "Sue was sent to the penalty box", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 5", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat's new location is 6", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Sue now has 4 Gold Coins.", - "Sue is the current player", - "They have rolled a 2", - "Sue is not getting out of the penalty box", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 3", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat's new location is 8", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Sue now has 5 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue is not getting out of the penalty box", - "Question was incorrectly answered", - "Sue was sent to the penalty box", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 8", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 1", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat's new location is 3", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 4", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 1", - "Pat's new location is 4", - "The category is Pop", - "Pop Question 1", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 10", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 11", - "The category is Rock", - "Rock Question 3", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 11", - "The category is Rock", - "Rock Question 4", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 0", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 1", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 6", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 1", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 5", - "The category is Science", - "Science Question 3", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat's new location is 5", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 6", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat's new location is 7", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 6", - "Sue's new location is 0", - "The category is Pop", - "Pop Question 0", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 10", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat's new location is 10", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Sue now has 3 Gold Coins.", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 4", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 6", - "Chet's new location is 4", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 2", - "The category is Sports", - "Sports Question 5", - "Answer was correct!!!!", - "Sue now has 4 Gold Coins.", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 4", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 4", - "Pat's new location is 6", - "The category is Sports", - "Sports Question 6", - "Answer was correct!!!!", - "Sue now has 5 Gold Coins.", - "Sue is the current player", - "They have rolled a 1", - "Sue's new location is 5", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 8", - "The category is Pop", - "Pop Question 3", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 2", - "The category is Sports", - "Sports Question 0", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat's new location is 2", - "The category is Sports", - "Sports Question 1", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet's new location is 7", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 3", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet's new location is 10", - "The category is Sports", - "Sports Question 4", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat is getting out of the penalty box", - "Pat's new location is 5", - "The category is Science", - "Science Question 0", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 11", - "The category is Rock", - "Rock Question 1", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 1", - "Chet's new location is 11", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Pat now has 4 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 1", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 4", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 3", - "Answer was correct!!!!", - "Pat now has 5 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 6", - "The category is Sports", - "Sports Question 5", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 5", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Pat now has 6 Gold Coins.", - "Chet was added", - "They are player number 1", - "Pat was added", - "They are player number 2", - "Sue was added", - "They are player number 3", - "Chet is the current player", - "They have rolled a 2", - "Chet's new location is 2", - "The category is Sports", - "Sports Question 0", - "Question was incorrectly answered", - "Chet was sent to the penalty box", - "Pat is the current player", - "They have rolled a 1", - "Pat's new location is 1", - "The category is Science", - "Science Question 0", - "Answer was correct!!!!", - "Sue now has 1 Gold Coins.", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 2", - "The category is Sports", - "Sports Question 1", - "Answer was correct!!!!", - "Chet now has 1 Gold Coins.", - "Chet is the current player", - "They have rolled a 3", - "Chet is getting out of the penalty box", - "Chet's new location is 5", - "The category is Science", - "Science Question 1", - "Answer was correct!!!!", - "Pat now has 1 Gold Coins.", - "Pat is the current player", - "They have rolled a 3", - "Pat's new location is 4", - "The category is Pop", - "Pop Question 0", - "Question was incorrectly answered", - "Pat was sent to the penalty box", - "Sue is the current player", - "They have rolled a 2", - "Sue's new location is 4", - "The category is Pop", - "Pop Question 1", - "Answer was correct!!!!", - "Chet now has 2 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet is getting out of the penalty box", - "Chet's new location is 10", - "The category is Sports", - "Sports Question 2", - "Answer was correct!!!!", - "Pat now has 2 Gold Coins.", - "Pat is the current player", - "They have rolled a 5", - "Pat is getting out of the penalty box", - "Pat's new location is 9", - "The category is Science", - "Science Question 2", - "Answer was correct!!!!", - "Sue now has 2 Gold Coins.", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 7", - "The category is Rock", - "Rock Question 0", - "Answer was correct!!!!", - "Chet now has 3 Gold Coins.", - "Chet is the current player", - "They have rolled a 2", - "Chet is not getting out of the penalty box", - "Question was incorrectly answered", - "Chet was sent to the penalty box", - "Pat is the current player", - "They have rolled a 2", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 5", - "Sue's new location is 0", - "The category is Pop", - "Pop Question 2", - "Answer was correct!!!!", - "Chet now has 4 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet is getting out of the penalty box", - "Chet's new location is 3", - "The category is Rock", - "Rock Question 1", - "Question was incorrectly answered", - "Chet was sent to the penalty box", - "Pat is the current player", - "They have rolled a 2", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 4", - "Sue's new location is 4", - "The category is Pop", - "Pop Question 3", - "Answer was correct!!!!", - "Chet now has 5 Gold Coins.", - "Chet is the current player", - "They have rolled a 5", - "Chet is getting out of the penalty box", - "Chet's new location is 8", - "The category is Pop", - "Pop Question 4", - "Answer was correct!!!!", - "Pat now has 3 Gold Coins.", - "Pat is the current player", - "They have rolled a 2", - "Pat is not getting out of the penalty box", - "Sue is the current player", - "They have rolled a 3", - "Sue's new location is 7", - "The category is Rock", - "Rock Question 2", - "Answer was correct!!!!", - "Chet now has 6 Gold Coins." -] diff --git a/javascript/test/game.spec.js b/javascript/test/game.spec.js deleted file mode 100644 index 6fae3b9..0000000 --- a/javascript/test/game.spec.js +++ /dev/null @@ -1,29 +0,0 @@ -const {Game} = require('../src/game'); -const {gameRunner} = require('../src/game-runner'); - -const expect = require('chai').expect; -const approvals = require('approvals'); -approvals.mocha(); -const _ = require('lodash'); -const {getRandom} = require('./rands'); - -describe("The game", function () { - it("should work ;-)", function () { - - const loggedLines = []; - const oldLog = console.log; - console.log = function (arg) { - loggedLines.push(arg); - } - - _.range(15).forEach(() => { - gameRunner(getRandom) - }); - - console.log = oldLog; - - this.verifyAsJSON(loggedLines) - - }); - -}); diff --git a/javascript/test/rands.js b/javascript/test/rands.js deleted file mode 100644 index 999662f..0000000 --- a/javascript/test/rands.js +++ /dev/null @@ -1,9 +0,0 @@ -const seeds = [0.77,0.92,0.57,0.29,0.24,0.85,0.24,0.48,0.89,0.18,0.59,0.78,0.97,0.89,0.55,0.79,0.07,0.16,0.38,0.75,0.33,0.63,0.35,0.64,0.19,0.73,0.58,0.91,0.42,0.48,0.96,0.26,0.31,0.08,0.4,0.87,0.86,0.67,0.02,0.68,0.03,0.49,0.96,0.9,0.05,0.2,0.68,0.77,0.04,0.38,0.34,0.2,0.11,0.35,0.6,0.78,0.47,1,0.53,0.95,0.55,0.01,0.9,0.3,0.15,0.07,0.74,0.15,0.84,0.9,0.34,0.43,0.2,0.58,0.89,0.97,0.21,0.47,0.82,0.77,0.34,0.72,0.45,0.03,0.57,0.96,0.93,0.51,0.84,0.9,0.54,0.2,0.28,0.35,0.26,0.25,0.07,0.74,0.5,0.19,0.57,0.44,1,0.11,0.3,0.6,0.94,0.44,0.8,0.39,0.19,1,0.53,0.98,0.2,0.16,0.24,0.53,0.6,0.28,0.03,0.26,0.92,0.27,0.79,0.77,0.14,0.39,0.38,0.73,0.62,0.96,0.65,0.6,0.4,0.89,0.76,0.06,0.97,0.38,0.82,0.54,0.23,0.29,1,0.28,0.46,0.99,0.28,0.01,0.31,0.27,0.41,0.29,0.14,0.93,0.83,0.43,0.48,0.6,0.84,0.16,0.35,0.36,0.48,0.26,0.17,0.36,0.56,0.34,0.1,0.88,0.49,0.51,0.77,0.42,0.62,0.87,0.72,0.92,0.91,0.81,0.1,0.01,0.54,0.45,0.87,0.01,0.22,0.85,0.78,0.75,0.72,0.36,0.16,0.58,0.44,0.99,0.68,0.23,0.98,0.13,0.75,0.76,0.13,0.77,0.32,0.87,0.63,0.45,1,0.14,0.36,0.63,0.04,0.65,0.17,0.59,0.51,0.87,0.65,0.53,0.92,0.53,0.07,0.13,0.51,0.7,0.61,0.24,0.26,0.71,0.42,0.03,0.68,0.74,0.12,0.06,0.67,0.46,0.11,0.23,0.94,0.84,0.6,0.89,0.54,0.44,0.48,0.59,0.07,0.45,0.63,1,0.36,0.73,0.86,0.68,0.13,0.26,0.65,0.16,0.81,0.7,0.24,0.99,0.9,0.56,0.48,0.2,0.71,0.97,0.12,0.21,0.86,0.13,0.82,0.62,0.16,0.72,0.46,0.77,0.65,0.16,0.98,0.34,0.62,0.52,0.45,0.82,0.86,0.83,0.41,0.4,0.35,0.18,0.88,0.38,0.6,0.49,0.92,0.68,0.77,0.17,0.61,0.62,0.94,0.1,0.57,0.12,0.7,0.46,0.18,0.8,0.07,0.05,0.61,0.19,0.76,0.21,0.67,0.15,0.05,0.17,0.99,0.68,0.96,0.87,0.69,0.43,0.29,0.8,0.64,0.94,0.1,0.19,0.17,0.57,0.78,0.76,0.69,0.27,0.82,0.55,0.1,0.85,0.72,0.85,0.73,0.3,0.01,0.61,0.88,0.32,0.92,0.75,0.17,0.27,0.25,0.98,0.23,0.94,0.86,0.64,0.14,0.83,0.06,0.71,0.37,0.39,0.51,0.96,0.19,0.31,0.08,0.65,0.94,0.84,0.62,0.27,0.27,0.14,0.11,0.71,0.59,0.17,0.65,0.36,0.12,0.58,0.17,0.38,0.9,0.02,0.03,0.98,0.63,0.06,0.44,0.07,0.73,0.26,0.95,0.09,0.42,0.78,0.19,0.23,1,0.98,0.55,0.4,0.49,0.88,0.19,0.76,0.97,0.12,0.57,0.95,0.24,0.51,0.39,0.34,0.65,0.38,0.05,0.24,0.06,0.1,0.26,0.4,0.17,0.69,0.28,0.52,0.75,0.75,0.33,0.72,0.59,0.77,0.5,0.52,0.39,0.68,0.77,0.37,0.08,0.85,0.2,0.96,0.21,0.24,0.54,0.53,0.25,0.81,0.81,0.8,0.21,0.95,0.19,0.68,0.07,0.16,0.31,0.22,0.36,0.29,0.34,0.62,0.28,0.36,0.74,0.84,0.68,0.31,0.46,0.01,0.17,0.62,0.3,0.88,0.79,0.16,0.7,0.69,0.2,0.44,0.59,0.34,0.82,0.88,0.21,0.26,0.42,0.83,0.43,0.64,0.47,0.62,0.75,0.5,0.25,0.83,0.43,0.48,0.97,0.5,0.18,0.15,0.51,0.59,0.86,0.51,0.44,0.96,0.04,0.65,0.19,0.64,0.32,0.26,0.29,0.46,0.4,0.19,0.38,0.58,0.15,0.44,0.81,0.69,0.73,0.11,0.62,0.49,0.92,0.22,0.67,0.19,0.64,0.71,0.81,0.47,0.96,0.31,0.24,0.92,0.47,0.48,0.15,0.03,0.74,0.36,0.17,0.67,0.53,0.87,0.12,0.89,0.48,0.62,0.6,0.02,0.47,0.4,0.84,0.82,0.89,0.49,0.32,0.99,0.54,0.21,0.56,0.56,0.08,0.14,0.97,0.97,0.45,0.92,0.09,0.65,0.6,0.6,0.23,0.29,0.02,0.07,0.89,0.74,0.06,0.45,0.73,0.65,0.15,0.38,0.74,0.86,0.54,0.76,0.95,0.41,0.76,0.22,0.3,0.98,0.57,0.03,0.94,0.48,0.66,0.26,0.88,0.23,0.46,0.85,0.69,0.7,0.47,0.09,0.35,0.38,0.03,0.07,0.28,0.1,0.03,0.99,0.79,0.75,0.34,0.28,0.99,0.95,0.58,0.91,0.72,0.79,0.45,0.55,0.15,0.05,0.48,0.63,0.64,0.26,0.17,0.93,0.12,0.53,0.25,0.21,0.24,0.11,0.59,0.22,0.35,0.11,0.24,0.79,0.3,0.24,0.19,0.9,0.68,0.24,0.23,0.56,0.62,0.18,0.82,0.69,0.51,0.75,0.64,1,0.6,0.11,0.78,0.28,0.35,0.34,0.52,1,0.37,0.27,0.7,0.49,0.81,0.61,0.88,0.14,0.98,0.74,1,0.67,0.17,0.45,0.34,0.25,0.33,0.6,0.82,0.3,0.38,0.87,0.43,0.71,0.84,0.86,0.55,0.87,0.17,0.96,0.08,0.29,0.04,0.27,0.72,0.35,0.94,0.03,0.18,0.73,0.69,0.55,0.36,0.94,0.4,0.82,0.04,0.68,0.22,0.29,0.39,0.34,0.83,0.99,0.47,0.74,0.43,0.61,0.46,0.73,0.8,0.81,0.76,0.87,0.7,0.11,0.88,0.34,0.81,0.6,0.95,0.64,0.14,0.34,0.55,0.78,0.56,0.72,0.39,0.38,0.11,0.81,0.66,0.43,0.4,0.73,0.07,0.38,0.96,0.06,0.68,0.73,0.68,0.81,0.54,0.63,0.78,0.9,0.91,0.53,0.2,0.77,0.18,0.61,0.68,0.27,0.61,0.97,0.08,0.15,0.93,0.14,0.98,0.21,0.84,0.95,0.02,0.29,0.74,0.84,0.41,0.14,0.72,0.08,0.83,0.32,0.27,0.95,0.45,0.12,0.8,0.21,0.82,0.02,0.89,0.86,0.44,0.09,0.74,0.69,0.52,0.01,0.51,0.47,0.18,1,0.44,0.73,0.6,0.01,0.68,0.37,0.44,0.1,0.56,0.88,0.79,0.41,0.96,0.7,0.81,0.2,0.92,0.88,0.15,0.89,0.34,0.3,0.76,0.9,0.54,0.46,0.33,0.7,0.72,0.27,0.67,0.84,0.41,0.48,0.14,0.05,0.35,0.73,0.69,0.75,0.13,0.84,0.12,0.82,0.55,0.19,0.29,0.05,0.14,0.65,0.87,0.9,0.96,0.96,0.44,0.98,0.74,0.06,0.68,0.64,0.4,0.59,0.23,0.09,0.8,0.05,0.83,0.2,0.54,0.6,0.92,0.8,0.87,0.59,0.73,0.97,0.89,0.73,0.31,0.19,0.98,0.09,0.55,0.15,0.02,0.74,0.79,0.32,0.36,0.2,0.37,0.19,0.41,0.49,0.19,0.86,0.65,0.29,0.22,0.3,0.01,0.29,0.99,0.01,0.73,0.24,0.23,0.39,0.13,0.77,0.91,0.85,0.4,0.59,0.57,0.4,0.97,0.55,0.33,0.82,0.96,0.32,0.08,0.38,0.79,0.59,0.99,0.55,0.97,0.9,0.67,0.6,0.82,0.47,0.04,0.52,0.72,0.49,0.64,0.6,0.24,0.96,0.81,0.1,0.11,0.25,0.27,0.6,0.14,0.32,0.34,0.49,0.06,0.04,0.12,0.78,0.46,0.28,0.69,0.69,0.69,0.19,0.18,0.07,0.23,0.53]; - -let i = -1; -function getRandom(upperLimit) { - i++; - return Math.ceil(seeds[i] * upperLimit); -} - -module.exports = {getRandom}; diff --git a/javascript/tsconfig.json b/javascript/tsconfig.json deleted file mode 100644 index dbf5579..0000000 --- a/javascript/tsconfig.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "compilerOptions": { - /* Basic Options */ - "target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */ - "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ - // "lib": [], /* Specify library files to be included in the compilation. */ - // "allowJs": true, /* Allow javascript files to be compiled. */ - // "checkJs": true, /* Report errors in .js files. */ - // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */ - // "declaration": true, /* Generates corresponding '.d.ts' file. */ - // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */ - // "sourceMap": true, /* Generates corresponding '.map' file. */ - // "outFile": "./", /* Concatenate and emit output to single file. */ - // "outDir": "./", /* Redirect output structure to the directory. */ - // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ - // "composite": true, /* Enable project compilation */ - // "removeComments": true, /* Do not emit comments to output. */ - // "noEmit": true, /* Do not emit outputs. */ - // "importHelpers": true, /* Import emit helpers from 'tslib'. */ - // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ - // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ - - /* Strict Type-Checking Options */ - "strict": true, /* Enable all strict type-checking options. */ - "noImplicitAny": false, /* Raise error on expressions and declarations with an implied 'any' type. */ - // "strictNullChecks": true, /* Enable strict null checks. */ - // "strictFunctionTypes": true, /* Enable strict checking of function types. */ - // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ - // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ - // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ - - /* Additional Checks */ - // "noUnusedLocals": true, /* Report errors on unused locals. */ - // "noUnusedParameters": true, /* Report errors on unused parameters. */ - // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ - // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ - - /* Module Resolution Options */ - // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ - // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ - // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ - // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ - // "typeRoots": [], /* List of folders to include type definitions from. */ - // "types": [], /* Type declaration files to be included in compilation. */ - // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ - "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ - // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ - - /* Source Map Options */ - // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ - // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ - // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ - // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ - - /* Experimental Options */ - // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ - // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ - } -} \ No newline at end of file diff --git a/kotlin/.gitignore b/kotlin/.gitignore deleted file mode 100644 index eb5a316..0000000 --- a/kotlin/.gitignore +++ /dev/null @@ -1 +0,0 @@ -target diff --git a/kotlin/pom.xml b/kotlin/pom.xml deleted file mode 100644 index 0d7b10b..0000000 --- a/kotlin/pom.xml +++ /dev/null @@ -1,107 +0,0 @@ - - 4.0.0 - com.adaptionsoft.games - uglytrivia - jar - - - 1.2.0 - - - - 1.0-SNAPSHOT - - - - com.github.approvals - ApprovalTests - 0.17 - system - ${project.basedir}/src/main/lib/ApprovalTests.jar - - - junit - junit - 4.8.2 - - - org.jetbrains.kotlin - kotlin-stdlib-jdk8 - ${kotlin.version} - - - org.jetbrains.kotlin - kotlin-test - ${kotlin.version} - test - - - - - - - ${project.basedir}/src/main/kotlin - ${project.basedir}/src/test/kotlin - - - org.apache.maven.plugins - maven-resources-plugin - 2.5 - - UTF-8 - - - - org.jetbrains.kotlin - kotlin-maven-plugin - ${kotlin.version} - - - compile - compile - - compile - - - - test-compile - test-compile - - test-compile - - - - - 1.8 - - - - org.apache.maven.plugins - maven-compiler-plugin - 2.3.2 - - - compile - compile - - compile - - - - testCompile - test-compile - - testCompile - - - - - 1.8 - 1.8 - UTF-8 - - - - - diff --git a/kotlin/src/main/kotlin/com/adaptionsoft/games/trivia/runner/GameRunner.kt b/kotlin/src/main/kotlin/com/adaptionsoft/games/trivia/runner/GameRunner.kt deleted file mode 100644 index f4e526a..0000000 --- a/kotlin/src/main/kotlin/com/adaptionsoft/games/trivia/runner/GameRunner.kt +++ /dev/null @@ -1,40 +0,0 @@ -package com.adaptionsoft.games.trivia.runner - -import java.util.Random - -import com.adaptionsoft.games.uglytrivia.Game - - -object GameRunner { - - private var notAWinner: Boolean = false - - @JvmStatic - fun main(args: Array) { - val rand = Random() - playGame(rand) - - } - - fun playGame(rand: Random) { - val aGame = Game() - - aGame.add("Chet") - aGame.add("Pat") - aGame.add("Sue") - - - do { - - aGame.roll(rand.nextInt(5) + 1) - - if (rand.nextInt(9) == 7) { - notAWinner = aGame.wrongAnswer() - } else { - notAWinner = aGame.wasCorrectlyAnswered() - } - - - } while (notAWinner) - } -} diff --git a/kotlin/src/main/kotlin/com/adaptionsoft/games/uglytrivia/Game.kt b/kotlin/src/main/kotlin/com/adaptionsoft/games/uglytrivia/Game.kt deleted file mode 100644 index eaf2b97..0000000 --- a/kotlin/src/main/kotlin/com/adaptionsoft/games/uglytrivia/Game.kt +++ /dev/null @@ -1,167 +0,0 @@ -package com.adaptionsoft.games.uglytrivia - -import java.util.LinkedList - -class Game { - var players = mutableListOf() - var places = IntArray(6) - var purses = IntArray(6) - var inPenaltyBox = BooleanArray(6) - - var popQuestions = mutableListOf() - var scienceQuestions = mutableListOf() - var sportsQuestions = mutableListOf() - var rockQuestions = mutableListOf() - - var currentPlayer = 0 - var isGettingOutOfPenaltyBox: Boolean = false - - val isPlayable: Boolean - get() = howManyPlayers() >= 2 - - init { - for (i in 0..49) { - popQuestions.addLast("Pop Question " + i) - scienceQuestions.addLast("Science Question " + i) - sportsQuestions.addLast("Sports Question " + i) - rockQuestions.addLast(createRockQuestion(i)) - } - } - - fun createRockQuestion(index: Int): String { - return "Rock Question " + index - } - - fun add(playerName: String): Boolean { - - - players.add(playerName) - places[howManyPlayers()] = 0 - purses[howManyPlayers()] = 0 - inPenaltyBox[howManyPlayers()] = false - - println(playerName + " was added") - println("They are player number " + players.size) - return true - } - - fun howManyPlayers(): Int { - return players.size - } - - fun roll(roll: Int) { - println(players.get(currentPlayer) + " is the current player") - println("They have rolled a " + roll) - - if (inPenaltyBox[currentPlayer]) { - if (roll % 2 != 0) { - isGettingOutOfPenaltyBox = true - - println(players.get(currentPlayer) + " is getting out of the penalty box") - movePlayerAndAskQuestion(roll) - } else { - println(players.get(currentPlayer) + " is not getting out of the penalty box") - isGettingOutOfPenaltyBox = false - } - - } else { - - movePlayerAndAskQuestion(roll) - } - - } - - private fun movePlayerAndAskQuestion(roll: Int) { - places[currentPlayer] = places[currentPlayer] + roll - if (places[currentPlayer] > 11) places[currentPlayer] = places[currentPlayer] - 12 - - println(players.get(currentPlayer) - + "'s new location is " - + places[currentPlayer]) - println("The category is " + currentCategory()) - askQuestion() - } - - private fun askQuestion() { - if (currentCategory() === "Pop") - println(popQuestions.removeFirst()) - if (currentCategory() === "Science") - println(scienceQuestions.removeFirst()) - if (currentCategory() === "Sports") - println(sportsQuestions.removeFirst()) - if (currentCategory() === "Rock") - println(rockQuestions.removeFirst()) - } - - - private fun currentCategory(): String { - if (places[currentPlayer] == 0) return "Pop" - if (places[currentPlayer] == 4) return "Pop" - if (places[currentPlayer] == 8) return "Pop" - if (places[currentPlayer] == 1) return "Science" - if (places[currentPlayer] == 5) return "Science" - if (places[currentPlayer] == 9) return "Science" - if (places[currentPlayer] == 2) return "Sports" - if (places[currentPlayer] == 6) return "Sports" - return if (places[currentPlayer] == 10) "Sports" else "Rock" - } - - fun wasCorrectlyAnswered(): Boolean { - if (inPenaltyBox[currentPlayer]) { - if (isGettingOutOfPenaltyBox) { - println("Answer was correct!!!!") - currentPlayer++ - if (currentPlayer == players.size) currentPlayer = 0 - purses[currentPlayer]++ - println(players.get(currentPlayer) - + " now has " - + purses[currentPlayer] - + " Gold Coins.") - - return didPlayerWin() - } else { - currentPlayer++ - if (currentPlayer == players.size) currentPlayer = 0 - return true - } - - - } else { - - println("Answer was corrent!!!!") - purses[currentPlayer]++ - println(players.get(currentPlayer) - + " now has " - + purses[currentPlayer] - + " Gold Coins.") - - val winner = didPlayerWin() - currentPlayer++ - if (currentPlayer == players.size) currentPlayer = 0 - - return winner - } - } - - fun wrongAnswer(): Boolean { - println("Question was incorrectly answered") - println(players.get(currentPlayer) + " was sent to the penalty box") - inPenaltyBox[currentPlayer] = true - - currentPlayer++ - if (currentPlayer == players.size) currentPlayer = 0 - return true - } - - - private fun didPlayerWin(): Boolean { - return purses[currentPlayer] != 6 - } -} - -fun MutableList.removeFirst(): String { - return this.removeAt(0) -} -fun MutableList.addLast(element: String) { - this.add(element) -} \ No newline at end of file diff --git a/kotlin/src/main/lib/ApprovalTests.jar b/kotlin/src/main/lib/ApprovalTests.jar deleted file mode 100644 index 5616f9f..0000000 Binary files a/kotlin/src/main/lib/ApprovalTests.jar and /dev/null differ diff --git a/kotlin/src/test/kotlin/.gitignore b/kotlin/src/test/kotlin/.gitignore deleted file mode 100644 index e69de29..0000000 diff --git a/kotlin/src/test/kotlin/com/adaptionsoft/games/trivia/GameTest.itsLockedDown.approved.txt b/kotlin/src/test/kotlin/com/adaptionsoft/games/trivia/GameTest.itsLockedDown.approved.txt deleted file mode 100644 index 88f5a3d..0000000 --- a/kotlin/src/test/kotlin/com/adaptionsoft/games/trivia/GameTest.itsLockedDown.approved.txt +++ /dev/null @@ -1,1530 +0,0 @@ -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 4 -Chet's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat's new location is 2 -The category is Sports -Sports Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 4 -The category is Pop -Pop Question 1 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet's new location is 7 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Chet now has 2 Gold Coins. -Pat is the current player -They have rolled a 4 -Pat's new location is 6 -The category is Sports -Sports Question 1 -Answer was corrent!!!! -Pat now has 2 Gold Coins. -Sue is the current player -They have rolled a 3 -Sue's new location is 7 -The category is Rock -Rock Question 1 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet's new location is 9 -The category is Science -Science Question 0 -Answer was corrent!!!! -Chet now has 3 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat's new location is 11 -The category is Rock -Rock Question 2 -Answer was corrent!!!! -Pat now has 3 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue's new location is 0 -The category is Pop -Pop Question 2 -Answer was corrent!!!! -Sue now has 3 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet's new location is 1 -The category is Science -Science Question 1 -Answer was corrent!!!! -Chet now has 4 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat's new location is 1 -The category is Science -Science Question 2 -Answer was corrent!!!! -Pat now has 4 Gold Coins. -Sue is the current player -They have rolled a 3 -Sue's new location is 3 -The category is Rock -Rock Question 3 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 5 -Chet's new location is 6 -The category is Sports -Sports Question 2 -Answer was corrent!!!! -Chet now has 5 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat's new location is 2 -The category is Sports -Sports Question 3 -Answer was corrent!!!! -Pat now has 5 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue is getting out of the penalty box -Sue's new location is 8 -The category is Pop -Pop Question 3 -Answer was correct!!!! -Chet now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 2 -Chet's new location is 2 -The category is Sports -Sports Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat's new location is 1 -The category is Science -Science Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 1 -The category is Science -Science Question 1 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet's new location is 5 -The category is Science -Science Question 2 -Answer was corrent!!!! -Chet now has 2 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat's new location is 3 -The category is Rock -Rock Question 0 -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 3 -Sue's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 5 -Chet's new location is 10 -The category is Sports -Sports Question 1 -Answer was corrent!!!! -Chet now has 3 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat is getting out of the penalty box -Pat's new location is 8 -The category is Pop -Pop Question 1 -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 4 -Sue's new location is 8 -The category is Pop -Pop Question 2 -Answer was corrent!!!! -Sue now has 3 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet's new location is 0 -The category is Pop -Pop Question 3 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 4 -Pat is not getting out of the penalty box -Sue is the current player -They have rolled a 1 -Sue's new location is 9 -The category is Science -Science Question 3 -Answer was corrent!!!! -Sue now has 4 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 3 -Pat is getting out of the penalty box -Pat's new location is 11 -The category is Rock -Rock Question 1 -Answer was correct!!!! -Sue now has 5 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue's new location is 2 -The category is Sports -Sports Question 2 -Answer was corrent!!!! -Sue now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 1 -Chet's new location is 1 -The category is Science -Science Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat's new location is 5 -The category is Science -Science Question 1 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 1 -The category is Science -Science Question 2 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet's new location is 5 -The category is Science -Science Question 3 -Answer was corrent!!!! -Chet now has 2 Gold Coins. -Pat is the current player -They have rolled a 3 -Pat's new location is 8 -The category is Pop -Pop Question 0 -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 2 -Sue's new location is 3 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet's new location is 9 -The category is Science -Science Question 4 -Answer was corrent!!!! -Chet now has 3 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat is getting out of the penalty box -Pat's new location is 1 -The category is Science -Science Question 5 -Answer was correct!!!! -Sue now has 3 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 7 -The category is Rock -Rock Question 1 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 3 -Chet's new location is 0 -The category is Pop -Pop Question 1 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 3 -Pat is getting out of the penalty box -Pat's new location is 4 -The category is Pop -Pop Question 2 -Answer was correct!!!! -Sue now has 4 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue is getting out of the penalty box -Sue's new location is 0 -The category is Pop -Pop Question 3 -Answer was correct!!!! -Chet now has 4 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 5 -Pat is getting out of the penalty box -Pat's new location is 9 -The category is Science -Science Question 6 -Answer was correct!!!! -Sue now has 5 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue is getting out of the penalty box -Sue's new location is 5 -The category is Science -Science Question 7 -Answer was correct!!!! -Chet now has 5 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 3 -Pat is getting out of the penalty box -Pat's new location is 0 -The category is Pop -Pop Question 4 -Answer was correct!!!! -Sue now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 1 -Chet's new location is 1 -The category is Science -Science Question 0 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 4 -Pat's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 2 -Sue's new location is 2 -The category is Sports -Sports Question 0 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 3 -Pat's new location is 7 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Pat now has 2 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 6 -The category is Sports -Sports Question 1 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 4 -Pat's new location is 11 -The category is Rock -Rock Question 1 -Answer was corrent!!!! -Pat now has 3 Gold Coins. -Sue is the current player -They have rolled a 3 -Sue's new location is 9 -The category is Science -Science Question 1 -Answer was corrent!!!! -Sue now has 3 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet is getting out of the penalty box -Chet's new location is 4 -The category is Pop -Pop Question 1 -Answer was correct!!!! -Pat now has 4 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat's new location is 0 -The category is Pop -Pop Question 2 -Answer was corrent!!!! -Pat now has 5 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue's new location is 2 -The category is Sports -Sports Question 2 -Answer was corrent!!!! -Sue now has 4 Gold Coins. -Chet is the current player -They have rolled a 5 -Chet is getting out of the penalty box -Chet's new location is 9 -The category is Science -Science Question 2 -Answer was correct!!!! -Pat now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 4 -Chet's new location is 4 -The category is Pop -Pop Question 0 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 3 -Pat's new location is 3 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue's new location is 5 -The category is Science -Science Question 0 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 1 -Chet is getting out of the penalty box -Chet's new location is 5 -The category is Science -Science Question 1 -Answer was correct!!!! -Pat now has 2 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat's new location is 5 -The category is Science -Science Question 2 -Answer was corrent!!!! -Pat now has 3 Gold Coins. -Sue is the current player -They have rolled a 2 -Sue is not getting out of the penalty box -Chet is the current player -They have rolled a 4 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 3 -Pat's new location is 8 -The category is Pop -Pop Question 1 -Answer was corrent!!!! -Pat now has 4 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue is getting out of the penalty box -Sue's new location is 10 -The category is Sports -Sports Question 0 -Answer was correct!!!! -Chet now has 1 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet is getting out of the penalty box -Chet's new location is 8 -The category is Pop -Pop Question 2 -Answer was correct!!!! -Pat now has 5 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat's new location is 9 -The category is Science -Science Question 3 -Answer was corrent!!!! -Pat now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 4 -Chet's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat's new location is 5 -The category is Science -Science Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 4 -The category is Pop -Pop Question 1 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 1 -Chet's new location is 5 -The category is Science -Science Question 1 -Answer was corrent!!!! -Chet now has 2 Gold Coins. -Pat is the current player -They have rolled a 4 -Pat's new location is 9 -The category is Science -Science Question 2 -Answer was corrent!!!! -Pat now has 2 Gold Coins. -Sue is the current player -They have rolled a 3 -Sue's new location is 7 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet's new location is 8 -The category is Pop -Pop Question 2 -Answer was corrent!!!! -Chet now has 3 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat's new location is 2 -The category is Sports -Sports Question 0 -Answer was corrent!!!! -Pat now has 3 Gold Coins. -Sue is the current player -They have rolled a 2 -Sue's new location is 9 -The category is Science -Science Question 3 -Answer was corrent!!!! -Sue now has 3 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet's new location is 10 -The category is Sports -Sports Question 1 -Answer was corrent!!!! -Chet now has 4 Gold Coins. -Pat is the current player -They have rolled a 4 -Pat's new location is 6 -The category is Sports -Sports Question 2 -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 5 -Sue's new location is 2 -The category is Sports -Sports Question 3 -Answer was corrent!!!! -Sue now has 4 Gold Coins. -Chet is the current player -They have rolled a 1 -Chet's new location is 11 -The category is Rock -Rock Question 1 -Answer was corrent!!!! -Chet now has 5 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat is not getting out of the penalty box -Sue is the current player -They have rolled a 1 -Sue's new location is 3 -The category is Rock -Rock Question 2 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 5 -Chet's new location is 4 -The category is Pop -Pop Question 3 -Answer was corrent!!!! -Chet now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 4 -Chet's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat's new location is 1 -The category is Science -Science Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 1 -The category is Science -Science Question 1 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet's new location is 7 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Chet now has 2 Gold Coins. -Pat is the current player -They have rolled a 4 -Pat's new location is 5 -The category is Science -Science Question 2 -Answer was corrent!!!! -Pat now has 2 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 5 -The category is Science -Science Question 3 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet's new location is 9 -The category is Science -Science Question 4 -Answer was corrent!!!! -Chet now has 3 Gold Coins. -Pat is the current player -They have rolled a 3 -Pat's new location is 8 -The category is Pop -Pop Question 1 -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 5 -Sue's new location is 10 -The category is Sports -Sports Question 0 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 3 -Chet's new location is 0 -The category is Pop -Pop Question 2 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 1 -Pat is getting out of the penalty box -Pat's new location is 9 -The category is Science -Science Question 5 -Answer was correct!!!! -Sue now has 3 Gold Coins. -Sue is the current player -They have rolled a 2 -Sue is not getting out of the penalty box -Chet is the current player -They have rolled a 1 -Chet is getting out of the penalty box -Chet's new location is 1 -The category is Science -Science Question 6 -Answer was correct!!!! -Pat now has 3 Gold Coins. -Pat is the current player -They have rolled a 3 -Pat is getting out of the penalty box -Pat's new location is 0 -The category is Pop -Pop Question 3 -Answer was correct!!!! -Sue now has 4 Gold Coins. -Sue is the current player -They have rolled a 2 -Sue is not getting out of the penalty box -Chet is the current player -They have rolled a 5 -Chet is getting out of the penalty box -Chet's new location is 6 -The category is Sports -Sports Question 1 -Answer was correct!!!! -Pat now has 4 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat is getting out of the penalty box -Pat's new location is 1 -The category is Science -Science Question 7 -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 3 -Sue is getting out of the penalty box -Sue's new location is 1 -The category is Science -Science Question 8 -Answer was correct!!!! -Chet now has 4 Gold Coins. -Chet is the current player -They have rolled a 1 -Chet is getting out of the penalty box -Chet's new location is 7 -The category is Rock -Rock Question 1 -Answer was correct!!!! -Pat now has 5 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat is getting out of the penalty box -Pat's new location is 6 -The category is Sports -Sports Question 2 -Answer was correct!!!! -Sue now has 5 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue is getting out of the penalty box -Sue's new location is 6 -The category is Sports -Sports Question 3 -Answer was correct!!!! -Chet now has 5 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet is getting out of the penalty box -Chet's new location is 10 -The category is Sports -Sports Question 4 -Answer was correct!!!! -Pat now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 4 -Chet's new location is 4 -The category is Pop -Pop Question 0 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 5 -Pat's new location is 5 -The category is Science -Science Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 1 -The category is Science -Science Question 1 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet is not getting out of the penalty box -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 3 -Pat's new location is 8 -The category is Pop -Pop Question 1 -Answer was corrent!!!! -Pat now has 2 Gold Coins. -Sue is the current player -They have rolled a 2 -Sue's new location is 3 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 4 -Pat's new location is 0 -The category is Pop -Pop Question 2 -Answer was corrent!!!! -Pat now has 3 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 4 -The category is Pop -Pop Question 3 -Answer was corrent!!!! -Sue now has 3 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet is getting out of the penalty box -Chet's new location is 7 -The category is Rock -Rock Question 1 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 3 -Pat's new location is 3 -The category is Rock -Rock Question 2 -Answer was corrent!!!! -Pat now has 4 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 8 -The category is Pop -Pop Question 4 -Answer was corrent!!!! -Sue now has 4 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet is getting out of the penalty box -Chet's new location is 10 -The category is Sports -Sports Question 0 -Answer was correct!!!! -Pat now has 5 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat's new location is 5 -The category is Science -Science Question 2 -Answer was corrent!!!! -Pat now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 4 -Chet's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat's new location is 5 -The category is Science -Science Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 3 -Sue's new location is 3 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet's new location is 7 -The category is Rock -Rock Question 1 -Answer was corrent!!!! -Chet now has 2 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat's new location is 6 -The category is Sports -Sports Question 0 -Answer was corrent!!!! -Pat now has 2 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue's new location is 8 -The category is Pop -Pop Question 1 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet's new location is 11 -The category is Rock -Rock Question 2 -Answer was corrent!!!! -Chet now has 3 Gold Coins. -Pat is the current player -They have rolled a 3 -Pat's new location is 9 -The category is Science -Science Question 1 -Answer was corrent!!!! -Pat now has 3 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue's new location is 1 -The category is Science -Science Question 2 -Answer was corrent!!!! -Sue now has 3 Gold Coins. -Chet is the current player -They have rolled a 5 -Chet's new location is 4 -The category is Pop -Pop Question 2 -Answer was corrent!!!! -Chet now has 4 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat's new location is 10 -The category is Sports -Sports Question 1 -Answer was corrent!!!! -Pat now has 4 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 2 -The category is Sports -Sports Question 2 -Answer was corrent!!!! -Sue now has 4 Gold Coins. -Chet is the current player -They have rolled a 5 -Chet's new location is 9 -The category is Science -Science Question 3 -Answer was corrent!!!! -Chet now has 5 Gold Coins. -Pat is the current player -They have rolled a 3 -Pat's new location is 1 -The category is Science -Science Question 4 -Answer was corrent!!!! -Pat now has 5 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 3 -The category is Rock -Rock Question 3 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 4 -Chet's new location is 1 -The category is Science -Science Question 5 -Answer was corrent!!!! -Chet now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 5 -Chet's new location is 5 -The category is Science -Science Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat's new location is 1 -The category is Science -Science Question 1 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 1 -The category is Science -Science Question 2 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 1 -Chet's new location is 6 -The category is Sports -Sports Question 0 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 3 -Pat's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Pat now has 2 Gold Coins. -Sue is the current player -They have rolled a 2 -Sue's new location is 3 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet is getting out of the penalty box -Chet's new location is 9 -The category is Science -Science Question 3 -Answer was correct!!!! -Pat now has 3 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat's new location is 6 -The category is Sports -Sports Question 1 -Answer was corrent!!!! -Pat now has 4 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 7 -The category is Rock -Rock Question 1 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 5 -Chet is getting out of the penalty box -Chet's new location is 2 -The category is Sports -Sports Question 2 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 2 -Pat's new location is 8 -The category is Pop -Pop Question 1 -Answer was corrent!!!! -Pat now has 5 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue is getting out of the penalty box -Sue's new location is 0 -The category is Pop -Pop Question 2 -Answer was correct!!!! -Chet now has 2 Gold Coins. -Chet is the current player -They have rolled a 5 -Chet is getting out of the penalty box -Chet's new location is 7 -The category is Rock -Rock Question 2 -Answer was correct!!!! -Pat now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 5 -Chet's new location is 5 -The category is Science -Science Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat's new location is 5 -The category is Science -Science Question 1 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet's new location is 9 -The category is Science -Science Question 2 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 4 -Pat's new location is 9 -The category is Science -Science Question 3 -Answer was corrent!!!! -Pat now has 2 Gold Coins. -Sue is the current player -They have rolled a 2 -Sue's new location is 6 -The category is Sports -Sports Question 0 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 5 -Pat's new location is 2 -The category is Sports -Sports Question 1 -Answer was corrent!!!! -Pat now has 3 Gold Coins. -Sue is the current player -They have rolled a 2 -Sue's new location is 8 -The category is Pop -Pop Question 1 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 4 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 5 -Pat's new location is 7 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Pat now has 4 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue is getting out of the penalty box -Sue's new location is 1 -The category is Science -Science Question 4 -Answer was correct!!!! -Chet now has 2 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet is not getting out of the penalty box -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 2 -Pat's new location is 9 -The category is Science -Science Question 5 -Answer was corrent!!!! -Pat now has 5 Gold Coins. -Sue is the current player -They have rolled a 3 -Sue is getting out of the penalty box -Sue's new location is 4 -The category is Pop -Pop Question 2 -Answer was correct!!!! -Chet now has 3 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet is not getting out of the penalty box -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 3 -Pat's new location is 0 -The category is Pop -Pop Question 3 -Answer was corrent!!!! -Pat now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 3 -Chet's new location is 3 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat's new location is 2 -The category is Sports -Sports Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet's new location is 6 -The category is Sports -Sports Question 1 -Answer was corrent!!!! -Chet now has 2 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat's new location is 3 -The category is Rock -Rock Question 1 -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 1 -Sue's new location is 5 -The category is Science -Science Question 0 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet's new location is 8 -The category is Pop -Pop Question 1 -Answer was corrent!!!! -Chet now has 3 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat is not getting out of the penalty box -Sue is the current player -They have rolled a 2 -Sue's new location is 7 -The category is Rock -Rock Question 2 -Answer was corrent!!!! -Sue now has 3 Gold Coins. -Chet is the current player -They have rolled a 5 -Chet's new location is 1 -The category is Science -Science Question 1 -Answer was corrent!!!! -Chet now has 4 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat is not getting out of the penalty box -Sue is the current player -They have rolled a 1 -Sue's new location is 8 -The category is Pop -Pop Question 2 -Answer was corrent!!!! -Sue now has 4 Gold Coins. -Chet is the current player -They have rolled a 1 -Chet's new location is 2 -The category is Sports -Sports Question 2 -Answer was corrent!!!! -Chet now has 5 Gold Coins. -Pat is the current player -They have rolled a 4 -Pat is not getting out of the penalty box -Sue is the current player -They have rolled a 3 -Sue's new location is 11 -The category is Rock -Rock Question 3 -Answer was corrent!!!! -Sue now has 5 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet's new location is 5 -The category is Science -Science Question 2 -Answer was corrent!!!! -Chet now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 1 -Chet's new location is 1 -The category is Science -Science Question 0 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 5 -Pat's new location is 5 -The category is Science -Science Question 1 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 3 -Sue's new location is 3 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 5 -Chet is getting out of the penalty box -Chet's new location is 6 -The category is Sports -Sports Question 0 -Answer was correct!!!! -Pat now has 2 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat's new location is 7 -The category is Rock -Rock Question 1 -Answer was corrent!!!! -Pat now has 3 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue's new location is 8 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 3 -Chet is getting out of the penalty box -Chet's new location is 9 -The category is Science -Science Question 2 -Answer was correct!!!! -Pat now has 4 Gold Coins. -Pat is the current player -They have rolled a 4 -Pat's new location is 11 -The category is Rock -Rock Question 2 -Answer was corrent!!!! -Pat now has 5 Gold Coins. -Sue is the current player -They have rolled a 3 -Sue's new location is 11 -The category is Rock -Rock Question 3 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 5 -Chet is getting out of the penalty box -Chet's new location is 2 -The category is Sports -Sports Question 1 -Answer was correct!!!! -Pat now has 6 Gold Coins. -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 1 -Chet's new location is 1 -The category is Science -Science Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 4 -Pat's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 4 -Sue's new location is 4 -The category is Pop -Pop Question 1 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 4 -Chet's new location is 5 -The category is Science -Science Question 1 -Answer was corrent!!!! -Chet now has 2 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat's new location is 9 -The category is Science -Science Question 2 -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 2 -Sue's new location is 6 -The category is Sports -Sports Question 0 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet's new location is 7 -The category is Rock -Rock Question 0 -Answer was corrent!!!! -Chet now has 3 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat is getting out of the penalty box -Pat's new location is 2 -The category is Sports -Sports Question 1 -Answer was correct!!!! -Sue now has 3 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 7 -The category is Rock -Rock Question 1 -Question was incorrectly answered -Sue was sent to the penalty box -Chet is the current player -They have rolled a 1 -Chet's new location is 8 -The category is Pop -Pop Question 2 -Question was incorrectly answered -Chet was sent to the penalty box -Pat is the current player -They have rolled a 3 -Pat is getting out of the penalty box -Pat's new location is 5 -The category is Science -Science Question 3 -Answer was correct!!!! -Sue now has 4 Gold Coins. -Sue is the current player -They have rolled a 5 -Sue is getting out of the penalty box -Sue's new location is 0 -The category is Pop -Pop Question 3 -Answer was correct!!!! -Chet now has 4 Gold Coins. -Chet is the current player -They have rolled a 5 -Chet is getting out of the penalty box -Chet's new location is 1 -The category is Science -Science Question 4 -Answer was correct!!!! -Pat now has 2 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat is not getting out of the penalty box -Sue is the current player -They have rolled a 5 -Sue is getting out of the penalty box -Sue's new location is 5 -The category is Science -Science Question 5 -Answer was correct!!!! -Chet now has 5 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet is not getting out of the penalty box -Pat is the current player -They have rolled a 2 -Pat is not getting out of the penalty box -Sue is the current player -They have rolled a 1 -Sue is getting out of the penalty box -Sue's new location is 6 -The category is Sports -Sports Question 2 -Answer was correct!!!! -Chet now has 6 Gold Coins. diff --git a/kotlin/src/test/kotlin/com/adaptionsoft/games/trivia/GameTest.kt b/kotlin/src/test/kotlin/com/adaptionsoft/games/trivia/GameTest.kt deleted file mode 100644 index 1583d69..0000000 --- a/kotlin/src/test/kotlin/com/adaptionsoft/games/trivia/GameTest.kt +++ /dev/null @@ -1,27 +0,0 @@ -package com.adaptionsoft.games.trivia - - -import com.adaptionsoft.games.trivia.runner.GameRunner -import org.approvaltests.Approvals -import org.junit.Test - -import java.io.* -import java.util.Random -import java.util.stream.IntStream - -class GameTest { - - @Test - @Throws(Exception::class) - fun itsLockedDown() { - - val randomizer = Random(123455) - val resultStream = ByteArrayOutputStream() - System.setOut(PrintStream(resultStream)) - - IntStream.range(1, 15).forEach { i -> GameRunner.playGame(randomizer) } - - Approvals.verify(resultStream.toString()) - - } -} diff --git a/kotlin/uglytrivia.iml b/kotlin/uglytrivia.iml deleted file mode 100644 index 5e48234..0000000 --- a/kotlin/uglytrivia.iml +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/php/composer.json b/php/composer.json deleted file mode 100644 index 652a0fe..0000000 --- a/php/composer.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "johan/php", - "require-dev": { - "phpunit/phpunit": "^7.1" - }, - "authors": [ - { - "name": "Johan Martinsson", - "email": "j.martinsson@bee-buzziness.com" - } - ], - "require": {}, - "autoload": { - "psr-4": {"Game\\": "src"} - } -} diff --git a/php/src/Game.php b/php/src/Game.php deleted file mode 100644 index 462c229..0000000 --- a/php/src/Game.php +++ /dev/null @@ -1,179 +0,0 @@ -players = array(); - $this->places = array(0); - $this->purses = array(0); - $this->inPenaltyBox = array(0); - - $this->popQuestions = array(); - $this->scienceQuestions = array(); - $this->sportsQuestions = array(); - $this->rockQuestions = array(); - - for ($i = 0; $i < 50; $i++) { - array_push($this->popQuestions, "Pop Question " . $i); - array_push($this->scienceQuestions, ("Science Question " . $i)); - array_push($this->sportsQuestions, ("Sports Question " . $i)); - array_push($this->rockQuestions, $this->createRockQuestion($i)); - } - } - - function createRockQuestion($index){ - return "Rock Question " . $index; - } - - function isPlayable() { - return ($this->howManyPlayers() >= 2); - } - - function add($playerName) { - array_push($this->players, $playerName); - $this->places[$this->howManyPlayers()] = 0; - $this->purses[$this->howManyPlayers()] = 0; - $this->inPenaltyBox[$this->howManyPlayers()] = false; - - echoln($playerName . " was added"); - echoln("They are player number " . count($this->players)); - return true; - } - - function howManyPlayers() { - return count($this->players); - } - - function roll($roll) { - echoln($this->players[$this->currentPlayer] . " is the current player"); - echoln("They have rolled a " . $roll); - - if ($this->inPenaltyBox[$this->currentPlayer]) { - if ($roll % 2 != 0) { - $this->isGettingOutOfPenaltyBox = true; - - echoln($this->players[$this->currentPlayer] . " is getting out of the penalty box"); - $this->places[$this->currentPlayer] = $this->places[$this->currentPlayer] + $roll; - if ($this->places[$this->currentPlayer] > 11) $this->places[$this->currentPlayer] = $this->places[$this->currentPlayer] - 12; - - echoln($this->players[$this->currentPlayer] - . "'s new location is " - .$this->places[$this->currentPlayer]); - echoln("The category is " . $this->currentCategory()); - $this->askQuestion(); - } else { - echoln($this->players[$this->currentPlayer] . " is not getting out of the penalty box"); - $this->isGettingOutOfPenaltyBox = false; - } - - } else { - - $this->places[$this->currentPlayer] = $this->places[$this->currentPlayer] + $roll; - if ($this->places[$this->currentPlayer] > 11) $this->places[$this->currentPlayer] = $this->places[$this->currentPlayer] - 12; - - echoln($this->players[$this->currentPlayer] - . "'s new location is " - .$this->places[$this->currentPlayer]); - echoln("The category is " . $this->currentCategory()); - $this->askQuestion(); - } - - } - - function askQuestion() { - if ($this->currentCategory() == "Pop") - echoln(array_shift($this->popQuestions)); - if ($this->currentCategory() == "Science") - echoln(array_shift($this->scienceQuestions)); - if ($this->currentCategory() == "Sports") - echoln(array_shift($this->sportsQuestions)); - if ($this->currentCategory() == "Rock") - echoln(array_shift($this->rockQuestions)); - } - - - function currentCategory() { - if ($this->places[$this->currentPlayer] == 0) return "Pop"; - if ($this->places[$this->currentPlayer] == 4) return "Pop"; - if ($this->places[$this->currentPlayer] == 8) return "Pop"; - if ($this->places[$this->currentPlayer] == 1) return "Science"; - if ($this->places[$this->currentPlayer] == 5) return "Science"; - if ($this->places[$this->currentPlayer] == 9) return "Science"; - if ($this->places[$this->currentPlayer] == 2) return "Sports"; - if ($this->places[$this->currentPlayer] == 6) return "Sports"; - if ($this->places[$this->currentPlayer] == 10) return "Sports"; - return "Rock"; - } - - function wasCorrectlyAnswered() { - if ($this->inPenaltyBox[$this->currentPlayer]){ - if ($this->isGettingOutOfPenaltyBox) { - echoln("Answer was correct!!!!"); - $this->purses[$this->currentPlayer]++; - echoln($this->players[$this->currentPlayer] - . " now has " - .$this->purses[$this->currentPlayer] - . " Gold Coins."); - - $winner = $this->didPlayerWin(); - $this->currentPlayer++; - if ($this->currentPlayer == count($this->players)) $this->currentPlayer = 0; - - return $winner; - } else { - $this->currentPlayer++; - if ($this->currentPlayer == count($this->players)) $this->currentPlayer = 0; - return true; - } - - - - } else { - - echoln("Answer was corrent!!!!"); - $this->purses[$this->currentPlayer]++; - echoln($this->players[$this->currentPlayer] - . " now has " - .$this->purses[$this->currentPlayer] - . " Gold Coins."); - - $winner = $this->didPlayerWin(); - $this->currentPlayer++; - if ($this->currentPlayer == count($this->players)) $this->currentPlayer = 0; - - return $winner; - } - } - - function wrongAnswer(){ - echoln("Question was incorrectly answered"); - echoln($this->players[$this->currentPlayer] . " was sent to the penalty box"); - $this->inPenaltyBox[$this->currentPlayer] = true; - - $this->currentPlayer++; - if ($this->currentPlayer == count($this->players)) $this->currentPlayer = 0; - return true; - } - - - function didPlayerWin() { - return !($this->purses[$this->currentPlayer] == 6); - } -} diff --git a/php/src/GameRunner.php b/php/src/GameRunner.php deleted file mode 100644 index b97fde2..0000000 --- a/php/src/GameRunner.php +++ /dev/null @@ -1,33 +0,0 @@ -add("Chet"); - $aGame->add("Pat"); - $aGame->add("Sue"); - - - do { - - $aGame->roll(rand(0,5) + 1); - - if (rand(0,9) == 7) { - $notAWinner = $aGame->wrongAnswer(); - } else { - $notAWinner = $aGame->wasCorrectlyAnswered(); - } - - - - } while ($notAWinner); - } -} - - - diff --git a/php/test/Test.php b/php/test/Test.php deleted file mode 100644 index 68cfeb2..0000000 --- a/php/test/Test.php +++ /dev/null @@ -1,24 +0,0 @@ -assertEquals($expected, $actual); - - } -} diff --git a/php/test/approved.txt b/php/test/approved.txt deleted file mode 100644 index d56a8d0..0000000 --- a/php/test/approved.txt +++ /dev/null @@ -1,112 +0,0 @@ -Chet was added -They are player number 1 -Pat was added -They are player number 2 -Sue was added -They are player number 3 -Chet is the current player -They have rolled a 4 -Chet's new location is 4 -The category is Pop -Pop Question 0 -Answer was corrent!!!! -Chet now has 1 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat's new location is 2 -The category is Sports -Sports Question 0 -Question was incorrectly answered -Pat was sent to the penalty box -Sue is the current player -They have rolled a 5 -Sue's new location is 5 -The category is Science -Science Question 0 -Answer was corrent!!!! -Sue now has 1 Gold Coins. -Chet is the current player -They have rolled a 5 -Chet's new location is 9 -The category is Science -Science Question 1 -Answer was corrent!!!! -Chet now has 2 Gold Coins. -Pat is the current player -They have rolled a 1 -Pat is getting out of the penalty box -Pat's new location is 3 -The category is Rock -Rock Question 0 -Answer was correct!!!! -Pat now has 1 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 6 -The category is Sports -Sports Question 1 -Answer was corrent!!!! -Sue now has 2 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet's new location is 11 -The category is Rock -Rock Question 1 -Answer was corrent!!!! -Chet now has 3 Gold Coins. -Pat is the current player -They have rolled a 4 -Pat is not getting out of the penalty box -Sue is the current player -They have rolled a 1 -Sue's new location is 7 -The category is Rock -Rock Question 2 -Answer was corrent!!!! -Sue now has 3 Gold Coins. -Chet is the current player -They have rolled a 1 -Chet's new location is 0 -The category is Pop -Pop Question 1 -Answer was corrent!!!! -Chet now has 4 Gold Coins. -Pat is the current player -They have rolled a 2 -Pat is not getting out of the penalty box -Sue is the current player -They have rolled a 1 -Sue's new location is 8 -The category is Pop -Pop Question 2 -Answer was corrent!!!! -Sue now has 4 Gold Coins. -Chet is the current player -They have rolled a 2 -Chet's new location is 2 -The category is Sports -Sports Question 2 -Answer was corrent!!!! -Chet now has 5 Gold Coins. -Pat is the current player -They have rolled a 5 -Pat is getting out of the penalty box -Pat's new location is 8 -The category is Pop -Pop Question 3 -Answer was correct!!!! -Pat now has 2 Gold Coins. -Sue is the current player -They have rolled a 1 -Sue's new location is 9 -The category is Science -Science Question 2 -Answer was corrent!!!! -Sue now has 5 Gold Coins. -Chet is the current player -They have rolled a 1 -Chet's new location is 3 -The category is Rock -Rock Question 3 -Answer was corrent!!!! -Chet now has 6 Gold Coins. diff --git a/pitch-french.md b/pitch-french.md deleted file mode 100644 index eb643c2..0000000 --- a/pitch-french.md +++ /dev/null @@ -1,15 +0,0 @@ -# Les bugs ne sont pas une fatalité! - -Les bugs s'introduisent dans notre code dû aux choix de conception que nous faisons ou, plus souvent, que nous manquons de faire. - -Au cours de cet atelier nous pratiqueront la correction des causes racine des bugs. Vous allez étudier des bugs afin de comprendre les faiblesses dans le design qui a permi et facilité leur introduction. Une fois compris vous allez inventer de designs alternatifs qui rendraient impossible ou du moins peu probable leur introduction. Nous allons également chercher des faiblesses du design, où ce serait probable que l'on introduise un bug dans le futur. - -En comprenant mieux puis en corrigeant la cause racine des bugs, nous tranformons les échecs de hier en force pour demain. - -Le geste à répéter : -1. Identifier soit une faiblesse du design susceptible de causer un bug lorsque l'on étend le code, soit un bug existant. -2. Expliquer comment le design actuel a contribué à l'introduction du bug ou quelle nouvelle fonctionnalité pourrait introduire un bug. -3. Trouvez un design qui rend impossible ce bug ou du moins qui le rend peu probable. - -Il est essentiel de ne pas se contenter de dire qu'un le nouveau design est "mieux", cela voudrait dire qu'on ne maitrise bien ce qu'il apporte dans un contexte précis. - diff --git a/ruby/.rspec b/ruby/.rspec deleted file mode 100644 index c99d2e7..0000000 --- a/ruby/.rspec +++ /dev/null @@ -1 +0,0 @@ ---require spec_helper diff --git a/ruby/Gemfile b/ruby/Gemfile deleted file mode 100644 index 7ff2196..0000000 --- a/ruby/Gemfile +++ /dev/null @@ -1,5 +0,0 @@ -source "https://www.rubygems.org" - -gem "pry" -gem "approvals" -gem "rspec" diff --git a/ruby/Gemfile.lock b/ruby/Gemfile.lock deleted file mode 100644 index af0ccab..0000000 --- a/ruby/Gemfile.lock +++ /dev/null @@ -1,40 +0,0 @@ -GEM - remote: https://www.rubygems.org/ - specs: - approvals (0.0.24) - nokogiri (~> 1.6) - thor (~> 0.18) - coderay (1.1.2) - diff-lcs (1.3) - method_source (0.9.0) - mini_portile2 (2.3.0) - nokogiri (1.8.2) - mini_portile2 (~> 2.3.0) - pry (0.11.3) - coderay (~> 1.1.0) - method_source (~> 0.9.0) - rspec (3.7.0) - rspec-core (~> 3.7.0) - rspec-expectations (~> 3.7.0) - rspec-mocks (~> 3.7.0) - rspec-core (3.7.1) - rspec-support (~> 3.7.0) - rspec-expectations (3.7.0) - diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.7.0) - rspec-mocks (3.7.0) - diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.7.0) - rspec-support (3.7.1) - thor (0.20.0) - -PLATFORMS - ruby - -DEPENDENCIES - approvals - pry - rspec - -BUNDLED WITH - 1.16.1 diff --git a/ruby/lib/game.rb b/ruby/lib/game.rb deleted file mode 100644 index ca0aa80..0000000 --- a/ruby/lib/game.rb +++ /dev/null @@ -1,164 +0,0 @@ -class Game - - attr_accessor :players, - :current_player, - :in_penalty_box, - :is_getting_out_of_penalty_box, - :places, - :purses, - :pop_questions, - :science_questions, - :sports_questions, - :rock_questions - - def initialize(logger) - @logger = logger - @players = [] - @places = [] - @purses = [] - @in_penalty_box = [] - @pop_questions = [] - @science_questions = [] - @sports_questions = [] - @rock_questions = [] - @current_player = 0 - - 0.upto(49) do |i| - @pop_questions << "Pop Question #{i}" - @science_questions << "Science Question #{i}" - @sports_questions << "Sport Question #{i}" - @rock_questions << create_rock_question(i) - end - end - - def add(player_name) - players << player_name - places[how_many_players - 1] = 0 - purses[how_many_players - 1] = 0 - in_penalty_box[how_many_players - 1] = false - - puts "#{player_name} was added" - puts "They are player number #{players.size}" - - true - end - - def how_many_players - players.size - end - - def did_player_win? - !(purses[current_player] == 6) - end - - def current_category - return "Pop" if places[current_player] == 0 - return "Pop" if places[current_player] == 4 - return "Pop" if places[current_player] == 8 - return "Science" if places[current_player] == 1 - return "Science" if places[current_player] == 5 - return "Science" if places[current_player] == 9 - return "Sports" if places[current_player] == 2 - return "Sports" if places[current_player] == 6 - return "Sports" if places[current_player] == 10 - "Rock" - end - - def create_rock_question(index) - "Rock Question #{index}" - end - - def is_playable? - how_many_players >= 2 - end - - def ask_question - if current_category == "Pop" - puts pop_questions.shift - end - - if current_category == "Science" - puts science_questions.shift - end - - if current_category == "Sports" - puts sports_questions.shift - end - - if current_category == "Rock" - puts rock_questions.shift - end - end - - def roll(roll) - puts "#{players[current_player]} is the current player" - puts "They have rolled a #{roll}" - - if in_penalty_box[current_player] - if roll % 2 != 0 - self.is_getting_out_of_penalty_box = true - - puts "#{players[current_player]} is getting out of the penalty box" - move_player_and_ask_question(roll) - else - puts "#{players[current_player]} is not getting out of the penalty box" - self.is_getting_out_of_penalty_box = false - end - else - move_player_and_ask_question(roll) - end - end - - private def move_player_and_ask_question(roll) - places[current_player] = places[current_player] + roll - - if places[current_player] > 11 - places[current_player] = places[current_player] - 12; - end - - puts "#{players[current_player]}'s new location is #{places[current_player]}" - puts "The category is #{current_category}" - ask_question - end - - private def do_answer_correctly - puts "Answer was correct!!!!" - self.current_player = current_player + 1 - self.current_player = 0 if current_player == players.size - purses[current_player] = purses[current_player] + 1 - puts "#{players[current_player]} now has #{purses[current_player]} Gold Coins." - winner = did_player_win? - - winner - end - - def was_correctly_answered - if in_penalty_box[current_player] - if is_getting_out_of_penalty_box - do_answer_correctly - else - self.current_player = current_player + 1 - self.current_player = 0 if current_player == players.size - true - end - else - do_answer_correctly - end - end - - def wrong_anwser - puts "Question was incorrectly answered" - puts "#{players[current_player]} was sent to the penalty box" - in_penalty_box[current_player] = true - - self.current_player = current_player + 1 - self.current_player = 0 if current_player == players.size - - true - end - - private def puts(message) - @logger.info(message) - end - -end diff --git a/ruby/lib/game_runner.rb b/ruby/lib/game_runner.rb deleted file mode 100644 index 60dd361..0000000 --- a/ruby/lib/game_runner.rb +++ /dev/null @@ -1,26 +0,0 @@ -require_relative "game" - -class GameRunner - def initialize(random_generator, logger) - @random_generator = random_generator - @logger = logger - end - - def run - a_game = Game.new(@logger) - - a_game.add("Chet") - a_game.add("Pat") - a_game.add("Sue") - - begin - a_game.roll(@random_generator.rand(5) + 1); - - if (@random_generator.rand(9) == 7) - @not_a_winner = a_game.wrong_anwser - else - @not_a_winner = a_game.was_correctly_answered - end - end while @not_a_winner - end -end diff --git a/ruby/spec/fixtures/approvals/gamerunner/works.approved.txt b/ruby/spec/fixtures/approvals/gamerunner/works.approved.txt deleted file mode 100644 index 072d7b2..0000000 --- a/ruby/spec/fixtures/approvals/gamerunner/works.approved.txt +++ /dev/null @@ -1,1969 +0,0 @@ -[0] "Chet was added" -[1] "They are player number 1" -[2] "Pat was added" -[3] "They are player number 2" -[4] "Sue was added" -[5] "They are player number 3" -[6] "Chet is the current player" -[7] "They have rolled a 5" -[8] "Chet's new location is 5" -[9] "The category is Science" -[10] "Science Question 0" -[11] "Answer was correct!!!!" -[12] "Pat now has 1 Gold Coins." -[13] "Pat is the current player" -[14] "They have rolled a 4" -[15] "Pat's new location is 4" -[16] "The category is Pop" -[17] "Pop Question 0" -[18] "Answer was correct!!!!" -[19] "Sue now has 1 Gold Coins." -[20] "Sue is the current player" -[21] "They have rolled a 3" -[22] "Sue's new location is 3" -[23] "The category is Rock" -[24] "Rock Question 0" -[25] "Answer was correct!!!!" -[26] "Chet now has 1 Gold Coins." -[27] "Chet is the current player" -[28] "They have rolled a 3" -[29] "Chet's new location is 8" -[30] "The category is Pop" -[31] "Pop Question 1" -[32] "Answer was correct!!!!" -[33] "Pat now has 2 Gold Coins." -[34] "Pat is the current player" -[35] "They have rolled a 6" -[36] "Pat's new location is 10" -[37] "The category is Sports" -[38] "Sport Question 0" -[39] "Answer was correct!!!!" -[40] "Sue now has 2 Gold Coins." -[41] "Sue is the current player" -[42] "They have rolled a 4" -[43] "Sue's new location is 7" -[44] "The category is Rock" -[45] "Rock Question 1" -[46] "Answer was correct!!!!" -[47] "Chet now has 2 Gold Coins." -[48] "Chet is the current player" -[49] "They have rolled a 6" -[50] "Chet's new location is 2" -[51] "The category is Sports" -[52] "Sport Question 1" -[53] "Answer was correct!!!!" -[54] "Pat now has 3 Gold Coins." -[55] "Pat is the current player" -[56] "They have rolled a 4" -[57] "Pat's new location is 2" -[58] "The category is Sports" -[59] "Sport Question 2" -[60] "Answer was correct!!!!" -[61] "Sue now has 3 Gold Coins." -[62] "Sue is the current player" -[63] "They have rolled a 2" -[64] "Sue's new location is 9" -[65] "The category is Science" -[66] "Science Question 1" -[67] "Answer was correct!!!!" -[68] "Chet now has 3 Gold Coins." -[69] "Chet is the current player" -[70] "They have rolled a 3" -[71] "Chet's new location is 5" -[72] "The category is Science" -[73] "Science Question 2" -[74] "Question was incorrectly answered" -[75] "Chet was sent to the penalty box" -[76] "Pat is the current player" -[77] "They have rolled a 3" -[78] "Pat's new location is 5" -[79] "The category is Science" -[80] "Science Question 3" -[81] "Answer was correct!!!!" -[82] "Sue now has 4 Gold Coins." -[83] "Sue is the current player" -[84] "They have rolled a 3" -[85] "Sue's new location is 0" -[86] "The category is Pop" -[87] "Pop Question 2" -[88] "Answer was correct!!!!" -[89] "Chet now has 4 Gold Coins." -[90] "Chet is the current player" -[91] "They have rolled a 2" -[92] "Chet is not getting out of the penalty box" -[93] "Question was incorrectly answered" -[94] "Chet was sent to the penalty box" -[95] "Pat is the current player" -[96] "They have rolled a 4" -[97] "Pat's new location is 9" -[98] "The category is Science" -[99] "Science Question 4" -[100] "Answer was correct!!!!" -[101] "Sue now has 5 Gold Coins." -[102] "Sue is the current player" -[103] "They have rolled a 4" -[104] "Sue's new location is 4" -[105] "The category is Pop" -[106] "Pop Question 3" -[107] "Answer was correct!!!!" -[108] "Chet now has 5 Gold Coins." -[109] "Chet is the current player" -[110] "They have rolled a 6" -[111] "Chet is not getting out of the penalty box" -[112] "Pat is the current player" -[113] "They have rolled a 3" -[114] "Pat's new location is 0" -[115] "The category is Pop" -[116] "Pop Question 4" -[117] "Answer was correct!!!!" -[118] "Sue now has 6 Gold Coins." -[119] "Chet was added" -[120] "They are player number 1" -[121] "Pat was added" -[122] "They are player number 2" -[123] "Sue was added" -[124] "They are player number 3" -[125] "Chet is the current player" -[126] "They have rolled a 3" -[127] "Chet's new location is 3" -[128] "The category is Rock" -[129] "Rock Question 0" -[130] "Answer was correct!!!!" -[131] "Pat now has 1 Gold Coins." -[132] "Pat is the current player" -[133] "They have rolled a 6" -[134] "Pat's new location is 6" -[135] "The category is Sports" -[136] "Sport Question 0" -[137] "Question was incorrectly answered" -[138] "Pat was sent to the penalty box" -[139] "Sue is the current player" -[140] "They have rolled a 2" -[141] "Sue's new location is 2" -[142] "The category is Sports" -[143] "Sport Question 1" -[144] "Question was incorrectly answered" -[145] "Sue was sent to the penalty box" -[146] "Chet is the current player" -[147] "They have rolled a 2" -[148] "Chet's new location is 5" -[149] "The category is Science" -[150] "Science Question 0" -[151] "Answer was correct!!!!" -[152] "Pat now has 2 Gold Coins." -[153] "Pat is the current player" -[154] "They have rolled a 6" -[155] "Pat is not getting out of the penalty box" -[156] "Sue is the current player" -[157] "They have rolled a 2" -[158] "Sue is not getting out of the penalty box" -[159] "Chet is the current player" -[160] "They have rolled a 5" -[161] "Chet's new location is 10" -[162] "The category is Sports" -[163] "Sport Question 2" -[164] "Question was incorrectly answered" -[165] "Chet was sent to the penalty box" -[166] "Pat is the current player" -[167] "They have rolled a 2" -[168] "Pat is not getting out of the penalty box" -[169] "Sue is the current player" -[170] "They have rolled a 3" -[171] "Sue is getting out of the penalty box" -[172] "Sue's new location is 5" -[173] "The category is Science" -[174] "Science Question 1" -[175] "Answer was correct!!!!" -[176] "Chet now has 1 Gold Coins." -[177] "Chet is the current player" -[178] "They have rolled a 2" -[179] "Chet is not getting out of the penalty box" -[180] "Pat is the current player" -[181] "They have rolled a 4" -[182] "Pat is not getting out of the penalty box" -[183] "Sue is the current player" -[184] "They have rolled a 4" -[185] "Sue is not getting out of the penalty box" -[186] "Chet is the current player" -[187] "They have rolled a 4" -[188] "Chet is not getting out of the penalty box" -[189] "Pat is the current player" -[190] "They have rolled a 4" -[191] "Pat is not getting out of the penalty box" -[192] "Sue is the current player" -[193] "They have rolled a 6" -[194] "Sue is not getting out of the penalty box" -[195] "Chet is the current player" -[196] "They have rolled a 2" -[197] "Chet is not getting out of the penalty box" -[198] "Pat is the current player" -[199] "They have rolled a 5" -[200] "Pat is getting out of the penalty box" -[201] "Pat's new location is 11" -[202] "The category is Rock" -[203] "Rock Question 1" -[204] "Answer was correct!!!!" -[205] "Sue now has 1 Gold Coins." -[206] "Sue is the current player" -[207] "They have rolled a 6" -[208] "Sue is not getting out of the penalty box" -[209] "Chet is the current player" -[210] "They have rolled a 3" -[211] "Chet is getting out of the penalty box" -[212] "Chet's new location is 1" -[213] "The category is Science" -[214] "Science Question 2" -[215] "Answer was correct!!!!" -[216] "Pat now has 3 Gold Coins." -[217] "Pat is the current player" -[218] "They have rolled a 2" -[219] "Pat is not getting out of the penalty box" -[220] "Sue is the current player" -[221] "They have rolled a 6" -[222] "Sue is not getting out of the penalty box" -[223] "Chet is the current player" -[224] "They have rolled a 3" -[225] "Chet is getting out of the penalty box" -[226] "Chet's new location is 4" -[227] "The category is Pop" -[228] "Pop Question 0" -[229] "Answer was correct!!!!" -[230] "Pat now has 4 Gold Coins." -[231] "Pat is the current player" -[232] "They have rolled a 6" -[233] "Pat is not getting out of the penalty box" -[234] "Question was incorrectly answered" -[235] "Pat was sent to the penalty box" -[236] "Sue is the current player" -[237] "They have rolled a 3" -[238] "Sue is getting out of the penalty box" -[239] "Sue's new location is 8" -[240] "The category is Pop" -[241] "Pop Question 1" -[242] "Question was incorrectly answered" -[243] "Sue was sent to the penalty box" -[244] "Chet is the current player" -[245] "They have rolled a 4" -[246] "Chet is not getting out of the penalty box" -[247] "Pat is the current player" -[248] "They have rolled a 4" -[249] "Pat is not getting out of the penalty box" -[250] "Sue is the current player" -[251] "They have rolled a 6" -[252] "Sue is not getting out of the penalty box" -[253] "Chet is the current player" -[254] "They have rolled a 6" -[255] "Chet is not getting out of the penalty box" -[256] "Pat is the current player" -[257] "They have rolled a 4" -[258] "Pat is not getting out of the penalty box" -[259] "Sue is the current player" -[260] "They have rolled a 3" -[261] "Sue is getting out of the penalty box" -[262] "Sue's new location is 11" -[263] "The category is Rock" -[264] "Rock Question 2" -[265] "Answer was correct!!!!" -[266] "Chet now has 2 Gold Coins." -[267] "Chet is the current player" -[268] "They have rolled a 3" -[269] "Chet is getting out of the penalty box" -[270] "Chet's new location is 7" -[271] "The category is Rock" -[272] "Rock Question 3" -[273] "Answer was correct!!!!" -[274] "Pat now has 5 Gold Coins." -[275] "Pat is the current player" -[276] "They have rolled a 2" -[277] "Pat is not getting out of the penalty box" -[278] "Question was incorrectly answered" -[279] "Pat was sent to the penalty box" -[280] "Sue is the current player" -[281] "They have rolled a 4" -[282] "Sue is not getting out of the penalty box" -[283] "Chet is the current player" -[284] "They have rolled a 4" -[285] "Chet is not getting out of the penalty box" -[286] "Pat is the current player" -[287] "They have rolled a 6" -[288] "Pat is not getting out of the penalty box" -[289] "Sue is the current player" -[290] "They have rolled a 3" -[291] "Sue is getting out of the penalty box" -[292] "Sue's new location is 2" -[293] "The category is Sports" -[294] "Sport Question 3" -[295] "Answer was correct!!!!" -[296] "Chet now has 3 Gold Coins." -[297] "Chet is the current player" -[298] "They have rolled a 6" -[299] "Chet is not getting out of the penalty box" -[300] "Pat is the current player" -[301] "They have rolled a 5" -[302] "Pat is getting out of the penalty box" -[303] "Pat's new location is 4" -[304] "The category is Pop" -[305] "Pop Question 2" -[306] "Answer was correct!!!!" -[307] "Sue now has 2 Gold Coins." -[308] "Sue is the current player" -[309] "They have rolled a 2" -[310] "Sue is not getting out of the penalty box" -[311] "Chet is the current player" -[312] "They have rolled a 4" -[313] "Chet is not getting out of the penalty box" -[314] "Pat is the current player" -[315] "They have rolled a 2" -[316] "Pat is not getting out of the penalty box" -[317] "Sue is the current player" -[318] "They have rolled a 3" -[319] "Sue is getting out of the penalty box" -[320] "Sue's new location is 5" -[321] "The category is Science" -[322] "Science Question 3" -[323] "Answer was correct!!!!" -[324] "Chet now has 4 Gold Coins." -[325] "Chet is the current player" -[326] "They have rolled a 4" -[327] "Chet is not getting out of the penalty box" -[328] "Pat is the current player" -[329] "They have rolled a 2" -[330] "Pat is not getting out of the penalty box" -[331] "Sue is the current player" -[332] "They have rolled a 6" -[333] "Sue is not getting out of the penalty box" -[334] "Chet is the current player" -[335] "They have rolled a 5" -[336] "Chet is getting out of the penalty box" -[337] "Chet's new location is 0" -[338] "The category is Pop" -[339] "Pop Question 3" -[340] "Question was incorrectly answered" -[341] "Chet was sent to the penalty box" -[342] "Pat is the current player" -[343] "They have rolled a 2" -[344] "Pat is not getting out of the penalty box" -[345] "Sue is the current player" -[346] "They have rolled a 3" -[347] "Sue is getting out of the penalty box" -[348] "Sue's new location is 8" -[349] "The category is Pop" -[350] "Pop Question 4" -[351] "Question was incorrectly answered" -[352] "Sue was sent to the penalty box" -[353] "Chet is the current player" -[354] "They have rolled a 5" -[355] "Chet is getting out of the penalty box" -[356] "Chet's new location is 5" -[357] "The category is Science" -[358] "Science Question 4" -[359] "Answer was correct!!!!" -[360] "Pat now has 6 Gold Coins." -[361] "Chet was added" -[362] "They are player number 1" -[363] "Pat was added" -[364] "They are player number 2" -[365] "Sue was added" -[366] "They are player number 3" -[367] "Chet is the current player" -[368] "They have rolled a 5" -[369] "Chet's new location is 5" -[370] "The category is Science" -[371] "Science Question 0" -[372] "Answer was correct!!!!" -[373] "Pat now has 1 Gold Coins." -[374] "Pat is the current player" -[375] "They have rolled a 3" -[376] "Pat's new location is 3" -[377] "The category is Rock" -[378] "Rock Question 0" -[379] "Answer was correct!!!!" -[380] "Sue now has 1 Gold Coins." -[381] "Sue is the current player" -[382] "They have rolled a 5" -[383] "Sue's new location is 5" -[384] "The category is Science" -[385] "Science Question 1" -[386] "Answer was correct!!!!" -[387] "Chet now has 1 Gold Coins." -[388] "Chet is the current player" -[389] "They have rolled a 6" -[390] "Chet's new location is 11" -[391] "The category is Rock" -[392] "Rock Question 1" -[393] "Answer was correct!!!!" -[394] "Pat now has 2 Gold Coins." -[395] "Pat is the current player" -[396] "They have rolled a 6" -[397] "Pat's new location is 9" -[398] "The category is Science" -[399] "Science Question 2" -[400] "Answer was correct!!!!" -[401] "Sue now has 2 Gold Coins." -[402] "Sue is the current player" -[403] "They have rolled a 3" -[404] "Sue's new location is 8" -[405] "The category is Pop" -[406] "Pop Question 0" -[407] "Answer was correct!!!!" -[408] "Chet now has 2 Gold Coins." -[409] "Chet is the current player" -[410] "They have rolled a 6" -[411] "Chet's new location is 5" -[412] "The category is Science" -[413] "Science Question 3" -[414] "Answer was correct!!!!" -[415] "Pat now has 3 Gold Coins." -[416] "Pat is the current player" -[417] "They have rolled a 4" -[418] "Pat's new location is 1" -[419] "The category is Science" -[420] "Science Question 4" -[421] "Answer was correct!!!!" -[422] "Sue now has 3 Gold Coins." -[423] "Sue is the current player" -[424] "They have rolled a 3" -[425] "Sue's new location is 11" -[426] "The category is Rock" -[427] "Rock Question 2" -[428] "Answer was correct!!!!" -[429] "Chet now has 3 Gold Coins." -[430] "Chet is the current player" -[431] "They have rolled a 3" -[432] "Chet's new location is 8" -[433] "The category is Pop" -[434] "Pop Question 1" -[435] "Answer was correct!!!!" -[436] "Pat now has 4 Gold Coins." -[437] "Pat is the current player" -[438] "They have rolled a 4" -[439] "Pat's new location is 5" -[440] "The category is Science" -[441] "Science Question 5" -[442] "Answer was correct!!!!" -[443] "Sue now has 4 Gold Coins." -[444] "Sue is the current player" -[445] "They have rolled a 2" -[446] "Sue's new location is 1" -[447] "The category is Science" -[448] "Science Question 6" -[449] "Answer was correct!!!!" -[450] "Chet now has 4 Gold Coins." -[451] "Chet is the current player" -[452] "They have rolled a 6" -[453] "Chet's new location is 2" -[454] "The category is Sports" -[455] "Sport Question 0" -[456] "Answer was correct!!!!" -[457] "Pat now has 5 Gold Coins." -[458] "Pat is the current player" -[459] "They have rolled a 4" -[460] "Pat's new location is 9" -[461] "The category is Science" -[462] "Science Question 7" -[463] "Answer was correct!!!!" -[464] "Sue now has 5 Gold Coins." -[465] "Sue is the current player" -[466] "They have rolled a 6" -[467] "Sue's new location is 7" -[468] "The category is Rock" -[469] "Rock Question 3" -[470] "Answer was correct!!!!" -[471] "Chet now has 5 Gold Coins." -[472] "Chet is the current player" -[473] "They have rolled a 3" -[474] "Chet's new location is 5" -[475] "The category is Science" -[476] "Science Question 8" -[477] "Answer was correct!!!!" -[478] "Pat now has 6 Gold Coins." -[479] "Chet was added" -[480] "They are player number 1" -[481] "Pat was added" -[482] "They are player number 2" -[483] "Sue was added" -[484] "They are player number 3" -[485] "Chet is the current player" -[486] "They have rolled a 4" -[487] "Chet's new location is 4" -[488] "The category is Pop" -[489] "Pop Question 0" -[490] "Answer was correct!!!!" -[491] "Pat now has 1 Gold Coins." -[492] "Pat is the current player" -[493] "They have rolled a 2" -[494] "Pat's new location is 2" -[495] "The category is Sports" -[496] "Sport Question 0" -[497] "Answer was correct!!!!" -[498] "Sue now has 1 Gold Coins." -[499] "Sue is the current player" -[500] "They have rolled a 4" -[501] "Sue's new location is 4" -[502] "The category is Pop" -[503] "Pop Question 1" -[504] "Answer was correct!!!!" -[505] "Chet now has 1 Gold Coins." -[506] "Chet is the current player" -[507] "They have rolled a 2" -[508] "Chet's new location is 6" -[509] "The category is Sports" -[510] "Sport Question 1" -[511] "Answer was correct!!!!" -[512] "Pat now has 2 Gold Coins." -[513] "Pat is the current player" -[514] "They have rolled a 4" -[515] "Pat's new location is 6" -[516] "The category is Sports" -[517] "Sport Question 2" -[518] "Answer was correct!!!!" -[519] "Sue now has 2 Gold Coins." -[520] "Sue is the current player" -[521] "They have rolled a 5" -[522] "Sue's new location is 9" -[523] "The category is Science" -[524] "Science Question 0" -[525] "Answer was correct!!!!" -[526] "Chet now has 2 Gold Coins." -[527] "Chet is the current player" -[528] "They have rolled a 5" -[529] "Chet's new location is 11" -[530] "The category is Rock" -[531] "Rock Question 0" -[532] "Answer was correct!!!!" -[533] "Pat now has 3 Gold Coins." -[534] "Pat is the current player" -[535] "They have rolled a 5" -[536] "Pat's new location is 11" -[537] "The category is Rock" -[538] "Rock Question 1" -[539] "Answer was correct!!!!" -[540] "Sue now has 3 Gold Coins." -[541] "Sue is the current player" -[542] "They have rolled a 6" -[543] "Sue's new location is 3" -[544] "The category is Rock" -[545] "Rock Question 2" -[546] "Answer was correct!!!!" -[547] "Chet now has 3 Gold Coins." -[548] "Chet is the current player" -[549] "They have rolled a 2" -[550] "Chet's new location is 1" -[551] "The category is Science" -[552] "Science Question 1" -[553] "Answer was correct!!!!" -[554] "Pat now has 4 Gold Coins." -[555] "Pat is the current player" -[556] "They have rolled a 4" -[557] "Pat's new location is 3" -[558] "The category is Rock" -[559] "Rock Question 3" -[560] "Answer was correct!!!!" -[561] "Sue now has 4 Gold Coins." -[562] "Sue is the current player" -[563] "They have rolled a 6" -[564] "Sue's new location is 9" -[565] "The category is Science" -[566] "Science Question 2" -[567] "Answer was correct!!!!" -[568] "Chet now has 4 Gold Coins." -[569] "Chet is the current player" -[570] "They have rolled a 3" -[571] "Chet's new location is 4" -[572] "The category is Pop" -[573] "Pop Question 2" -[574] "Answer was correct!!!!" -[575] "Pat now has 5 Gold Coins." -[576] "Pat is the current player" -[577] "They have rolled a 5" -[578] "Pat's new location is 8" -[579] "The category is Pop" -[580] "Pop Question 3" -[581] "Question was incorrectly answered" -[582] "Pat was sent to the penalty box" -[583] "Sue is the current player" -[584] "They have rolled a 5" -[585] "Sue's new location is 2" -[586] "The category is Sports" -[587] "Sport Question 3" -[588] "Answer was correct!!!!" -[589] "Chet now has 5 Gold Coins." -[590] "Chet is the current player" -[591] "They have rolled a 2" -[592] "Chet's new location is 6" -[593] "The category is Sports" -[594] "Sport Question 4" -[595] "Answer was correct!!!!" -[596] "Pat now has 6 Gold Coins." -[597] "Chet was added" -[598] "They are player number 1" -[599] "Pat was added" -[600] "They are player number 2" -[601] "Sue was added" -[602] "They are player number 3" -[603] "Chet is the current player" -[604] "They have rolled a 4" -[605] "Chet's new location is 4" -[606] "The category is Pop" -[607] "Pop Question 0" -[608] "Answer was correct!!!!" -[609] "Pat now has 1 Gold Coins." -[610] "Pat is the current player" -[611] "They have rolled a 5" -[612] "Pat's new location is 5" -[613] "The category is Science" -[614] "Science Question 0" -[615] "Answer was correct!!!!" -[616] "Sue now has 1 Gold Coins." -[617] "Sue is the current player" -[618] "They have rolled a 6" -[619] "Sue's new location is 6" -[620] "The category is Sports" -[621] "Sport Question 0" -[622] "Answer was correct!!!!" -[623] "Chet now has 1 Gold Coins." -[624] "Chet is the current player" -[625] "They have rolled a 5" -[626] "Chet's new location is 9" -[627] "The category is Science" -[628] "Science Question 1" -[629] "Question was incorrectly answered" -[630] "Chet was sent to the penalty box" -[631] "Pat is the current player" -[632] "They have rolled a 2" -[633] "Pat's new location is 7" -[634] "The category is Rock" -[635] "Rock Question 0" -[636] "Question was incorrectly answered" -[637] "Pat was sent to the penalty box" -[638] "Sue is the current player" -[639] "They have rolled a 3" -[640] "Sue's new location is 9" -[641] "The category is Science" -[642] "Science Question 2" -[643] "Answer was correct!!!!" -[644] "Chet now has 2 Gold Coins." -[645] "Chet is the current player" -[646] "They have rolled a 5" -[647] "Chet is getting out of the penalty box" -[648] "Chet's new location is 2" -[649] "The category is Sports" -[650] "Sport Question 1" -[651] "Answer was correct!!!!" -[652] "Pat now has 2 Gold Coins." -[653] "Pat is the current player" -[654] "They have rolled a 6" -[655] "Pat is not getting out of the penalty box" -[656] "Sue is the current player" -[657] "They have rolled a 3" -[658] "Sue's new location is 0" -[659] "The category is Pop" -[660] "Pop Question 1" -[661] "Answer was correct!!!!" -[662] "Chet now has 3 Gold Coins." -[663] "Chet is the current player" -[664] "They have rolled a 2" -[665] "Chet is not getting out of the penalty box" -[666] "Pat is the current player" -[667] "They have rolled a 2" -[668] "Pat is not getting out of the penalty box" -[669] "Sue is the current player" -[670] "They have rolled a 4" -[671] "Sue's new location is 4" -[672] "The category is Pop" -[673] "Pop Question 2" -[674] "Answer was correct!!!!" -[675] "Chet now has 4 Gold Coins." -[676] "Chet is the current player" -[677] "They have rolled a 5" -[678] "Chet is getting out of the penalty box" -[679] "Chet's new location is 7" -[680] "The category is Rock" -[681] "Rock Question 1" -[682] "Answer was correct!!!!" -[683] "Pat now has 3 Gold Coins." -[684] "Pat is the current player" -[685] "They have rolled a 6" -[686] "Pat is not getting out of the penalty box" -[687] "Sue is the current player" -[688] "They have rolled a 2" -[689] "Sue's new location is 6" -[690] "The category is Sports" -[691] "Sport Question 2" -[692] "Answer was correct!!!!" -[693] "Chet now has 5 Gold Coins." -[694] "Chet is the current player" -[695] "They have rolled a 4" -[696] "Chet is not getting out of the penalty box" -[697] "Question was incorrectly answered" -[698] "Chet was sent to the penalty box" -[699] "Pat is the current player" -[700] "They have rolled a 5" -[701] "Pat is getting out of the penalty box" -[702] "Pat's new location is 0" -[703] "The category is Pop" -[704] "Pop Question 3" -[705] "Answer was correct!!!!" -[706] "Sue now has 2 Gold Coins." -[707] "Sue is the current player" -[708] "They have rolled a 3" -[709] "Sue's new location is 9" -[710] "The category is Science" -[711] "Science Question 3" -[712] "Question was incorrectly answered" -[713] "Sue was sent to the penalty box" -[714] "Chet is the current player" -[715] "They have rolled a 4" -[716] "Chet is not getting out of the penalty box" -[717] "Pat is the current player" -[718] "They have rolled a 5" -[719] "Pat is getting out of the penalty box" -[720] "Pat's new location is 5" -[721] "The category is Science" -[722] "Science Question 4" -[723] "Question was incorrectly answered" -[724] "Pat was sent to the penalty box" -[725] "Sue is the current player" -[726] "They have rolled a 2" -[727] "Sue is not getting out of the penalty box" -[728] "Chet is the current player" -[729] "They have rolled a 5" -[730] "Chet is getting out of the penalty box" -[731] "Chet's new location is 0" -[732] "The category is Pop" -[733] "Pop Question 4" -[734] "Answer was correct!!!!" -[735] "Pat now has 4 Gold Coins." -[736] "Pat is the current player" -[737] "They have rolled a 2" -[738] "Pat is not getting out of the penalty box" -[739] "Sue is the current player" -[740] "They have rolled a 6" -[741] "Sue is not getting out of the penalty box" -[742] "Chet is the current player" -[743] "They have rolled a 4" -[744] "Chet is not getting out of the penalty box" -[745] "Pat is the current player" -[746] "They have rolled a 4" -[747] "Pat is not getting out of the penalty box" -[748] "Sue is the current player" -[749] "They have rolled a 4" -[750] "Sue is not getting out of the penalty box" -[751] "Chet is the current player" -[752] "They have rolled a 2" -[753] "Chet is not getting out of the penalty box" -[754] "Pat is the current player" -[755] "They have rolled a 5" -[756] "Pat is getting out of the penalty box" -[757] "Pat's new location is 10" -[758] "The category is Sports" -[759] "Sport Question 3" -[760] "Answer was correct!!!!" -[761] "Sue now has 3 Gold Coins." -[762] "Sue is the current player" -[763] "They have rolled a 3" -[764] "Sue is getting out of the penalty box" -[765] "Sue's new location is 0" -[766] "The category is Pop" -[767] "Pop Question 5" -[768] "Question was incorrectly answered" -[769] "Sue was sent to the penalty box" -[770] "Chet is the current player" -[771] "They have rolled a 6" -[772] "Chet is not getting out of the penalty box" -[773] "Question was incorrectly answered" -[774] "Chet was sent to the penalty box" -[775] "Pat is the current player" -[776] "They have rolled a 2" -[777] "Pat is not getting out of the penalty box" -[778] "Sue is the current player" -[779] "They have rolled a 5" -[780] "Sue is getting out of the penalty box" -[781] "Sue's new location is 5" -[782] "The category is Science" -[783] "Science Question 5" -[784] "Answer was correct!!!!" -[785] "Chet now has 6 Gold Coins." -[786] "Chet was added" -[787] "They are player number 1" -[788] "Pat was added" -[789] "They are player number 2" -[790] "Sue was added" -[791] "They are player number 3" -[792] "Chet is the current player" -[793] "They have rolled a 6" -[794] "Chet's new location is 6" -[795] "The category is Sports" -[796] "Sport Question 0" -[797] "Question was incorrectly answered" -[798] "Chet was sent to the penalty box" -[799] "Pat is the current player" -[800] "They have rolled a 3" -[801] "Pat's new location is 3" -[802] "The category is Rock" -[803] "Rock Question 0" -[804] "Answer was correct!!!!" -[805] "Sue now has 1 Gold Coins." -[806] "Sue is the current player" -[807] "They have rolled a 6" -[808] "Sue's new location is 6" -[809] "The category is Sports" -[810] "Sport Question 1" -[811] "Answer was correct!!!!" -[812] "Chet now has 1 Gold Coins." -[813] "Chet is the current player" -[814] "They have rolled a 4" -[815] "Chet is not getting out of the penalty box" -[816] "Pat is the current player" -[817] "They have rolled a 5" -[818] "Pat's new location is 8" -[819] "The category is Pop" -[820] "Pop Question 0" -[821] "Answer was correct!!!!" -[822] "Sue now has 2 Gold Coins." -[823] "Sue is the current player" -[824] "They have rolled a 2" -[825] "Sue's new location is 8" -[826] "The category is Pop" -[827] "Pop Question 1" -[828] "Answer was correct!!!!" -[829] "Chet now has 2 Gold Coins." -[830] "Chet is the current player" -[831] "They have rolled a 6" -[832] "Chet is not getting out of the penalty box" -[833] "Pat is the current player" -[834] "They have rolled a 6" -[835] "Pat's new location is 2" -[836] "The category is Sports" -[837] "Sport Question 2" -[838] "Answer was correct!!!!" -[839] "Sue now has 3 Gold Coins." -[840] "Sue is the current player" -[841] "They have rolled a 2" -[842] "Sue's new location is 10" -[843] "The category is Sports" -[844] "Sport Question 3" -[845] "Question was incorrectly answered" -[846] "Sue was sent to the penalty box" -[847] "Chet is the current player" -[848] "They have rolled a 4" -[849] "Chet is not getting out of the penalty box" -[850] "Question was incorrectly answered" -[851] "Chet was sent to the penalty box" -[852] "Pat is the current player" -[853] "They have rolled a 5" -[854] "Pat's new location is 7" -[855] "The category is Rock" -[856] "Rock Question 1" -[857] "Answer was correct!!!!" -[858] "Sue now has 4 Gold Coins." -[859] "Sue is the current player" -[860] "They have rolled a 6" -[861] "Sue is not getting out of the penalty box" -[862] "Chet is the current player" -[863] "They have rolled a 5" -[864] "Chet is getting out of the penalty box" -[865] "Chet's new location is 11" -[866] "The category is Rock" -[867] "Rock Question 2" -[868] "Answer was correct!!!!" -[869] "Pat now has 1 Gold Coins." -[870] "Pat is the current player" -[871] "They have rolled a 4" -[872] "Pat's new location is 11" -[873] "The category is Rock" -[874] "Rock Question 3" -[875] "Answer was correct!!!!" -[876] "Sue now has 5 Gold Coins." -[877] "Sue is the current player" -[878] "They have rolled a 6" -[879] "Sue is not getting out of the penalty box" -[880] "Chet is the current player" -[881] "They have rolled a 4" -[882] "Chet is not getting out of the penalty box" -[883] "Pat is the current player" -[884] "They have rolled a 3" -[885] "Pat's new location is 2" -[886] "The category is Sports" -[887] "Sport Question 4" -[888] "Answer was correct!!!!" -[889] "Sue now has 6 Gold Coins." -[890] "Chet was added" -[891] "They are player number 1" -[892] "Pat was added" -[893] "They are player number 2" -[894] "Sue was added" -[895] "They are player number 3" -[896] "Chet is the current player" -[897] "They have rolled a 6" -[898] "Chet's new location is 6" -[899] "The category is Sports" -[900] "Sport Question 0" -[901] "Answer was correct!!!!" -[902] "Pat now has 1 Gold Coins." -[903] "Pat is the current player" -[904] "They have rolled a 4" -[905] "Pat's new location is 4" -[906] "The category is Pop" -[907] "Pop Question 0" -[908] "Answer was correct!!!!" -[909] "Sue now has 1 Gold Coins." -[910] "Sue is the current player" -[911] "They have rolled a 6" -[912] "Sue's new location is 6" -[913] "The category is Sports" -[914] "Sport Question 1" -[915] "Question was incorrectly answered" -[916] "Sue was sent to the penalty box" -[917] "Chet is the current player" -[918] "They have rolled a 5" -[919] "Chet's new location is 11" -[920] "The category is Rock" -[921] "Rock Question 0" -[922] "Answer was correct!!!!" -[923] "Pat now has 2 Gold Coins." -[924] "Pat is the current player" -[925] "They have rolled a 5" -[926] "Pat's new location is 9" -[927] "The category is Science" -[928] "Science Question 0" -[929] "Answer was correct!!!!" -[930] "Sue now has 2 Gold Coins." -[931] "Sue is the current player" -[932] "They have rolled a 6" -[933] "Sue is not getting out of the penalty box" -[934] "Chet is the current player" -[935] "They have rolled a 4" -[936] "Chet's new location is 3" -[937] "The category is Rock" -[938] "Rock Question 1" -[939] "Answer was correct!!!!" -[940] "Pat now has 3 Gold Coins." -[941] "Pat is the current player" -[942] "They have rolled a 5" -[943] "Pat's new location is 2" -[944] "The category is Sports" -[945] "Sport Question 2" -[946] "Answer was correct!!!!" -[947] "Sue now has 3 Gold Coins." -[948] "Sue is the current player" -[949] "They have rolled a 2" -[950] "Sue is not getting out of the penalty box" -[951] "Chet is the current player" -[952] "They have rolled a 2" -[953] "Chet's new location is 5" -[954] "The category is Science" -[955] "Science Question 1" -[956] "Answer was correct!!!!" -[957] "Pat now has 4 Gold Coins." -[958] "Pat is the current player" -[959] "They have rolled a 5" -[960] "Pat's new location is 7" -[961] "The category is Rock" -[962] "Rock Question 2" -[963] "Answer was correct!!!!" -[964] "Sue now has 4 Gold Coins." -[965] "Sue is the current player" -[966] "They have rolled a 5" -[967] "Sue is getting out of the penalty box" -[968] "Sue's new location is 11" -[969] "The category is Rock" -[970] "Rock Question 3" -[971] "Answer was correct!!!!" -[972] "Chet now has 1 Gold Coins." -[973] "Chet is the current player" -[974] "They have rolled a 5" -[975] "Chet's new location is 10" -[976] "The category is Sports" -[977] "Sport Question 3" -[978] "Answer was correct!!!!" -[979] "Pat now has 5 Gold Coins." -[980] "Pat is the current player" -[981] "They have rolled a 2" -[982] "Pat's new location is 9" -[983] "The category is Science" -[984] "Science Question 2" -[985] "Answer was correct!!!!" -[986] "Sue now has 5 Gold Coins." -[987] "Sue is the current player" -[988] "They have rolled a 6" -[989] "Sue is not getting out of the penalty box" -[990] "Question was incorrectly answered" -[991] "Sue was sent to the penalty box" -[992] "Chet is the current player" -[993] "They have rolled a 6" -[994] "Chet's new location is 4" -[995] "The category is Pop" -[996] "Pop Question 1" -[997] "Answer was correct!!!!" -[998] "Pat now has 6 Gold Coins." -[999] "Chet was added" -[1000] "They are player number 1" -[1001] "Pat was added" -[1002] "They are player number 2" -[1003] "Sue was added" -[1004] "They are player number 3" -[1005] "Chet is the current player" -[1006] "They have rolled a 5" -[1007] "Chet's new location is 5" -[1008] "The category is Science" -[1009] "Science Question 0" -[1010] "Answer was correct!!!!" -[1011] "Pat now has 1 Gold Coins." -[1012] "Pat is the current player" -[1013] "They have rolled a 3" -[1014] "Pat's new location is 3" -[1015] "The category is Rock" -[1016] "Rock Question 0" -[1017] "Answer was correct!!!!" -[1018] "Sue now has 1 Gold Coins." -[1019] "Sue is the current player" -[1020] "They have rolled a 5" -[1021] "Sue's new location is 5" -[1022] "The category is Science" -[1023] "Science Question 1" -[1024] "Answer was correct!!!!" -[1025] "Chet now has 1 Gold Coins." -[1026] "Chet is the current player" -[1027] "They have rolled a 2" -[1028] "Chet's new location is 7" -[1029] "The category is Rock" -[1030] "Rock Question 1" -[1031] "Answer was correct!!!!" -[1032] "Pat now has 2 Gold Coins." -[1033] "Pat is the current player" -[1034] "They have rolled a 2" -[1035] "Pat's new location is 5" -[1036] "The category is Science" -[1037] "Science Question 2" -[1038] "Answer was correct!!!!" -[1039] "Sue now has 2 Gold Coins." -[1040] "Sue is the current player" -[1041] "They have rolled a 5" -[1042] "Sue's new location is 10" -[1043] "The category is Sports" -[1044] "Sport Question 0" -[1045] "Question was incorrectly answered" -[1046] "Sue was sent to the penalty box" -[1047] "Chet is the current player" -[1048] "They have rolled a 5" -[1049] "Chet's new location is 0" -[1050] "The category is Pop" -[1051] "Pop Question 0" -[1052] "Answer was correct!!!!" -[1053] "Pat now has 3 Gold Coins." -[1054] "Pat is the current player" -[1055] "They have rolled a 6" -[1056] "Pat's new location is 11" -[1057] "The category is Rock" -[1058] "Rock Question 2" -[1059] "Answer was correct!!!!" -[1060] "Sue now has 3 Gold Coins." -[1061] "Sue is the current player" -[1062] "They have rolled a 2" -[1063] "Sue is not getting out of the penalty box" -[1064] "Chet is the current player" -[1065] "They have rolled a 5" -[1066] "Chet's new location is 5" -[1067] "The category is Science" -[1068] "Science Question 3" -[1069] "Answer was correct!!!!" -[1070] "Pat now has 4 Gold Coins." -[1071] "Pat is the current player" -[1072] "They have rolled a 5" -[1073] "Pat's new location is 4" -[1074] "The category is Pop" -[1075] "Pop Question 1" -[1076] "Answer was correct!!!!" -[1077] "Sue now has 4 Gold Coins." -[1078] "Sue is the current player" -[1079] "They have rolled a 2" -[1080] "Sue is not getting out of the penalty box" -[1081] "Chet is the current player" -[1082] "They have rolled a 6" -[1083] "Chet's new location is 11" -[1084] "The category is Rock" -[1085] "Rock Question 3" -[1086] "Answer was correct!!!!" -[1087] "Pat now has 5 Gold Coins." -[1088] "Pat is the current player" -[1089] "They have rolled a 6" -[1090] "Pat's new location is 10" -[1091] "The category is Sports" -[1092] "Sport Question 1" -[1093] "Question was incorrectly answered" -[1094] "Pat was sent to the penalty box" -[1095] "Sue is the current player" -[1096] "They have rolled a 2" -[1097] "Sue is not getting out of the penalty box" -[1098] "Chet is the current player" -[1099] "They have rolled a 3" -[1100] "Chet's new location is 2" -[1101] "The category is Sports" -[1102] "Sport Question 2" -[1103] "Answer was correct!!!!" -[1104] "Pat now has 6 Gold Coins." -[1105] "Chet was added" -[1106] "They are player number 1" -[1107] "Pat was added" -[1108] "They are player number 2" -[1109] "Sue was added" -[1110] "They are player number 3" -[1111] "Chet is the current player" -[1112] "They have rolled a 3" -[1113] "Chet's new location is 3" -[1114] "The category is Rock" -[1115] "Rock Question 0" -[1116] "Answer was correct!!!!" -[1117] "Pat now has 1 Gold Coins." -[1118] "Pat is the current player" -[1119] "They have rolled a 6" -[1120] "Pat's new location is 6" -[1121] "The category is Sports" -[1122] "Sport Question 0" -[1123] "Answer was correct!!!!" -[1124] "Sue now has 1 Gold Coins." -[1125] "Sue is the current player" -[1126] "They have rolled a 2" -[1127] "Sue's new location is 2" -[1128] "The category is Sports" -[1129] "Sport Question 1" -[1130] "Answer was correct!!!!" -[1131] "Chet now has 1 Gold Coins." -[1132] "Chet is the current player" -[1133] "They have rolled a 2" -[1134] "Chet's new location is 5" -[1135] "The category is Science" -[1136] "Science Question 0" -[1137] "Question was incorrectly answered" -[1138] "Chet was sent to the penalty box" -[1139] "Pat is the current player" -[1140] "They have rolled a 3" -[1141] "Pat's new location is 9" -[1142] "The category is Science" -[1143] "Science Question 1" -[1144] "Answer was correct!!!!" -[1145] "Sue now has 2 Gold Coins." -[1146] "Sue is the current player" -[1147] "They have rolled a 4" -[1148] "Sue's new location is 6" -[1149] "The category is Sports" -[1150] "Sport Question 2" -[1151] "Answer was correct!!!!" -[1152] "Chet now has 2 Gold Coins." -[1153] "Chet is the current player" -[1154] "They have rolled a 2" -[1155] "Chet is not getting out of the penalty box" -[1156] "Pat is the current player" -[1157] "They have rolled a 2" -[1158] "Pat's new location is 11" -[1159] "The category is Rock" -[1160] "Rock Question 1" -[1161] "Answer was correct!!!!" -[1162] "Sue now has 3 Gold Coins." -[1163] "Sue is the current player" -[1164] "They have rolled a 6" -[1165] "Sue's new location is 0" -[1166] "The category is Pop" -[1167] "Pop Question 0" -[1168] "Answer was correct!!!!" -[1169] "Chet now has 3 Gold Coins." -[1170] "Chet is the current player" -[1171] "They have rolled a 5" -[1172] "Chet is getting out of the penalty box" -[1173] "Chet's new location is 10" -[1174] "The category is Sports" -[1175] "Sport Question 3" -[1176] "Answer was correct!!!!" -[1177] "Pat now has 2 Gold Coins." -[1178] "Pat is the current player" -[1179] "They have rolled a 3" -[1180] "Pat's new location is 2" -[1181] "The category is Sports" -[1182] "Sport Question 4" -[1183] "Answer was correct!!!!" -[1184] "Sue now has 4 Gold Coins." -[1185] "Sue is the current player" -[1186] "They have rolled a 2" -[1187] "Sue's new location is 2" -[1188] "The category is Sports" -[1189] "Sport Question 5" -[1190] "Question was incorrectly answered" -[1191] "Sue was sent to the penalty box" -[1192] "Chet is the current player" -[1193] "They have rolled a 4" -[1194] "Chet is not getting out of the penalty box" -[1195] "Pat is the current player" -[1196] "They have rolled a 5" -[1197] "Pat's new location is 7" -[1198] "The category is Rock" -[1199] "Rock Question 2" -[1200] "Answer was correct!!!!" -[1201] "Sue now has 5 Gold Coins." -[1202] "Sue is the current player" -[1203] "They have rolled a 2" -[1204] "Sue is not getting out of the penalty box" -[1205] "Chet is the current player" -[1206] "They have rolled a 2" -[1207] "Chet is not getting out of the penalty box" -[1208] "Pat is the current player" -[1209] "They have rolled a 6" -[1210] "Pat's new location is 1" -[1211] "The category is Science" -[1212] "Science Question 2" -[1213] "Answer was correct!!!!" -[1214] "Sue now has 6 Gold Coins." -[1215] "Chet was added" -[1216] "They are player number 1" -[1217] "Pat was added" -[1218] "They are player number 2" -[1219] "Sue was added" -[1220] "They are player number 3" -[1221] "Chet is the current player" -[1222] "They have rolled a 2" -[1223] "Chet's new location is 2" -[1224] "The category is Sports" -[1225] "Sport Question 0" -[1226] "Answer was correct!!!!" -[1227] "Pat now has 1 Gold Coins." -[1228] "Pat is the current player" -[1229] "They have rolled a 5" -[1230] "Pat's new location is 5" -[1231] "The category is Science" -[1232] "Science Question 0" -[1233] "Answer was correct!!!!" -[1234] "Sue now has 1 Gold Coins." -[1235] "Sue is the current player" -[1236] "They have rolled a 4" -[1237] "Sue's new location is 4" -[1238] "The category is Pop" -[1239] "Pop Question 0" -[1240] "Answer was correct!!!!" -[1241] "Chet now has 1 Gold Coins." -[1242] "Chet is the current player" -[1243] "They have rolled a 5" -[1244] "Chet's new location is 7" -[1245] "The category is Rock" -[1246] "Rock Question 0" -[1247] "Answer was correct!!!!" -[1248] "Pat now has 2 Gold Coins." -[1249] "Pat is the current player" -[1250] "They have rolled a 6" -[1251] "Pat's new location is 11" -[1252] "The category is Rock" -[1253] "Rock Question 1" -[1254] "Answer was correct!!!!" -[1255] "Sue now has 2 Gold Coins." -[1256] "Sue is the current player" -[1257] "They have rolled a 4" -[1258] "Sue's new location is 8" -[1259] "The category is Pop" -[1260] "Pop Question 1" -[1261] "Answer was correct!!!!" -[1262] "Chet now has 2 Gold Coins." -[1263] "Chet is the current player" -[1264] "They have rolled a 2" -[1265] "Chet's new location is 9" -[1266] "The category is Science" -[1267] "Science Question 1" -[1268] "Answer was correct!!!!" -[1269] "Pat now has 3 Gold Coins." -[1270] "Pat is the current player" -[1271] "They have rolled a 6" -[1272] "Pat's new location is 5" -[1273] "The category is Science" -[1274] "Science Question 2" -[1275] "Answer was correct!!!!" -[1276] "Sue now has 3 Gold Coins." -[1277] "Sue is the current player" -[1278] "They have rolled a 4" -[1279] "Sue's new location is 0" -[1280] "The category is Pop" -[1281] "Pop Question 2" -[1282] "Answer was correct!!!!" -[1283] "Chet now has 3 Gold Coins." -[1284] "Chet is the current player" -[1285] "They have rolled a 4" -[1286] "Chet's new location is 1" -[1287] "The category is Science" -[1288] "Science Question 3" -[1289] "Answer was correct!!!!" -[1290] "Pat now has 4 Gold Coins." -[1291] "Pat is the current player" -[1292] "They have rolled a 2" -[1293] "Pat's new location is 7" -[1294] "The category is Rock" -[1295] "Rock Question 2" -[1296] "Question was incorrectly answered" -[1297] "Pat was sent to the penalty box" -[1298] "Sue is the current player" -[1299] "They have rolled a 6" -[1300] "Sue's new location is 6" -[1301] "The category is Sports" -[1302] "Sport Question 1" -[1303] "Answer was correct!!!!" -[1304] "Chet now has 4 Gold Coins." -[1305] "Chet is the current player" -[1306] "They have rolled a 4" -[1307] "Chet's new location is 5" -[1308] "The category is Science" -[1309] "Science Question 4" -[1310] "Answer was correct!!!!" -[1311] "Pat now has 5 Gold Coins." -[1312] "Pat is the current player" -[1313] "They have rolled a 3" -[1314] "Pat is getting out of the penalty box" -[1315] "Pat's new location is 10" -[1316] "The category is Sports" -[1317] "Sport Question 2" -[1318] "Answer was correct!!!!" -[1319] "Sue now has 4 Gold Coins." -[1320] "Sue is the current player" -[1321] "They have rolled a 3" -[1322] "Sue's new location is 9" -[1323] "The category is Science" -[1324] "Science Question 5" -[1325] "Answer was correct!!!!" -[1326] "Chet now has 5 Gold Coins." -[1327] "Chet is the current player" -[1328] "They have rolled a 5" -[1329] "Chet's new location is 10" -[1330] "The category is Sports" -[1331] "Sport Question 3" -[1332] "Answer was correct!!!!" -[1333] "Pat now has 6 Gold Coins." -[1334] "Chet was added" -[1335] "They are player number 1" -[1336] "Pat was added" -[1337] "They are player number 2" -[1338] "Sue was added" -[1339] "They are player number 3" -[1340] "Chet is the current player" -[1341] "They have rolled a 2" -[1342] "Chet's new location is 2" -[1343] "The category is Sports" -[1344] "Sport Question 0" -[1345] "Answer was correct!!!!" -[1346] "Pat now has 1 Gold Coins." -[1347] "Pat is the current player" -[1348] "They have rolled a 2" -[1349] "Pat's new location is 2" -[1350] "The category is Sports" -[1351] "Sport Question 1" -[1352] "Answer was correct!!!!" -[1353] "Sue now has 1 Gold Coins." -[1354] "Sue is the current player" -[1355] "They have rolled a 3" -[1356] "Sue's new location is 3" -[1357] "The category is Rock" -[1358] "Rock Question 0" -[1359] "Answer was correct!!!!" -[1360] "Chet now has 1 Gold Coins." -[1361] "Chet is the current player" -[1362] "They have rolled a 2" -[1363] "Chet's new location is 4" -[1364] "The category is Pop" -[1365] "Pop Question 0" -[1366] "Question was incorrectly answered" -[1367] "Chet was sent to the penalty box" -[1368] "Pat is the current player" -[1369] "They have rolled a 3" -[1370] "Pat's new location is 5" -[1371] "The category is Science" -[1372] "Science Question 0" -[1373] "Answer was correct!!!!" -[1374] "Sue now has 2 Gold Coins." -[1375] "Sue is the current player" -[1376] "They have rolled a 5" -[1377] "Sue's new location is 8" -[1378] "The category is Pop" -[1379] "Pop Question 1" -[1380] "Question was incorrectly answered" -[1381] "Sue was sent to the penalty box" -[1382] "Chet is the current player" -[1383] "They have rolled a 3" -[1384] "Chet is getting out of the penalty box" -[1385] "Chet's new location is 7" -[1386] "The category is Rock" -[1387] "Rock Question 1" -[1388] "Question was incorrectly answered" -[1389] "Chet was sent to the penalty box" -[1390] "Pat is the current player" -[1391] "They have rolled a 4" -[1392] "Pat's new location is 9" -[1393] "The category is Science" -[1394] "Science Question 1" -[1395] "Question was incorrectly answered" -[1396] "Pat was sent to the penalty box" -[1397] "Sue is the current player" -[1398] "They have rolled a 4" -[1399] "Sue is not getting out of the penalty box" -[1400] "Chet is the current player" -[1401] "They have rolled a 3" -[1402] "Chet is getting out of the penalty box" -[1403] "Chet's new location is 10" -[1404] "The category is Sports" -[1405] "Sport Question 2" -[1406] "Question was incorrectly answered" -[1407] "Chet was sent to the penalty box" -[1408] "Pat is the current player" -[1409] "They have rolled a 5" -[1410] "Pat is getting out of the penalty box" -[1411] "Pat's new location is 2" -[1412] "The category is Sports" -[1413] "Sport Question 3" -[1414] "Answer was correct!!!!" -[1415] "Sue now has 3 Gold Coins." -[1416] "Sue is the current player" -[1417] "They have rolled a 2" -[1418] "Sue is not getting out of the penalty box" -[1419] "Chet is the current player" -[1420] "They have rolled a 2" -[1421] "Chet is not getting out of the penalty box" -[1422] "Pat is the current player" -[1423] "They have rolled a 3" -[1424] "Pat is getting out of the penalty box" -[1425] "Pat's new location is 5" -[1426] "The category is Science" -[1427] "Science Question 2" -[1428] "Answer was correct!!!!" -[1429] "Sue now has 4 Gold Coins." -[1430] "Sue is the current player" -[1431] "They have rolled a 4" -[1432] "Sue is not getting out of the penalty box" -[1433] "Chet is the current player" -[1434] "They have rolled a 3" -[1435] "Chet is getting out of the penalty box" -[1436] "Chet's new location is 1" -[1437] "The category is Science" -[1438] "Science Question 3" -[1439] "Answer was correct!!!!" -[1440] "Pat now has 2 Gold Coins." -[1441] "Pat is the current player" -[1442] "They have rolled a 6" -[1443] "Pat is not getting out of the penalty box" -[1444] "Sue is the current player" -[1445] "They have rolled a 3" -[1446] "Sue is getting out of the penalty box" -[1447] "Sue's new location is 11" -[1448] "The category is Rock" -[1449] "Rock Question 2" -[1450] "Answer was correct!!!!" -[1451] "Chet now has 2 Gold Coins." -[1452] "Chet is the current player" -[1453] "They have rolled a 2" -[1454] "Chet is not getting out of the penalty box" -[1455] "Question was incorrectly answered" -[1456] "Chet was sent to the penalty box" -[1457] "Pat is the current player" -[1458] "They have rolled a 2" -[1459] "Pat is not getting out of the penalty box" -[1460] "Sue is the current player" -[1461] "They have rolled a 3" -[1462] "Sue is getting out of the penalty box" -[1463] "Sue's new location is 2" -[1464] "The category is Sports" -[1465] "Sport Question 4" -[1466] "Answer was correct!!!!" -[1467] "Chet now has 3 Gold Coins." -[1468] "Chet is the current player" -[1469] "They have rolled a 3" -[1470] "Chet is getting out of the penalty box" -[1471] "Chet's new location is 4" -[1472] "The category is Pop" -[1473] "Pop Question 2" -[1474] "Answer was correct!!!!" -[1475] "Pat now has 3 Gold Coins." -[1476] "Pat is the current player" -[1477] "They have rolled a 3" -[1478] "Pat is getting out of the penalty box" -[1479] "Pat's new location is 8" -[1480] "The category is Pop" -[1481] "Pop Question 3" -[1482] "Answer was correct!!!!" -[1483] "Sue now has 5 Gold Coins." -[1484] "Sue is the current player" -[1485] "They have rolled a 3" -[1486] "Sue is getting out of the penalty box" -[1487] "Sue's new location is 5" -[1488] "The category is Science" -[1489] "Science Question 4" -[1490] "Answer was correct!!!!" -[1491] "Chet now has 4 Gold Coins." -[1492] "Chet is the current player" -[1493] "They have rolled a 5" -[1494] "Chet is getting out of the penalty box" -[1495] "Chet's new location is 9" -[1496] "The category is Science" -[1497] "Science Question 5" -[1498] "Answer was correct!!!!" -[1499] "Pat now has 4 Gold Coins." -[1500] "Pat is the current player" -[1501] "They have rolled a 5" -[1502] "Pat is getting out of the penalty box" -[1503] "Pat's new location is 1" -[1504] "The category is Science" -[1505] "Science Question 6" -[1506] "Answer was correct!!!!" -[1507] "Sue now has 6 Gold Coins." -[1508] "Chet was added" -[1509] "They are player number 1" -[1510] "Pat was added" -[1511] "They are player number 2" -[1512] "Sue was added" -[1513] "They are player number 3" -[1514] "Chet is the current player" -[1515] "They have rolled a 4" -[1516] "Chet's new location is 4" -[1517] "The category is Pop" -[1518] "Pop Question 0" -[1519] "Answer was correct!!!!" -[1520] "Pat now has 1 Gold Coins." -[1521] "Pat is the current player" -[1522] "They have rolled a 2" -[1523] "Pat's new location is 2" -[1524] "The category is Sports" -[1525] "Sport Question 0" -[1526] "Answer was correct!!!!" -[1527] "Sue now has 1 Gold Coins." -[1528] "Sue is the current player" -[1529] "They have rolled a 3" -[1530] "Sue's new location is 3" -[1531] "The category is Rock" -[1532] "Rock Question 0" -[1533] "Answer was correct!!!!" -[1534] "Chet now has 1 Gold Coins." -[1535] "Chet is the current player" -[1536] "They have rolled a 5" -[1537] "Chet's new location is 9" -[1538] "The category is Science" -[1539] "Science Question 0" -[1540] "Answer was correct!!!!" -[1541] "Pat now has 2 Gold Coins." -[1542] "Pat is the current player" -[1543] "They have rolled a 5" -[1544] "Pat's new location is 7" -[1545] "The category is Rock" -[1546] "Rock Question 1" -[1547] "Question was incorrectly answered" -[1548] "Pat was sent to the penalty box" -[1549] "Sue is the current player" -[1550] "They have rolled a 2" -[1551] "Sue's new location is 5" -[1552] "The category is Science" -[1553] "Science Question 1" -[1554] "Answer was correct!!!!" -[1555] "Chet now has 2 Gold Coins." -[1556] "Chet is the current player" -[1557] "They have rolled a 4" -[1558] "Chet's new location is 1" -[1559] "The category is Science" -[1560] "Science Question 2" -[1561] "Answer was correct!!!!" -[1562] "Pat now has 3 Gold Coins." -[1563] "Pat is the current player" -[1564] "They have rolled a 6" -[1565] "Pat is not getting out of the penalty box" -[1566] "Sue is the current player" -[1567] "They have rolled a 3" -[1568] "Sue's new location is 8" -[1569] "The category is Pop" -[1570] "Pop Question 1" -[1571] "Answer was correct!!!!" -[1572] "Chet now has 3 Gold Coins." -[1573] "Chet is the current player" -[1574] "They have rolled a 4" -[1575] "Chet's new location is 5" -[1576] "The category is Science" -[1577] "Science Question 3" -[1578] "Answer was correct!!!!" -[1579] "Pat now has 4 Gold Coins." -[1580] "Pat is the current player" -[1581] "They have rolled a 4" -[1582] "Pat is not getting out of the penalty box" -[1583] "Sue is the current player" -[1584] "They have rolled a 4" -[1585] "Sue's new location is 0" -[1586] "The category is Pop" -[1587] "Pop Question 2" -[1588] "Answer was correct!!!!" -[1589] "Chet now has 4 Gold Coins." -[1590] "Chet is the current player" -[1591] "They have rolled a 5" -[1592] "Chet's new location is 10" -[1593] "The category is Sports" -[1594] "Sport Question 1" -[1595] "Answer was correct!!!!" -[1596] "Pat now has 5 Gold Coins." -[1597] "Pat is the current player" -[1598] "They have rolled a 3" -[1599] "Pat is getting out of the penalty box" -[1600] "Pat's new location is 10" -[1601] "The category is Sports" -[1602] "Sport Question 2" -[1603] "Answer was correct!!!!" -[1604] "Sue now has 2 Gold Coins." -[1605] "Sue is the current player" -[1606] "They have rolled a 4" -[1607] "Sue's new location is 4" -[1608] "The category is Pop" -[1609] "Pop Question 3" -[1610] "Answer was correct!!!!" -[1611] "Chet now has 5 Gold Coins." -[1612] "Chet is the current player" -[1613] "They have rolled a 6" -[1614] "Chet's new location is 4" -[1615] "The category is Pop" -[1616] "Pop Question 4" -[1617] "Answer was correct!!!!" -[1618] "Pat now has 6 Gold Coins." -[1619] "Chet was added" -[1620] "They are player number 1" -[1621] "Pat was added" -[1622] "They are player number 2" -[1623] "Sue was added" -[1624] "They are player number 3" -[1625] "Chet is the current player" -[1626] "They have rolled a 2" -[1627] "Chet's new location is 2" -[1628] "The category is Sports" -[1629] "Sport Question 0" -[1630] "Answer was correct!!!!" -[1631] "Pat now has 1 Gold Coins." -[1632] "Pat is the current player" -[1633] "They have rolled a 4" -[1634] "Pat's new location is 4" -[1635] "The category is Pop" -[1636] "Pop Question 0" -[1637] "Answer was correct!!!!" -[1638] "Sue now has 1 Gold Coins." -[1639] "Sue is the current player" -[1640] "They have rolled a 6" -[1641] "Sue's new location is 6" -[1642] "The category is Sports" -[1643] "Sport Question 1" -[1644] "Answer was correct!!!!" -[1645] "Chet now has 1 Gold Coins." -[1646] "Chet is the current player" -[1647] "They have rolled a 4" -[1648] "Chet's new location is 6" -[1649] "The category is Sports" -[1650] "Sport Question 2" -[1651] "Answer was correct!!!!" -[1652] "Pat now has 2 Gold Coins." -[1653] "Pat is the current player" -[1654] "They have rolled a 2" -[1655] "Pat's new location is 6" -[1656] "The category is Sports" -[1657] "Sport Question 3" -[1658] "Answer was correct!!!!" -[1659] "Sue now has 2 Gold Coins." -[1660] "Sue is the current player" -[1661] "They have rolled a 2" -[1662] "Sue's new location is 8" -[1663] "The category is Pop" -[1664] "Pop Question 1" -[1665] "Answer was correct!!!!" -[1666] "Chet now has 2 Gold Coins." -[1667] "Chet is the current player" -[1668] "They have rolled a 3" -[1669] "Chet's new location is 9" -[1670] "The category is Science" -[1671] "Science Question 0" -[1672] "Answer was correct!!!!" -[1673] "Pat now has 3 Gold Coins." -[1674] "Pat is the current player" -[1675] "They have rolled a 3" -[1676] "Pat's new location is 9" -[1677] "The category is Science" -[1678] "Science Question 1" -[1679] "Answer was correct!!!!" -[1680] "Sue now has 3 Gold Coins." -[1681] "Sue is the current player" -[1682] "They have rolled a 3" -[1683] "Sue's new location is 11" -[1684] "The category is Rock" -[1685] "Rock Question 0" -[1686] "Answer was correct!!!!" -[1687] "Chet now has 3 Gold Coins." -[1688] "Chet is the current player" -[1689] "They have rolled a 3" -[1690] "Chet's new location is 0" -[1691] "The category is Pop" -[1692] "Pop Question 2" -[1693] "Answer was correct!!!!" -[1694] "Pat now has 4 Gold Coins." -[1695] "Pat is the current player" -[1696] "They have rolled a 2" -[1697] "Pat's new location is 11" -[1698] "The category is Rock" -[1699] "Rock Question 1" -[1700] "Answer was correct!!!!" -[1701] "Sue now has 4 Gold Coins." -[1702] "Sue is the current player" -[1703] "They have rolled a 6" -[1704] "Sue's new location is 5" -[1705] "The category is Science" -[1706] "Science Question 2" -[1707] "Question was incorrectly answered" -[1708] "Sue was sent to the penalty box" -[1709] "Chet is the current player" -[1710] "They have rolled a 5" -[1711] "Chet's new location is 5" -[1712] "The category is Science" -[1713] "Science Question 3" -[1714] "Answer was correct!!!!" -[1715] "Pat now has 5 Gold Coins." -[1716] "Pat is the current player" -[1717] "They have rolled a 5" -[1718] "Pat's new location is 4" -[1719] "The category is Pop" -[1720] "Pop Question 3" -[1721] "Answer was correct!!!!" -[1722] "Sue now has 5 Gold Coins." -[1723] "Sue is the current player" -[1724] "They have rolled a 6" -[1725] "Sue is not getting out of the penalty box" -[1726] "Chet is the current player" -[1727] "They have rolled a 5" -[1728] "Chet's new location is 10" -[1729] "The category is Sports" -[1730] "Sport Question 4" -[1731] "Answer was correct!!!!" -[1732] "Pat now has 6 Gold Coins." -[1733] "Chet was added" -[1734] "They are player number 1" -[1735] "Pat was added" -[1736] "They are player number 2" -[1737] "Sue was added" -[1738] "They are player number 3" -[1739] "Chet is the current player" -[1740] "They have rolled a 5" -[1741] "Chet's new location is 5" -[1742] "The category is Science" -[1743] "Science Question 0" -[1744] "Question was incorrectly answered" -[1745] "Chet was sent to the penalty box" -[1746] "Pat is the current player" -[1747] "They have rolled a 6" -[1748] "Pat's new location is 6" -[1749] "The category is Sports" -[1750] "Sport Question 0" -[1751] "Answer was correct!!!!" -[1752] "Sue now has 1 Gold Coins." -[1753] "Sue is the current player" -[1754] "They have rolled a 6" -[1755] "Sue's new location is 6" -[1756] "The category is Sports" -[1757] "Sport Question 1" -[1758] "Answer was correct!!!!" -[1759] "Chet now has 1 Gold Coins." -[1760] "Chet is the current player" -[1761] "They have rolled a 3" -[1762] "Chet is getting out of the penalty box" -[1763] "Chet's new location is 8" -[1764] "The category is Pop" -[1765] "Pop Question 0" -[1766] "Answer was correct!!!!" -[1767] "Pat now has 1 Gold Coins." -[1768] "Pat is the current player" -[1769] "They have rolled a 4" -[1770] "Pat's new location is 10" -[1771] "The category is Sports" -[1772] "Sport Question 2" -[1773] "Answer was correct!!!!" -[1774] "Sue now has 2 Gold Coins." -[1775] "Sue is the current player" -[1776] "They have rolled a 2" -[1777] "Sue's new location is 8" -[1778] "The category is Pop" -[1779] "Pop Question 1" -[1780] "Answer was correct!!!!" -[1781] "Chet now has 2 Gold Coins." -[1782] "Chet is the current player" -[1783] "They have rolled a 5" -[1784] "Chet is getting out of the penalty box" -[1785] "Chet's new location is 1" -[1786] "The category is Science" -[1787] "Science Question 1" -[1788] "Answer was correct!!!!" -[1789] "Pat now has 2 Gold Coins." -[1790] "Pat is the current player" -[1791] "They have rolled a 2" -[1792] "Pat's new location is 0" -[1793] "The category is Pop" -[1794] "Pop Question 2" -[1795] "Question was incorrectly answered" -[1796] "Pat was sent to the penalty box" -[1797] "Sue is the current player" -[1798] "They have rolled a 4" -[1799] "Sue's new location is 0" -[1800] "The category is Pop" -[1801] "Pop Question 3" -[1802] "Answer was correct!!!!" -[1803] "Chet now has 3 Gold Coins." -[1804] "Chet is the current player" -[1805] "They have rolled a 2" -[1806] "Chet is not getting out of the penalty box" -[1807] "Pat is the current player" -[1808] "They have rolled a 4" -[1809] "Pat is not getting out of the penalty box" -[1810] "Sue is the current player" -[1811] "They have rolled a 4" -[1812] "Sue's new location is 4" -[1813] "The category is Pop" -[1814] "Pop Question 4" -[1815] "Answer was correct!!!!" -[1816] "Chet now has 4 Gold Coins." -[1817] "Chet is the current player" -[1818] "They have rolled a 4" -[1819] "Chet is not getting out of the penalty box" -[1820] "Pat is the current player" -[1821] "They have rolled a 6" -[1822] "Pat is not getting out of the penalty box" -[1823] "Sue is the current player" -[1824] "They have rolled a 6" -[1825] "Sue's new location is 10" -[1826] "The category is Sports" -[1827] "Sport Question 3" -[1828] "Answer was correct!!!!" -[1829] "Chet now has 5 Gold Coins." -[1830] "Chet is the current player" -[1831] "They have rolled a 3" -[1832] "Chet is getting out of the penalty box" -[1833] "Chet's new location is 4" -[1834] "The category is Pop" -[1835] "Pop Question 5" -[1836] "Answer was correct!!!!" -[1837] "Pat now has 3 Gold Coins." -[1838] "Pat is the current player" -[1839] "They have rolled a 4" -[1840] "Pat is not getting out of the penalty box" -[1841] "Sue is the current player" -[1842] "They have rolled a 4" -[1843] "Sue's new location is 2" -[1844] "The category is Sports" -[1845] "Sport Question 4" -[1846] "Answer was correct!!!!" -[1847] "Chet now has 6 Gold Coins." -[1848] "Chet was added" -[1849] "They are player number 1" -[1850] "Pat was added" -[1851] "They are player number 2" -[1852] "Sue was added" -[1853] "They are player number 3" -[1854] "Chet is the current player" -[1855] "They have rolled a 2" -[1856] "Chet's new location is 2" -[1857] "The category is Sports" -[1858] "Sport Question 0" -[1859] "Answer was correct!!!!" -[1860] "Pat now has 1 Gold Coins." -[1861] "Pat is the current player" -[1862] "They have rolled a 6" -[1863] "Pat's new location is 6" -[1864] "The category is Sports" -[1865] "Sport Question 1" -[1866] "Answer was correct!!!!" -[1867] "Sue now has 1 Gold Coins." -[1868] "Sue is the current player" -[1869] "They have rolled a 4" -[1870] "Sue's new location is 4" -[1871] "The category is Pop" -[1872] "Pop Question 0" -[1873] "Answer was correct!!!!" -[1874] "Chet now has 1 Gold Coins." -[1875] "Chet is the current player" -[1876] "They have rolled a 2" -[1877] "Chet's new location is 4" -[1878] "The category is Pop" -[1879] "Pop Question 1" -[1880] "Answer was correct!!!!" -[1881] "Pat now has 2 Gold Coins." -[1882] "Pat is the current player" -[1883] "They have rolled a 4" -[1884] "Pat's new location is 10" -[1885] "The category is Sports" -[1886] "Sport Question 2" -[1887] "Answer was correct!!!!" -[1888] "Sue now has 2 Gold Coins." -[1889] "Sue is the current player" -[1890] "They have rolled a 3" -[1891] "Sue's new location is 7" -[1892] "The category is Rock" -[1893] "Rock Question 0" -[1894] "Answer was correct!!!!" -[1895] "Chet now has 2 Gold Coins." -[1896] "Chet is the current player" -[1897] "They have rolled a 2" -[1898] "Chet's new location is 6" -[1899] "The category is Sports" -[1900] "Sport Question 3" -[1901] "Answer was correct!!!!" -[1902] "Pat now has 3 Gold Coins." -[1903] "Pat is the current player" -[1904] "They have rolled a 6" -[1905] "Pat's new location is 4" -[1906] "The category is Pop" -[1907] "Pop Question 2" -[1908] "Question was incorrectly answered" -[1909] "Pat was sent to the penalty box" -[1910] "Sue is the current player" -[1911] "They have rolled a 2" -[1912] "Sue's new location is 9" -[1913] "The category is Science" -[1914] "Science Question 0" -[1915] "Answer was correct!!!!" -[1916] "Chet now has 3 Gold Coins." -[1917] "Chet is the current player" -[1918] "They have rolled a 5" -[1919] "Chet's new location is 11" -[1920] "The category is Rock" -[1921] "Rock Question 1" -[1922] "Answer was correct!!!!" -[1923] "Pat now has 4 Gold Coins." -[1924] "Pat is the current player" -[1925] "They have rolled a 2" -[1926] "Pat is not getting out of the penalty box" -[1927] "Sue is the current player" -[1928] "They have rolled a 5" -[1929] "Sue's new location is 2" -[1930] "The category is Sports" -[1931] "Sport Question 4" -[1932] "Answer was correct!!!!" -[1933] "Chet now has 4 Gold Coins." -[1934] "Chet is the current player" -[1935] "They have rolled a 4" -[1936] "Chet's new location is 3" -[1937] "The category is Rock" -[1938] "Rock Question 2" -[1939] "Question was incorrectly answered" -[1940] "Chet was sent to the penalty box" -[1941] "Pat is the current player" -[1942] "They have rolled a 6" -[1943] "Pat is not getting out of the penalty box" -[1944] "Sue is the current player" -[1945] "They have rolled a 5" -[1946] "Sue's new location is 7" -[1947] "The category is Rock" -[1948] "Rock Question 3" -[1949] "Answer was correct!!!!" -[1950] "Chet now has 5 Gold Coins." -[1951] "Chet is the current player" -[1952] "They have rolled a 3" -[1953] "Chet is getting out of the penalty box" -[1954] "Chet's new location is 6" -[1955] "The category is Sports" -[1956] "Sport Question 5" -[1957] "Answer was correct!!!!" -[1958] "Pat now has 5 Gold Coins." -[1959] "Pat is the current player" -[1960] "They have rolled a 4" -[1961] "Pat is not getting out of the penalty box" -[1962] "Sue is the current player" -[1963] "They have rolled a 6" -[1964] "Sue's new location is 1" -[1965] "The category is Science" -[1966] "Science Question 1" -[1967] "Answer was correct!!!!" -[1968] "Chet now has 6 Gold Coins." diff --git a/ruby/spec/game_runer_spec.rb b/ruby/spec/game_runer_spec.rb deleted file mode 100644 index 3eb9300..0000000 --- a/ruby/spec/game_runer_spec.rb +++ /dev/null @@ -1,20 +0,0 @@ -require "spec_helper" -require "support/array_logger" -require "support/not_so_random_generator" - -require "game_runner" - -RSpec.describe GameRunner do - - let(:logger) { ArrayLogger.new } - let(:random_generator) do - expected_results = [0.77,0.92,0.57,0.29,0.24,0.85,0.24,0.48,0.89,0.18,0.59,0.78,0.97,0.89,0.55,0.79,0.07,0.16,0.38,0.75,0.33,0.63,0.35,0.64,0.19,0.73,0.58,0.91,0.42,0.48,0.96,0.26,0.31,0.08,0.4,0.87,0.86,0.67,0.02,0.68,0.03,0.49,0.96,0.9,0.05,0.2,0.68,0.77,0.04,0.38,0.34,0.2,0.11,0.35,0.6,0.78,0.47,1,0.53,0.95,0.55,0.01,0.9,0.3,0.15,0.07,0.74,0.15,0.84,0.9,0.34,0.43,0.2,0.58,0.89,0.97,0.21,0.47,0.82,0.77,0.34,0.72,0.45,0.03,0.57,0.96,0.93,0.51,0.84,0.9,0.54,0.2,0.28,0.35,0.26,0.25,0.07,0.74,0.5,0.19,0.57,0.44,1,0.11,0.3,0.6,0.94,0.44,0.8,0.39,0.19,1,0.53,0.98,0.2,0.16,0.24,0.53,0.6,0.28,0.03,0.26,0.92,0.27,0.79,0.77,0.14,0.39,0.38,0.73,0.62,0.96,0.65,0.6,0.4,0.89,0.76,0.06,0.97,0.38,0.82,0.54,0.23,0.29,1,0.28,0.46,0.99,0.28,0.01,0.31,0.27,0.41,0.29,0.14,0.93,0.83,0.43,0.48,0.6,0.84,0.16,0.35,0.36,0.48,0.26,0.17,0.36,0.56,0.34,0.1,0.88,0.49,0.51,0.77,0.42,0.62,0.87,0.72,0.92,0.91,0.81,0.1,0.01,0.54,0.45,0.87,0.01,0.22,0.85,0.78,0.75,0.72,0.36,0.16,0.58,0.44,0.99,0.68,0.23,0.98,0.13,0.75,0.76,0.13,0.77,0.32,0.87,0.63,0.45,1,0.14,0.36,0.63,0.04,0.65,0.17,0.59,0.51,0.87,0.65,0.53,0.92,0.53,0.07,0.13,0.51,0.7,0.61,0.24,0.26,0.71,0.42,0.03,0.68,0.74,0.12,0.06,0.67,0.46,0.11,0.23,0.94,0.84,0.6,0.89,0.54,0.44,0.48,0.59,0.07,0.45,0.63,1,0.36,0.73,0.86,0.68,0.13,0.26,0.65,0.16,0.81,0.7,0.24,0.99,0.9,0.56,0.48,0.2,0.71,0.97,0.12,0.21,0.86,0.13,0.82,0.62,0.16,0.72,0.46,0.77,0.65,0.16,0.98,0.34,0.62,0.52,0.45,0.82,0.86,0.83,0.41,0.4,0.35,0.18,0.88,0.38,0.6,0.49,0.92,0.68,0.77,0.17,0.61,0.62,0.94,0.1,0.57,0.12,0.7,0.46,0.18,0.8,0.07,0.05,0.61,0.19,0.76,0.21,0.67,0.15,0.05,0.17,0.99,0.68,0.96,0.87,0.69,0.43,0.29,0.8,0.64,0.94,0.1,0.19,0.17,0.57,0.78,0.76,0.69,0.27,0.82,0.55,0.1,0.85,0.72,0.85,0.73,0.3,0.01,0.61,0.88,0.32,0.92,0.75,0.17,0.27,0.25,0.98,0.23,0.94,0.86,0.64,0.14,0.83,0.06,0.71,0.37,0.39,0.51,0.96,0.19,0.31,0.08,0.65,0.94,0.84,0.62,0.27,0.27,0.14,0.11,0.71,0.59,0.17,0.65,0.36,0.12,0.58,0.17,0.38,0.9,0.02,0.03,0.98,0.63,0.06,0.44,0.07,0.73,0.26,0.95,0.09,0.42,0.78,0.19,0.23,1,0.98,0.55,0.4,0.49,0.88,0.19,0.76,0.97,0.12,0.57,0.95,0.24,0.51,0.39,0.34,0.65,0.38,0.05,0.24,0.06,0.1,0.26,0.4,0.17,0.69,0.28,0.52,0.75,0.75,0.33,0.72,0.59,0.77,0.5,0.52,0.39,0.68,0.77,0.37,0.08,0.85,0.2,0.96,0.21,0.24,0.54,0.53,0.25,0.81,0.81,0.8,0.21,0.95,0.19,0.68,0.07,0.16,0.31,0.22,0.36,0.29,0.34,0.62,0.28,0.36,0.74,0.84,0.68,0.31,0.46,0.01,0.17,0.62,0.3,0.88,0.79,0.16,0.7,0.69,0.2,0.44,0.59,0.34,0.82,0.88,0.21,0.26,0.42,0.83,0.43,0.64,0.47,0.62,0.75,0.5,0.25,0.83,0.43,0.48,0.97,0.5,0.18,0.15,0.51,0.59,0.86,0.51,0.44,0.96,0.04,0.65,0.19,0.64,0.32,0.26,0.29,0.46,0.4,0.19,0.38,0.58,0.15,0.44,0.81,0.69,0.73,0.11,0.62,0.49,0.92,0.22,0.67,0.19,0.64,0.71,0.81,0.47,0.96,0.31,0.24,0.92,0.47,0.48,0.15,0.03,0.74,0.36,0.17,0.67,0.53,0.87,0.12,0.89,0.48,0.62,0.6,0.02,0.47,0.4,0.84,0.82,0.89,0.49,0.32,0.99,0.54,0.21,0.56,0.56,0.08,0.14,0.97,0.97,0.45,0.92,0.09,0.65,0.6,0.6,0.23,0.29,0.02,0.07,0.89,0.74,0.06,0.45,0.73,0.65,0.15,0.38,0.74,0.86,0.54,0.76,0.95,0.41,0.76,0.22,0.3,0.98,0.57,0.03,0.94,0.48,0.66,0.26,0.88,0.23,0.46,0.85,0.69,0.7,0.47,0.09,0.35,0.38,0.03,0.07,0.28,0.1,0.03,0.99,0.79,0.75,0.34,0.28,0.99,0.95,0.58,0.91,0.72,0.79,0.45,0.55,0.15,0.05,0.48,0.63,0.64,0.26,0.17,0.93,0.12,0.53,0.25,0.21,0.24,0.11,0.59,0.22,0.35,0.11,0.24,0.79,0.3,0.24,0.19,0.9,0.68,0.24,0.23,0.56,0.62,0.18,0.82,0.69,0.51,0.75,0.64,1,0.6,0.11,0.78,0.28,0.35,0.34,0.52,1,0.37,0.27,0.7,0.49,0.81,0.61,0.88,0.14,0.98,0.74,1,0.67,0.17,0.45,0.34,0.25,0.33,0.6,0.82,0.3,0.38,0.87,0.43,0.71,0.84,0.86,0.55,0.87,0.17,0.96,0.08,0.29,0.04,0.27,0.72,0.35,0.94,0.03,0.18,0.73,0.69,0.55,0.36,0.94,0.4,0.82,0.04,0.68,0.22,0.29,0.39,0.34,0.83,0.99,0.47,0.74,0.43,0.61,0.46,0.73,0.8,0.81,0.76,0.87,0.7,0.11,0.88,0.34,0.81,0.6,0.95,0.64,0.14,0.34,0.55,0.78,0.56,0.72,0.39,0.38,0.11,0.81,0.66,0.43,0.4,0.73,0.07,0.38,0.96,0.06,0.68,0.73,0.68,0.81,0.54,0.63,0.78,0.9,0.91,0.53,0.2,0.77,0.18,0.61,0.68,0.27,0.61,0.97,0.08,0.15,0.93,0.14,0.98,0.21,0.84,0.95,0.02,0.29,0.74,0.84,0.41,0.14,0.72,0.08,0.83,0.32,0.27,0.95,0.45,0.12,0.8,0.21,0.82,0.02,0.89,0.86,0.44,0.09,0.74,0.69,0.52,0.01,0.51,0.47,0.18,1,0.44,0.73,0.6,0.01,0.68,0.37,0.44,0.1,0.56,0.88,0.79,0.41,0.96,0.7,0.81,0.2,0.92,0.88,0.15,0.89,0.34,0.3,0.76,0.9,0.54,0.46,0.33,0.7,0.72,0.27,0.67,0.84,0.41,0.48,0.14,0.05,0.35,0.73,0.69,0.75,0.13,0.84,0.12,0.82,0.55,0.19,0.29,0.05,0.14,0.65,0.87,0.9,0.96,0.96,0.44,0.98,0.74,0.06,0.68,0.64,0.4,0.59,0.23,0.09,0.8,0.05,0.83,0.2,0.54,0.6,0.92,0.8,0.87,0.59,0.73,0.97,0.89,0.73,0.31,0.19,0.98,0.09,0.55,0.15,0.02,0.74,0.79,0.32,0.36,0.2,0.37,0.19,0.41,0.49,0.19,0.86,0.65,0.29,0.22,0.3,0.01,0.29,0.99,0.01,0.73,0.24,0.23,0.39,0.13,0.77,0.91,0.85,0.4,0.59,0.57,0.4,0.97,0.55,0.33,0.82,0.96,0.32,0.08,0.38,0.79,0.59,0.99,0.55,0.97,0.9,0.67,0.6,0.82,0.47,0.04,0.52,0.72,0.49,0.64,0.6,0.24,0.96,0.81,0.1,0.11,0.25,0.27,0.6,0.14,0.32,0.34,0.49,0.06,0.04,0.12,0.78,0.46,0.28,0.69,0.69,0.69,0.19,0.18,0.07,0.23,0.53] - NotSoRandomGenerator.new(expected_results) - end - - it "works" do - 15.times { described_class.new(random_generator, logger).run } - verify { logger.messages } - end - -end diff --git a/ruby/spec/spec_helper.rb b/ruby/spec/spec_helper.rb deleted file mode 100644 index 19be3c9..0000000 --- a/ruby/spec/spec_helper.rb +++ /dev/null @@ -1,15 +0,0 @@ -require "approvals/rspec" - -RSpec.configure do |config| - config.expect_with :rspec do |expectations| - expectations.include_chain_clauses_in_custom_matcher_descriptions = true - end - - config.mock_with :rspec do |mocks| - mocks.verify_partial_doubles = true - end - - config.shared_context_metadata_behavior = :apply_to_host_groups - config.disable_monkey_patching! - config.warnings = true -end diff --git a/ruby/spec/support/array_logger.rb b/ruby/spec/support/array_logger.rb deleted file mode 100644 index a1acf88..0000000 --- a/ruby/spec/support/array_logger.rb +++ /dev/null @@ -1,15 +0,0 @@ -class ArrayLogger - attr_reader :messages - - def initialize - @messages = [] - end - - def debug(message) - @messages << message - end - - alias info debug - alias warn debug - alias fatal debug -end diff --git a/ruby/spec/support/not_so_random_generator.rb b/ruby/spec/support/not_so_random_generator.rb deleted file mode 100644 index 14bd0e7..0000000 --- a/ruby/spec/support/not_so_random_generator.rb +++ /dev/null @@ -1,16 +0,0 @@ -class NotSoRandomGenerator - def initialize(expected_results) - @cursor = -1 - @expected_results = expected_results - end - - def rand(upper_limit) - @cursor += 1 - - if @cursor >= @expected_results.size - raise "Not enough expected_results given" - end - - (@expected_results[@cursor] * upper_limit).ceil - end -end diff --git a/scala/.gitignore b/scala/.gitignore deleted file mode 100644 index 9f97022..0000000 --- a/scala/.gitignore +++ /dev/null @@ -1 +0,0 @@ -target/ \ No newline at end of file diff --git a/scala/build.sbt b/scala/build.sbt deleted file mode 100644 index 6777afe..0000000 --- a/scala/build.sbt +++ /dev/null @@ -1,9 +0,0 @@ -name := "BugsZero-Kata-scala" - -version := "0.1" - -scalaVersion := "2.12.7" - -libraryDependencies ++= List( - "org.scalatest" %% "scalatest" % "3.0.5" % "test" -) diff --git a/scala/project/build.properties b/scala/project/build.properties deleted file mode 100644 index c5a529e..0000000 --- a/scala/project/build.properties +++ /dev/null @@ -1 +0,0 @@ -sbt.version = 1.2.4 \ No newline at end of file diff --git a/scala/src/main/scala/com/adaptionsoft/games/trivia/runner/GameRunner.scala b/scala/src/main/scala/com/adaptionsoft/games/trivia/runner/GameRunner.scala deleted file mode 100644 index b7fed38..0000000 --- a/scala/src/main/scala/com/adaptionsoft/games/trivia/runner/GameRunner.scala +++ /dev/null @@ -1,28 +0,0 @@ -package com.adaptionsoft.games.trivia.runner - -import java.util.Random - -import com.adaptionsoft.games.uglytrivia.Game - -object GameRunner { - private var notAWinner = false - - def main(args: Array[String]): Unit = { - val rand = new Random - playGame(rand) - } - - def playGame(rand: Random): Unit = { - val aGame = new Game - aGame.add("Chet") - aGame.add("Pat") - aGame.add("Sue") - do { - aGame.roll(rand.nextInt(5) + 1) - if (rand.nextInt(9) == 7) notAWinner = aGame.wrongAnswer - else notAWinner = aGame.wasCorrectlyAnswered - } while ( { - notAWinner - }) - } -} diff --git a/scala/src/main/scala/com/adaptionsoft/games/uglytrivia/Game.scala b/scala/src/main/scala/com/adaptionsoft/games/uglytrivia/Game.scala deleted file mode 100644 index e82561f..0000000 --- a/scala/src/main/scala/com/adaptionsoft/games/uglytrivia/Game.scala +++ /dev/null @@ -1,118 +0,0 @@ -package com.adaptionsoft.games.uglytrivia - -import scala.collection.mutable - -class Game() { - val players = mutable.ListBuffer[String]() - val places = new Array[Int](6) - val purses = new Array[Int](6) - val inPenaltyBox = new Array[Boolean](6) - val popQuestions = mutable.ListBuffer[String]() - val scienceQuestions = mutable.ListBuffer[String]() - val sportsQuestions = mutable.ListBuffer[String]() - val rockQuestions = mutable.ListBuffer[String]() - var currentPlayer = 0 - var isGettingOutOfPenaltyBox: Boolean = false - - (0 until 50).foreach { i => - popQuestions.append("Pop Question " + i) - scienceQuestions.append("Science Question " + i) - sportsQuestions.append("Sports Question " + i) - rockQuestions.append(createRockQuestion(i)) - } - - def createRockQuestion(index: Int): String = "Rock Question " + index - - def isPlayable: Boolean = howManyPlayers >= 2 - - def add(playerName: String): Boolean = { - players.append(playerName) - places(howManyPlayers) = 0 - purses(howManyPlayers) = 0 - inPenaltyBox(howManyPlayers) = false - println(playerName + " was added") - println("They are player number " + players.size) - true - } - - def howManyPlayers: Int = players.size - - def roll(roll: Int): Unit = { - println(players(currentPlayer) + " is the current player") - println("They have rolled a " + roll) - if (inPenaltyBox(currentPlayer)) if (roll % 2 != 0) { - isGettingOutOfPenaltyBox = true - println(players(currentPlayer) + " is getting out of the penalty box") - movePlayerAndAskQuestion(roll) - } else { - println(players(currentPlayer) + " is not getting out of the penalty box") - isGettingOutOfPenaltyBox = false - } else - movePlayerAndAskQuestion(roll) - } - - private def movePlayerAndAskQuestion(roll: Int): Unit = { - places(currentPlayer) = places(currentPlayer) + roll - if (places(currentPlayer) > 11) places(currentPlayer) = places(currentPlayer) - 12 - println(players(currentPlayer) + "'s new location is " + places(currentPlayer)) - println("The category is " + currentCategory) - askQuestion() - } - - private def askQuestion(): Unit = { - if (currentCategory eq "Pop") println(popQuestions.remove(0)) - if (currentCategory eq "Science") println(scienceQuestions.remove(0)) - if (currentCategory eq "Sports") println(sportsQuestions.remove(0)) - if (currentCategory eq "Rock") println(rockQuestions.remove(0)) - } - - private def currentCategory: String = { - if (places(currentPlayer) == 0) return "Pop" - if (places(currentPlayer) == 4) return "Pop" - if (places(currentPlayer) == 8) return "Pop" - if (places(currentPlayer) == 1) return "Science" - if (places(currentPlayer) == 5) return "Science" - if (places(currentPlayer) == 9) return "Science" - if (places(currentPlayer) == 2) return "Sports" - if (places(currentPlayer) == 6) return "Sports" - if (places(currentPlayer) == 10) return "Sports" - "Rock" - } - - def wasCorrectlyAnswered: Boolean = - if (inPenaltyBox(currentPlayer)) { - if (isGettingOutOfPenaltyBox) { - println("Answer was correct!!!!") - currentPlayer += 1 - if (currentPlayer == players.size) currentPlayer = 0 - purses(currentPlayer) += 1 - println(players(currentPlayer) + " now has " + purses(currentPlayer) + " Gold Coins.") - val winner = didPlayerWin - winner - } else { - currentPlayer += 1 - if (currentPlayer == players.size) currentPlayer = 0 - true - } - } else { - println("Answer was corrent!!!!") - purses(currentPlayer) += 1 - println(players(currentPlayer) + " now has " + purses(currentPlayer) + " Gold Coins.") - val winner = didPlayerWin - currentPlayer += 1 - if (currentPlayer == players.size) currentPlayer = 0 - winner - } - - def wrongAnswer: Boolean = { - println("Question was incorrectly answered") - println(players(currentPlayer) + " was sent to the penalty box") - inPenaltyBox(currentPlayer) = true - currentPlayer += 1 - if (currentPlayer == players.size) currentPlayer = 0 - true - } - - - private def didPlayerWin: Boolean = !(purses(currentPlayer) == 6) -} diff --git a/scala/src/test/scala/com/adaptionsoft/games/trivia/GameSpec.scala b/scala/src/test/scala/com/adaptionsoft/games/trivia/GameSpec.scala deleted file mode 100644 index 8533adf..0000000 --- a/scala/src/test/scala/com/adaptionsoft/games/trivia/GameSpec.scala +++ /dev/null @@ -1,26 +0,0 @@ -package com.adaptionsoft.games.trivia - -import java.io.{ByteArrayOutputStream, PrintStream} -import java.util.Random - -import com.adaptionsoft.games.trivia.runner.GameRunner -import org.scalatest.{FunSpec, Matchers} - -import scala.io.Source - -class GameSpec extends FunSpec with Matchers { - describe("Game") { - it("should should output expected values") { - val randomizer = new Random(123455) - val resultStream = new ByteArrayOutputStream - - Console.withOut(new PrintStream(resultStream)) { - (1 until 15).foreach(_ => GameRunner.playGame(randomizer)) - } - - val expected = Source.fromFile("../java/src/test/java/com/adaptionsoft/games/trivia/GameTest.itsLockedDown.approved.txt").mkString - val result = resultStream.toString - result shouldBe expected - } - } -} diff --git a/solutions.md b/solutions.md deleted file mode 100644 index b60caef..0000000 --- a/solutions.md +++ /dev/null @@ -1,9 +0,0 @@ -You can look at the proposed solutions. They come in the form of branches prefixed by *solutions_*. They come in various languages and are only addressing a single problem at once. Why? Because SRP :) - -* [Make it easier to introduce or change categories](https://github.com/martinsson/BugsZero-Kata/pull/12/files). i.e. more cohesion where there is coupling -* Enforce 2-6 players - * [Strictest version](https://github.com/martinsson/BugsZero-Kata/pull/13) - - -There are still some solutions that aren't migrated yet. They're in [another repository](https://github.com/martinsson/trivia), -look for branches prefixed with #BugsZero. For instance [enforcing 2-6 players](https://github.com/martinsson/trivia/tree/bugsZeroEnforcePlayersInConstruction) using the type system diff --git a/start b/start deleted file mode 100755 index deb383c..0000000 --- a/start +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash -# Work in progress - -function askLanguage() { - while true; do - read -p "Language (js, java) ? " response - case "$response" in - "js") - selectedLanguage=javascript - referenceBranch="origin/js/v1" - break - ;; - "java") - selectedLanguage=$response - referenceBranch="origin/java/v1" - break - ;; - esac - done -} - -function displayWarningIfNotMaster(){ - currentBranchName="$(git name-rev --name-only HEAD)" - if [[ $currentBranchName != "master" ]] - then - read -p "Are you sure you want to reinit everything? All your work will be lost! (y/N) : " response - case $response in - [Yy]* ) ;; - * ) exit;; - esac - fi -} - -displayWarningIfNotMaster -askLanguage diff --git a/swift/bugzero-kata/bugzero-kata.xcodeproj/project.pbxproj b/swift/bugzero-kata/bugzero-kata.xcodeproj/project.pbxproj deleted file mode 100644 index 57ed4f0..0000000 --- a/swift/bugzero-kata/bugzero-kata.xcodeproj/project.pbxproj +++ /dev/null @@ -1,306 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 50; - objects = { - -/* Begin PBXBuildFile section */ - E35A89B32089B036009F8C7E /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = E35A89B22089B036009F8C7E /* main.swift */; }; - E35A89BA2089B0F1009F8C7E /* Game.swift in Sources */ = {isa = PBXBuildFile; fileRef = E35A89B92089B0F1009F8C7E /* Game.swift */; }; - E35A89C02089B8BC009F8C7E /* GameRunner.swift in Sources */ = {isa = PBXBuildFile; fileRef = E35A89BF2089B8BC009F8C7E /* GameRunner.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXCopyFilesBuildPhase section */ - E35A89AD2089B036009F8C7E /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = /usr/share/man/man1/; - dstSubfolderSpec = 0; - files = ( - ); - runOnlyForDeploymentPostprocessing = 1; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - E35A89AF2089B036009F8C7E /* bugzero-kata */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "bugzero-kata"; sourceTree = BUILT_PRODUCTS_DIR; }; - E35A89B22089B036009F8C7E /* main.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = ""; }; - E35A89B92089B0F1009F8C7E /* Game.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Game.swift; sourceTree = ""; }; - E35A89BF2089B8BC009F8C7E /* GameRunner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GameRunner.swift; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - E35A89AC2089B036009F8C7E /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - E35A89A62089B036009F8C7E = { - isa = PBXGroup; - children = ( - E35A89B12089B036009F8C7E /* bugzero-kata */, - E35A89B02089B036009F8C7E /* Products */, - ); - sourceTree = ""; - }; - E35A89B02089B036009F8C7E /* Products */ = { - isa = PBXGroup; - children = ( - E35A89AF2089B036009F8C7E /* bugzero-kata */, - ); - name = Products; - sourceTree = ""; - }; - E35A89B12089B036009F8C7E /* bugzero-kata */ = { - isa = PBXGroup; - children = ( - E35A89B22089B036009F8C7E /* main.swift */, - E35A89B92089B0F1009F8C7E /* Game.swift */, - E35A89BF2089B8BC009F8C7E /* GameRunner.swift */, - ); - path = "bugzero-kata"; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - E35A89AE2089B036009F8C7E /* bugzero-kata */ = { - isa = PBXNativeTarget; - buildConfigurationList = E35A89B62089B036009F8C7E /* Build configuration list for PBXNativeTarget "bugzero-kata" */; - buildPhases = ( - E35A89AB2089B036009F8C7E /* Sources */, - E35A89AC2089B036009F8C7E /* Frameworks */, - E35A89AD2089B036009F8C7E /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "bugzero-kata"; - productName = "bugzero-kata"; - productReference = E35A89AF2089B036009F8C7E /* bugzero-kata */; - productType = "com.apple.product-type.tool"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - E35A89A72089B036009F8C7E /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 0930; - LastUpgradeCheck = 0930; - ORGANIZATIONNAME = "Frédéric Ruaudel"; - TargetAttributes = { - E35A89AE2089B036009F8C7E = { - CreatedOnToolsVersion = 9.3; - LastSwiftMigration = 0930; - }; - }; - }; - buildConfigurationList = E35A89AA2089B036009F8C7E /* Build configuration list for PBXProject "bugzero-kata" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - ); - mainGroup = E35A89A62089B036009F8C7E; - productRefGroup = E35A89B02089B036009F8C7E /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - E35A89AE2089B036009F8C7E /* bugzero-kata */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXSourcesBuildPhase section */ - E35A89AB2089B036009F8C7E /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - E35A89B32089B036009F8C7E /* main.swift in Sources */, - E35A89BA2089B0F1009F8C7E /* Game.swift in Sources */, - E35A89C02089B8BC009F8C7E /* GameRunner.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - E35A89B42089B036009F8C7E /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "-"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.13; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - }; - name = Debug; - }; - E35A89B52089B036009F8C7E /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "-"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.13; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = macosx; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - }; - name = Release; - }; - E35A89B72089B036009F8C7E /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_STYLE = Automatic; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - "@loader_path/../Frameworks", - ); - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; - }; - name = Debug; - }; - E35A89B82089B036009F8C7E /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_STYLE = Automatic; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - "@loader_path/../Frameworks", - ); - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 4.0; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - E35A89AA2089B036009F8C7E /* Build configuration list for PBXProject "bugzero-kata" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - E35A89B42089B036009F8C7E /* Debug */, - E35A89B52089B036009F8C7E /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - E35A89B62089B036009F8C7E /* Build configuration list for PBXNativeTarget "bugzero-kata" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - E35A89B72089B036009F8C7E /* Debug */, - E35A89B82089B036009F8C7E /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = E35A89A72089B036009F8C7E /* Project object */; -} diff --git a/swift/bugzero-kata/bugzero-kata.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/swift/bugzero-kata/bugzero-kata.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index a990a93..0000000 --- a/swift/bugzero-kata/bugzero-kata.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/swift/bugzero-kata/bugzero-kata.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/swift/bugzero-kata/bugzero-kata.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d9810..0000000 --- a/swift/bugzero-kata/bugzero-kata.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/swift/bugzero-kata/bugzero-kata/Game.swift b/swift/bugzero-kata/bugzero-kata/Game.swift deleted file mode 100644 index 2df9560..0000000 --- a/swift/bugzero-kata/bugzero-kata/Game.swift +++ /dev/null @@ -1,154 +0,0 @@ -// -// Game.swift -// bugzero-kata -// -// Created by Frédéric Ruaudel on 20/04/2018. -// - -import Foundation - -class Game { - var players = [String]() - var places = [Int]() - var purses = [Int]() - var inPenaltyBox = [Bool]() - - var popQuestions = [String]() - var scienceQuestions = [String]() - var sportsQuestions = [String]() - var rockQuestions = [String]() - - var currentPlayer: Int = 0 - var isGettingOutOfPenaltyBox: Bool = false - - init() { - for i in 0..<50 { - popQuestions.append("Pop question \(i)") - scienceQuestions.append("Science question \(i)") - sportsQuestions.append("Sports question \(i)") - rockQuestions.append(createRockQuestions(index: i)) - } - } - - func createRockQuestions(index: Int) -> String { - return "Rock question \(index)" - } - - func isPlayable() -> Bool { - return (howManyPlayers() >= 2) - } - - func add(_ playerName: String) -> Bool { - players.append(playerName) - places.append(0) - purses.append(0) - inPenaltyBox.append(false) - - print("\(playerName) was added") - print("They are player number \(players.count)") - - return true - } - - func howManyPlayers() -> Int { - return players.count - } - - func roll(_ roll: Int) { - print("\(players[currentPlayer]) is the current player") - print("They have rolled a \(roll)") - - if inPenaltyBox[currentPlayer] { - if roll % 2 != 0 { - isGettingOutOfPenaltyBox = true - print("\(players[currentPlayer]) is getting out of the penalty box") - movePlayerAndAskQuestion(roll) - } else { - print("\(players[currentPlayer]) is not getting out of the penalty box") - isGettingOutOfPenaltyBox = false - } - } else { - movePlayerAndAskQuestion(roll) - } - } - - private func movePlayerAndAskQuestion(_ roll: Int) { - places[currentPlayer] = places[currentPlayer] + roll - if places[currentPlayer] > 11 { places[currentPlayer] = places[currentPlayer] - 12 } - - print("\(players[currentPlayer])'s new location is \(places[currentPlayer])") - print("The category is \(currentCategory())") - - askQuestion() - } - - private func askQuestion() { - if (currentCategory() == "Pop") { - print(popQuestions.remove(at: 0)) - } - if (currentCategory() == "Science") { - print(scienceQuestions.remove(at: 0)) - } - if (currentCategory() == "Sports") { - print(sportsQuestions.remove(at: 0)) - } - if (currentCategory() == "Rock") { - print(rockQuestions.remove(at: 0)) - } - } - - private func currentCategory() -> String { - if places[currentPlayer] == 0 { return "Pop" }; - if places[currentPlayer] == 4 { return "Pop" }; - if places[currentPlayer] == 8 { return "Pop" }; - if places[currentPlayer] == 1 { return "Science" }; - if places[currentPlayer] == 5 { return "Science" }; - if places[currentPlayer] == 9 { return "Science" }; - if places[currentPlayer] == 2 { return "Sports" }; - if places[currentPlayer] == 6 { return "Sports" }; - if places[currentPlayer] == 10 { return "Sports" }; - return "Rock"; - } - - func wasCorrectlyAnswered() -> Bool { - if inPenaltyBox[currentPlayer] { - if isGettingOutOfPenaltyBox { - print("Answer was correct!!!!") - currentPlayer += 1 - if (currentPlayer == players.count) { currentPlayer = 0 } - purses[currentPlayer] += 1 - print("\(players[currentPlayer]) now has \(purses[currentPlayer]) Gold Coins.") - let winner = didPlayerWin() - - return winner - } else { - currentPlayer += 1 - if (currentPlayer == players.count) { currentPlayer = 0 } - return true - } - } else { - print("Answer was correct!!!!") - purses[currentPlayer] += 1 - print("\(players[currentPlayer]) now has \(purses[currentPlayer]) Gold Coins.") - let winner = didPlayerWin() - currentPlayer += 1 - if (currentPlayer == players.count) { currentPlayer = 0 } - - return winner - } - } - - func wrongAnswer() -> Bool { - print("Question was incorrectly answered") - print("\(players[currentPlayer]) was sent to the penalty box") - inPenaltyBox[currentPlayer] = true - - currentPlayer += 1 - if (currentPlayer == players.count) { currentPlayer = 0 } - return true - } - - private func didPlayerWin() -> Bool { - return !(purses[currentPlayer] == 6) - } -} diff --git a/swift/bugzero-kata/bugzero-kata/GameRunner.swift b/swift/bugzero-kata/bugzero-kata/GameRunner.swift deleted file mode 100644 index 4275e1e..0000000 --- a/swift/bugzero-kata/bugzero-kata/GameRunner.swift +++ /dev/null @@ -1,30 +0,0 @@ -// -// GameRunner.swift -// bugzero-kata -// -// Created by Frédéric Ruaudel on 20/04/2018. -// Copyright © 2018 Frédéric Ruaudel. All rights reserved. -// - -import Foundation - -class GameRunner { - var notAWinner: Bool = false - var aGame: Game - - init() { - aGame = Game() - aGame.add("Chet") - aGame.add("Pat") - aGame.add("Sue") - - repeat { - aGame.roll(Int(arc4random_uniform(6))) - if (arc4random_uniform(9) == 7) { - notAWinner = aGame.wrongAnswer() - } else { - notAWinner = aGame.wasCorrectlyAnswered() - } - } while (notAWinner) - } -} diff --git a/swift/bugzero-kata/bugzero-kata/main.swift b/swift/bugzero-kata/bugzero-kata/main.swift deleted file mode 100644 index 602b331..0000000 --- a/swift/bugzero-kata/bugzero-kata/main.swift +++ /dev/null @@ -1,13 +0,0 @@ -// -// main.swift -// bugzero-kata -// -// Created by Frédéric Ruaudel on 20/04/2018. -// Copyright © 2018 Frédéric Ruaudel. All rights reserved. -// - -import Foundation - -print("Hello, World!") - -GameRunner()