Files

134 lines
2.9 KiB
C#

namespace AdventOfCode2018.Tests;
public class Day09_Tests
{
#region MarbleGame_PlayGame
[Fact]
public void MarbleGame_PlayGame__Test1()
{
Day09.MarbleGame marbleGame = new();
marbleGame.PlayGame(9, 25);
long highScore = marbleGame.GetHighScore();
Assert.Equal(32, highScore);
}
[Fact]
public void MarbleGame_PlayGame__Test2()
{
Day09.MarbleGame marbleGame = new();
marbleGame.PlayGame(10, 1618);
long highScore = marbleGame.GetHighScore();
Assert.Equal(8317, highScore);
}
[Fact]
public void MarbleGame_PlayGame__Test3()
{
Day09.MarbleGame marbleGame = new();
marbleGame.PlayGame(13, 7999);
long highScore = marbleGame.GetHighScore();
Assert.Equal(146373, highScore);
}
[Fact]
public void MarbleGame_PlayGame__Test4()
{
Day09.MarbleGame marbleGame = new();
marbleGame.PlayGame(17, 1104);
long highScore = marbleGame.GetHighScore();
Assert.Equal(2764, highScore);
}
[Fact]
public void MarbleGame_PlayGame__Test5()
{
Day09.MarbleGame marbleGame = new();
marbleGame.PlayGame(21, 6111);
long highScore = marbleGame.GetHighScore();
Assert.Equal(54718, highScore);
}
[Fact]
public void MarbleGame_PlayGame__Test6()
{
Day09.MarbleGame marbleGame = new();
marbleGame.PlayGame(30, 5807);
long highScore = marbleGame.GetHighScore();
Assert.Equal(37305, highScore);
}
#endregion MarbleGame_PlayGame
[Fact]
public void ResolvePart1__Test1()
{
Day09 day = new();
string result = day.ResolvePart1(["9 players; last marble is worth 25 points"]);
Assert.Equal("32", result);
}
[Fact]
public void ResolvePart1__Test2()
{
Day09 day = new();
string result = day.ResolvePart1(["10 players; last marble is worth 1618 points"]);
Assert.Equal("8317", result);
}
[Fact]
public void ResolvePart1__Test3()
{
Day09 day = new();
string result = day.ResolvePart1(["13 players; last marble is worth 7999 points"]);
Assert.Equal("146373", result);
}
[Fact]
public void ResolvePart1__Test4()
{
Day09 day = new();
string result = day.ResolvePart1(["17 players; last marble is worth 1104 points"]);
Assert.Equal("2764", result);
}
[Fact]
public void ResolvePart1__Test5()
{
Day09 day = new();
string result = day.ResolvePart1(["21 players; last marble is worth 6111 points"]);
Assert.Equal("54718", result);
}
[Fact]
public void ResolvePart1__Test6()
{
Day09 day = new();
string result = day.ResolvePart1(["30 players; last marble is worth 5807 points"]);
Assert.Equal("37305", result);
}
}