Migrate tests to XUnit
This commit is contained in:
@@ -7,10 +7,16 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.7.1" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="2.1.1" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="2.1.1" />
|
||||
<PackageReference Include="coverlet.collector" Version="1.3.0" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.3.2"/>
|
||||
<PackageReference Include="xunit" Version="2.4.2"/>
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="coverlet.collector" Version="3.1.2">
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class ChronoLicenceNode_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void BuildFromIntStream__Test()
|
||||
{
|
||||
Day08 day = new Day08();
|
||||
@@ -13,25 +12,25 @@ namespace AdventOfCode2018.Tests
|
||||
IntStream values = new IntStream("2 3 0 3 10 11 12 1 1 0 1 99 2 1 1 2");
|
||||
ChronoLicenceNode result = ChronoLicenceNode.BuildFromIntStream(values);
|
||||
|
||||
Assert.AreEqual(2, result.Childs.Count);
|
||||
Assert.AreEqual(3, result.Metadata.Count);
|
||||
Assert.AreEqual(1, result.Metadata[0]);
|
||||
Assert.AreEqual(1, result.Metadata[1]);
|
||||
Assert.AreEqual(2, result.Metadata[2]);
|
||||
Assert.Equal(2, result.Childs.Count);
|
||||
Assert.Equal(3, result.Metadata.Count);
|
||||
Assert.Equal(1, result.Metadata[0]);
|
||||
Assert.Equal(1, result.Metadata[1]);
|
||||
Assert.Equal(2, result.Metadata[2]);
|
||||
|
||||
Assert.AreEqual(0, result.Childs[0].Childs.Count);
|
||||
Assert.AreEqual(3, result.Childs[0].Metadata.Count);
|
||||
Assert.AreEqual(10, result.Childs[0].Metadata[0]);
|
||||
Assert.AreEqual(11, result.Childs[0].Metadata[1]);
|
||||
Assert.AreEqual(12, result.Childs[0].Metadata[2]);
|
||||
Assert.Equal(0, result.Childs[0].Childs.Count);
|
||||
Assert.Equal(3, result.Childs[0].Metadata.Count);
|
||||
Assert.Equal(10, result.Childs[0].Metadata[0]);
|
||||
Assert.Equal(11, result.Childs[0].Metadata[1]);
|
||||
Assert.Equal(12, result.Childs[0].Metadata[2]);
|
||||
|
||||
Assert.AreEqual(1, result.Childs[1].Childs.Count);
|
||||
Assert.AreEqual(1, result.Childs[1].Metadata.Count);
|
||||
Assert.AreEqual(2, result.Childs[1].Metadata[0]);
|
||||
Assert.Equal(1, result.Childs[1].Childs.Count);
|
||||
Assert.Equal(1, result.Childs[1].Metadata.Count);
|
||||
Assert.Equal(2, result.Childs[1].Metadata[0]);
|
||||
|
||||
Assert.AreEqual(0, result.Childs[1].Childs[0].Childs.Count);
|
||||
Assert.AreEqual(1, result.Childs[1].Childs[0].Metadata.Count);
|
||||
Assert.AreEqual(99, result.Childs[1].Childs[0].Metadata[0]);
|
||||
Assert.Equal(0, result.Childs[1].Childs[0].Childs.Count);
|
||||
Assert.Equal(1, result.Childs[1].Childs[0].Metadata.Count);
|
||||
Assert.Equal(99, result.Childs[1].Childs[0].Metadata[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,44 +1,43 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class ChronoPoint_Tests
|
||||
{
|
||||
#region FromString
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__Test1()
|
||||
{
|
||||
ChronoPoint point = ChronoPoint.FromString("1, 1");
|
||||
|
||||
Assert.AreEqual(1, point.X);
|
||||
Assert.AreEqual(1, point.Y);
|
||||
Assert.Equal(1, point.X);
|
||||
Assert.Equal(1, point.Y);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__Test2()
|
||||
{
|
||||
ChronoPoint point = ChronoPoint.FromString("1, 6");
|
||||
|
||||
Assert.AreEqual(1, point.X);
|
||||
Assert.AreEqual(6, point.Y);
|
||||
Assert.Equal(1, point.X);
|
||||
Assert.Equal(6, point.Y);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__Test3()
|
||||
{
|
||||
ChronoPoint point = ChronoPoint.FromString("8, 9");
|
||||
|
||||
Assert.AreEqual(8, point.X);
|
||||
Assert.AreEqual(9, point.Y);
|
||||
Assert.Equal(8, point.X);
|
||||
Assert.Equal(9, point.Y);
|
||||
}
|
||||
|
||||
#endregion FromString
|
||||
|
||||
#region ManhattanDistance
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ManhattanDistance__Test1()
|
||||
{
|
||||
ChronoPoint p0 = ChronoPoint.FromString("8, 9");
|
||||
@@ -46,10 +45,10 @@ namespace AdventOfCode2018.Tests
|
||||
|
||||
int distance = ChronoPoint.ManhattanDistance(p0, p1);
|
||||
|
||||
Assert.AreEqual(10, distance);
|
||||
Assert.Equal(10, distance);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ManhattanDistance__Test2()
|
||||
{
|
||||
ChronoPoint p0 = ChronoPoint.FromString("1, 1");
|
||||
@@ -57,7 +56,7 @@ namespace AdventOfCode2018.Tests
|
||||
|
||||
int distance = ChronoPoint.ManhattanDistance(p0, p1);
|
||||
|
||||
Assert.AreEqual(5, distance);
|
||||
Assert.Equal(5, distance);
|
||||
}
|
||||
|
||||
#endregion ManhattanDistance
|
||||
|
||||
@@ -1,65 +1,64 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Claim_Tests
|
||||
{
|
||||
#region FromString
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__Test1()
|
||||
{
|
||||
Day03.Claim claim = Day03.Claim.FromString("#123 @ 3,2: 5x4");
|
||||
|
||||
Assert.AreEqual(123, claim.ID);
|
||||
Assert.AreEqual(3, claim.Left);
|
||||
Assert.AreEqual(2, claim.Top);
|
||||
Assert.AreEqual(5, claim.Width);
|
||||
Assert.AreEqual(4, claim.Height);
|
||||
Assert.Equal(123, claim.ID);
|
||||
Assert.Equal(3, claim.Left);
|
||||
Assert.Equal(2, claim.Top);
|
||||
Assert.Equal(5, claim.Width);
|
||||
Assert.Equal(4, claim.Height);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__Test2()
|
||||
{
|
||||
Day03.Claim claim = Day03.Claim.FromString("#1 @ 1,3: 4x4");
|
||||
|
||||
Assert.AreEqual(1, claim.ID);
|
||||
Assert.AreEqual(1, claim.Left);
|
||||
Assert.AreEqual(3, claim.Top);
|
||||
Assert.AreEqual(4, claim.Width);
|
||||
Assert.AreEqual(4, claim.Height);
|
||||
Assert.Equal(1, claim.ID);
|
||||
Assert.Equal(1, claim.Left);
|
||||
Assert.Equal(3, claim.Top);
|
||||
Assert.Equal(4, claim.Width);
|
||||
Assert.Equal(4, claim.Height);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__Test3()
|
||||
{
|
||||
Day03.Claim claim = Day03.Claim.FromString("#2 @ 3,1: 4x4");
|
||||
|
||||
Assert.AreEqual(2, claim.ID);
|
||||
Assert.AreEqual(3, claim.Left);
|
||||
Assert.AreEqual(1, claim.Top);
|
||||
Assert.AreEqual(4, claim.Width);
|
||||
Assert.AreEqual(4, claim.Height);
|
||||
Assert.Equal(2, claim.ID);
|
||||
Assert.Equal(3, claim.Left);
|
||||
Assert.Equal(1, claim.Top);
|
||||
Assert.Equal(4, claim.Width);
|
||||
Assert.Equal(4, claim.Height);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__Test4()
|
||||
{
|
||||
Day03.Claim claim = Day03.Claim.FromString("#3 @ 5,5: 2x2");
|
||||
|
||||
Assert.AreEqual(3, claim.ID);
|
||||
Assert.AreEqual(5, claim.Left);
|
||||
Assert.AreEqual(5, claim.Top);
|
||||
Assert.AreEqual(2, claim.Width);
|
||||
Assert.AreEqual(2, claim.Height);
|
||||
Assert.Equal(3, claim.ID);
|
||||
Assert.Equal(5, claim.Left);
|
||||
Assert.Equal(5, claim.Top);
|
||||
Assert.Equal(2, claim.Width);
|
||||
Assert.Equal(2, claim.Height);
|
||||
}
|
||||
|
||||
#endregion FromString
|
||||
|
||||
#region Overlaps
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void Overlaps__Test1()
|
||||
{
|
||||
Day03.Claim claim1 = Day03.Claim.FromString("#1 @ 1,3: 4x4");
|
||||
@@ -67,10 +66,10 @@ namespace AdventOfCode2018.Tests
|
||||
|
||||
bool result = Day03.Claim.Overlaps(claim1, claim2);
|
||||
|
||||
Assert.AreEqual(false, result);
|
||||
Assert.Equal(false, result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void Overlaps__Test2()
|
||||
{
|
||||
Day03.Claim claim1 = Day03.Claim.FromString("#2 @ 3,1: 4x4");
|
||||
@@ -78,10 +77,10 @@ namespace AdventOfCode2018.Tests
|
||||
|
||||
bool result = Day03.Claim.Overlaps(claim1, claim2);
|
||||
|
||||
Assert.AreEqual(false, result);
|
||||
Assert.Equal(false, result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void Overlaps__Test3()
|
||||
{
|
||||
Day03.Claim claim1 = Day03.Claim.FromString("#1 @ 1,3: 4x4");
|
||||
@@ -89,7 +88,7 @@ namespace AdventOfCode2018.Tests
|
||||
|
||||
bool result = Day03.Claim.Overlaps(claim1, claim2);
|
||||
|
||||
Assert.AreEqual(true, result);
|
||||
Assert.Equal(true, result);
|
||||
}
|
||||
|
||||
#endregion Overlaps
|
||||
|
||||
@@ -1,104 +1,103 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day01_Tests
|
||||
{
|
||||
#region ResolvePart1
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test1()
|
||||
{
|
||||
Day01 day01 = new Day01();
|
||||
|
||||
string result = day01.ResolvePart1(new string[] { "+1", "-2", "+3", "+1", });
|
||||
|
||||
Assert.AreEqual("3", result);
|
||||
Assert.Equal("3", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test2()
|
||||
{
|
||||
Day01 day01 = new Day01();
|
||||
|
||||
string result = day01.ResolvePart1(new string[] { "+1", "+1", "+1", });
|
||||
|
||||
Assert.AreEqual("3", result);
|
||||
Assert.Equal("3", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test3()
|
||||
{
|
||||
Day01 day01 = new Day01();
|
||||
|
||||
string result = day01.ResolvePart1(new string[] { "+1", "+1", "-2", });
|
||||
|
||||
Assert.AreEqual("0", result);
|
||||
Assert.Equal("0", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test4()
|
||||
{
|
||||
Day01 day01 = new Day01();
|
||||
|
||||
string result = day01.ResolvePart1(new string[] { "-1", "-2", "-3", });
|
||||
|
||||
Assert.AreEqual("-6", result);
|
||||
Assert.Equal("-6", result);
|
||||
}
|
||||
|
||||
#endregion ResolveDay01
|
||||
|
||||
#region ResolvePart2
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test1()
|
||||
{
|
||||
Day01 day01 = new Day01();
|
||||
|
||||
string result = day01.ResolvePart2(new string[] { "+1", "-2", "+3", "+1", });
|
||||
|
||||
Assert.AreEqual("2", result);
|
||||
Assert.Equal("2", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test2()
|
||||
{
|
||||
Day01 day01 = new Day01();
|
||||
|
||||
string result = day01.ResolvePart2(new string[] { "+1", "-1", });
|
||||
|
||||
Assert.AreEqual("0", result);
|
||||
Assert.Equal("0", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test3()
|
||||
{
|
||||
Day01 day01 = new Day01();
|
||||
|
||||
string result = day01.ResolvePart2(new string[] { "+3", "+3", "+4", "-2", "-4", });
|
||||
|
||||
Assert.AreEqual("10", result);
|
||||
Assert.Equal("10", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test4()
|
||||
{
|
||||
Day01 day01 = new Day01();
|
||||
|
||||
string result = day01.ResolvePart2(new string[] { "-6", "+3", "+8", "+5", "-6", });
|
||||
|
||||
Assert.AreEqual("5", result);
|
||||
Assert.Equal("5", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test5()
|
||||
{
|
||||
Day01 day01 = new Day01();
|
||||
|
||||
string result = day01.ResolvePart2(new string[] { "+7", "+7", "-2", "-7", "-4", });
|
||||
|
||||
Assert.AreEqual("14", result);
|
||||
Assert.Equal("14", result);
|
||||
}
|
||||
|
||||
#endregion ResolvePart2
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day02_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test1()
|
||||
{
|
||||
Day02 day02 = new Day02();
|
||||
@@ -20,10 +19,10 @@ namespace AdventOfCode2018.Tests
|
||||
"ababab",
|
||||
});
|
||||
|
||||
Assert.AreEqual("12", result);
|
||||
Assert.Equal("12", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test()
|
||||
{
|
||||
Day02 day02 = new Day02();
|
||||
@@ -38,7 +37,7 @@ namespace AdventOfCode2018.Tests
|
||||
"wvxyz",
|
||||
});
|
||||
|
||||
Assert.AreEqual("fgij", result);
|
||||
Assert.Equal("fgij", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,10 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day03_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test()
|
||||
{
|
||||
Day03 day03 = new Day03();
|
||||
@@ -16,10 +15,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#3 @ 5,5: 2x2",
|
||||
});
|
||||
|
||||
Assert.AreEqual("4", result);
|
||||
Assert.Equal("4", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test()
|
||||
{
|
||||
Day03 day03 = new Day03();
|
||||
@@ -30,7 +29,7 @@ namespace AdventOfCode2018.Tests
|
||||
"#3 @ 5,5: 2x2",
|
||||
});
|
||||
|
||||
Assert.AreEqual("3", result);
|
||||
Assert.Equal("3", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,10 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day04_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__BaseStatement()
|
||||
{
|
||||
Day04 day04 = new Day04();
|
||||
@@ -30,10 +29,10 @@ namespace AdventOfCode2018.Tests
|
||||
"[1518-11-05 00:55] wakes up",
|
||||
});
|
||||
|
||||
Assert.AreEqual("240", result);
|
||||
Assert.Equal("240", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__BaseStatementUnsorted()
|
||||
{
|
||||
Day04 day04 = new Day04();
|
||||
@@ -58,11 +57,11 @@ namespace AdventOfCode2018.Tests
|
||||
"[1518-11-05 00:55] wakes up",
|
||||
});
|
||||
|
||||
Assert.AreEqual("240", result);
|
||||
Assert.Equal("240", result);
|
||||
}
|
||||
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__BaseStatement()
|
||||
{
|
||||
Day04 day04 = new Day04();
|
||||
@@ -87,10 +86,10 @@ namespace AdventOfCode2018.Tests
|
||||
"[1518-11-05 00:55] wakes up",
|
||||
});
|
||||
|
||||
Assert.AreEqual("4455", result);
|
||||
Assert.Equal("4455", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__BaseStatementUnsorted()
|
||||
{
|
||||
Day04 day04 = new Day04();
|
||||
@@ -115,7 +114,7 @@ namespace AdventOfCode2018.Tests
|
||||
"[1518-11-05 00:55] wakes up",
|
||||
});
|
||||
|
||||
Assert.AreEqual("4455", result);
|
||||
Assert.Equal("4455", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,198 +1,197 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day05_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.ResolvePart1(new string[] { "dabAcCaCBAcCcaDA" });
|
||||
|
||||
Assert.AreEqual("10", result);
|
||||
Assert.Equal("10", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.ResolvePart2(new string[] { "dabAcCaCBAcCcaDA" });
|
||||
|
||||
Assert.AreEqual("4", result);
|
||||
Assert.Equal("4", result);
|
||||
}
|
||||
|
||||
#region ReducePolymer
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ReducePolymer__Remove_cC()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.ReducePolymer("dabAcCaCBA");
|
||||
|
||||
Assert.AreEqual("dabAaCBA", result);
|
||||
Assert.Equal("dabAaCBA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ReducePolymer__Remove_cC_AtEnd()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.ReducePolymer("dabAcC");
|
||||
|
||||
Assert.AreEqual("dabA", result);
|
||||
Assert.Equal("dabA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ReducePolymer__Remove_Only_cC()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.ReducePolymer("cC");
|
||||
|
||||
Assert.AreEqual("", result);
|
||||
Assert.Equal("", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ReducePolymer__Remove_cC_AtStart()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.ReducePolymer("cCAAAA");
|
||||
|
||||
Assert.AreEqual("AAAA", result);
|
||||
Assert.Equal("AAAA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ReducePolymer__Remove_Aa()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.ReducePolymer("dabAaCBA");
|
||||
|
||||
Assert.AreEqual("dabCBA", result);
|
||||
Assert.Equal("dabCBA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ReducePolymer__Remove_cCc()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.ReducePolymer("dabCBAcCcaDA");
|
||||
|
||||
Assert.AreEqual("dabCBAcaDA", result);
|
||||
Assert.Equal("dabCBAcaDA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ReducePolymer__Irreductible()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.ReducePolymer("dabCBAcaDA");
|
||||
|
||||
Assert.AreEqual("dabCBAcaDA", result);
|
||||
Assert.Equal("dabCBAcaDA", result);
|
||||
}
|
||||
|
||||
#endregion ReducePolymer
|
||||
|
||||
#region FullyReducePolymer
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FullyReducePolymer__Test()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.FullyReducePolymer("dabAcCaCBAcCcaDA");
|
||||
|
||||
Assert.AreEqual("dabCBAcaDA", result);
|
||||
Assert.Equal("dabCBAcaDA", result);
|
||||
}
|
||||
|
||||
#endregion FullyReducePolymer
|
||||
|
||||
#region RemoveUnitTypeFromPolymer
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void RemoveUnitTypeFromPolymer__Remove_a()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.RemoveUnitTypeFromPolymer("dabAcCaCBAcCcaDA", 'a');
|
||||
|
||||
Assert.AreEqual("dbcCCBcCcD", result);
|
||||
Assert.Equal("dbcCCBcCcD", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void RemoveUnitTypeFromPolymer__Remove_b()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.RemoveUnitTypeFromPolymer("dabAcCaCBAcCcaDA", 'b');
|
||||
|
||||
Assert.AreEqual("daAcCaCAcCcaDA", result);
|
||||
Assert.Equal("daAcCaCAcCcaDA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void RemoveUnitTypeFromPolymer__Remove_c()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.RemoveUnitTypeFromPolymer("dabAcCaCBAcCcaDA", 'c');
|
||||
|
||||
Assert.AreEqual("dabAaBAaDA", result);
|
||||
Assert.Equal("dabAaBAaDA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void RemoveUnitTypeFromPolymer__Remove_d()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.RemoveUnitTypeFromPolymer("dabAcCaCBAcCcaDA", 'd');
|
||||
|
||||
Assert.AreEqual("abAcCaCBAcCcaA", result);
|
||||
Assert.Equal("abAcCaCBAcCcaA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void RemoveUnitTypeFromPolymer__Remove_A()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.RemoveUnitTypeFromPolymer("dabAcCaCBAcCcaDA", 'A');
|
||||
|
||||
Assert.AreEqual("dbcCCBcCcD", result);
|
||||
Assert.Equal("dbcCCBcCcD", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void RemoveUnitTypeFromPolymer__Remove_B()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.RemoveUnitTypeFromPolymer("dabAcCaCBAcCcaDA", 'B');
|
||||
|
||||
Assert.AreEqual("daAcCaCAcCcaDA", result);
|
||||
Assert.Equal("daAcCaCAcCcaDA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void RemoveUnitTypeFromPolymer__Remove_C()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.RemoveUnitTypeFromPolymer("dabAcCaCBAcCcaDA", 'C');
|
||||
|
||||
Assert.AreEqual("dabAaBAaDA", result);
|
||||
Assert.Equal("dabAaBAaDA", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void RemoveUnitTypeFromPolymer__Remove_D()
|
||||
{
|
||||
Day05 day05 = new Day05();
|
||||
|
||||
string result = day05.RemoveUnitTypeFromPolymer("dabAcCaCBAcCcaDA", 'D');
|
||||
|
||||
Assert.AreEqual("abAcCaCBAcCcaA", result);
|
||||
Assert.Equal("abAcCaCBAcCcaA", result);
|
||||
}
|
||||
|
||||
#endregion RemoveUnitTypeFromPolymer
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day06_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test()
|
||||
{
|
||||
Day06 day06 = new Day06();
|
||||
@@ -20,10 +19,10 @@ namespace AdventOfCode2018.Tests
|
||||
"8, 9",
|
||||
});
|
||||
|
||||
Assert.AreEqual("17", result);
|
||||
Assert.Equal("17", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test()
|
||||
{
|
||||
Day06 day06 = new Day06 { DistanceThresold = 32, };
|
||||
@@ -37,7 +36,7 @@ namespace AdventOfCode2018.Tests
|
||||
"8, 9",
|
||||
});
|
||||
|
||||
Assert.AreEqual("16", result);
|
||||
Assert.Equal("16", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,10 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day07_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test()
|
||||
{
|
||||
Day07 day07 = new Day07();
|
||||
@@ -20,10 +19,10 @@ namespace AdventOfCode2018.Tests
|
||||
"Step F must be finished before step E can begin.",
|
||||
});
|
||||
|
||||
Assert.AreEqual("CABDFE", result);
|
||||
Assert.Equal("CABDFE", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test()
|
||||
{
|
||||
Day07 day07 = new Day07 { BaseCost = 0, NumberOfWorkers = 2 };
|
||||
@@ -38,7 +37,7 @@ namespace AdventOfCode2018.Tests
|
||||
"Step F must be finished before step E can begin.",
|
||||
});
|
||||
|
||||
Assert.AreEqual("15", result);
|
||||
Assert.Equal("15", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,28 +1,27 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day08_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test()
|
||||
{
|
||||
Day08 day = new Day08();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "2 3 0 3 10 11 12 1 1 0 1 99 2 1 1 2", });
|
||||
|
||||
Assert.AreEqual("138", result);
|
||||
Assert.Equal("138", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test()
|
||||
{
|
||||
Day08 day = new Day08();
|
||||
|
||||
string result = day.ResolvePart2(new string[] { "2 3 0 3 10 11 12 1 1 0 1 99 2 1 1 2", });
|
||||
|
||||
Assert.AreEqual("66", result);
|
||||
Assert.Equal("66", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,68 +1,67 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day09_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test1()
|
||||
{
|
||||
Day09 day = new Day09();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "9 players; last marble is worth 25 points" });
|
||||
|
||||
Assert.AreEqual("32", result);
|
||||
Assert.Equal("32", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test2()
|
||||
{
|
||||
Day09 day = new Day09();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "10 players; last marble is worth 1618 points" });
|
||||
|
||||
Assert.AreEqual("8317", result);
|
||||
Assert.Equal("8317", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test3()
|
||||
{
|
||||
Day09 day = new Day09();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "13 players; last marble is worth 7999 points" });
|
||||
|
||||
Assert.AreEqual("146373", result);
|
||||
Assert.Equal("146373", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test4()
|
||||
{
|
||||
Day09 day = new Day09();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "17 players; last marble is worth 1104 points" });
|
||||
|
||||
Assert.AreEqual("2764", result);
|
||||
Assert.Equal("2764", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test5()
|
||||
{
|
||||
Day09 day = new Day09();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "21 players; last marble is worth 6111 points" });
|
||||
|
||||
Assert.AreEqual("54718", result);
|
||||
Assert.Equal("54718", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test6()
|
||||
{
|
||||
Day09 day = new Day09();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "30 players; last marble is worth 5807 points" });
|
||||
|
||||
Assert.AreEqual("37305", result);
|
||||
Assert.Equal("37305", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,11 @@
|
||||
using System;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day10_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test()
|
||||
{
|
||||
Day10 day = new Day10 { Width = 12, Height = 10 };
|
||||
@@ -45,7 +44,7 @@ namespace AdventOfCode2018.Tests
|
||||
"position=<-3, 6> velocity=< 2, -1>",
|
||||
});
|
||||
|
||||
Assert.AreEqual(
|
||||
Assert.Equal(
|
||||
Environment.NewLine + "............" +
|
||||
Environment.NewLine + ".#...#..###." +
|
||||
Environment.NewLine + ".#...#...#.." +
|
||||
@@ -58,7 +57,7 @@ namespace AdventOfCode2018.Tests
|
||||
Environment.NewLine + "............", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test()
|
||||
{
|
||||
Day10 day = new Day10();
|
||||
@@ -97,7 +96,7 @@ namespace AdventOfCode2018.Tests
|
||||
"position=<-3, 6> velocity=< 2, -1>",
|
||||
});
|
||||
|
||||
Assert.AreEqual("3", result);
|
||||
Assert.Equal("3", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,77 +1,76 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day11_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void CalculatePowerLevelOfCell__Test1()
|
||||
{
|
||||
int powerLevel = Day11.CalculatePowerLevelOfCell(3, 5, 8);
|
||||
Assert.AreEqual(4, powerLevel);
|
||||
Assert.Equal(4, powerLevel);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void CalculatePowerLevelOfRegion__Test1()
|
||||
{
|
||||
int powerLevel = Day11.CalculatePowerLevelOfRegion(33, 45, 3, 18);
|
||||
Assert.AreEqual(29, powerLevel);
|
||||
Assert.Equal(29, powerLevel);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void CalculatePowerLevelOfRegion__Test2()
|
||||
{
|
||||
int powerLevel = Day11.CalculatePowerLevelOfRegion(21, 61, 3, 42);
|
||||
Assert.AreEqual(30, powerLevel);
|
||||
Assert.Equal(30, powerLevel);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void CalculatePowerLevelOfRegion__Test1_WithSumationField()
|
||||
{
|
||||
int[,] summationFiled = Day11.GenerateSumationField(300, 300, 18);
|
||||
int powerLevel = Day11.CalculatePowerLevelOfRegion(33, 45, 3, summationFiled);
|
||||
Assert.AreEqual(29, powerLevel);
|
||||
Assert.Equal(29, powerLevel);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void CalculatePowerLevelOfRegion__Test2_WithSumationField()
|
||||
{
|
||||
int[,] summationFiled = Day11.GenerateSumationField(300, 300, 42);
|
||||
int powerLevel = Day11.CalculatePowerLevelOfRegion(21, 61, 3, summationFiled);
|
||||
Assert.AreEqual(30, powerLevel);
|
||||
Assert.Equal(30, powerLevel);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void SearchBestRegionOfOneSize__Test1()
|
||||
{
|
||||
Day11.SearchBestRegionOfOneSize(300, 300, 3, 18, out int x, out int y);
|
||||
Assert.AreEqual(33, x);
|
||||
Assert.AreEqual(45, y);
|
||||
Assert.Equal(33, x);
|
||||
Assert.Equal(45, y);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void SearchBestRegionOfOneSize__Test2()
|
||||
{
|
||||
Day11.SearchBestRegionOfOneSize(300, 300, 3, 42, out int x, out int y);
|
||||
Assert.AreEqual(21, x);
|
||||
Assert.AreEqual(61, y);
|
||||
Assert.Equal(21, x);
|
||||
Assert.Equal(61, y);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test1()
|
||||
{
|
||||
Day11 day = new Day11();
|
||||
string result = day.ResolvePart2(new string[] { "18" });
|
||||
Assert.AreEqual("90,269,16", result);
|
||||
Assert.Equal("90,269,16", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test2()
|
||||
{
|
||||
Day11 day = new Day11();
|
||||
string result = day.ResolvePart2(new string[] { "42" });
|
||||
Assert.AreEqual("232,251,12", result);
|
||||
Assert.Equal("232,251,12", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,10 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day12_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test()
|
||||
{
|
||||
Day12 day = new Day12();
|
||||
@@ -30,7 +29,7 @@ namespace AdventOfCode2018.Tests
|
||||
"####. => #",
|
||||
});
|
||||
|
||||
Assert.AreEqual("325", result);
|
||||
Assert.Equal("325", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,10 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day13_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test1()
|
||||
{
|
||||
Day13 day = new Day13();
|
||||
@@ -20,10 +19,10 @@ namespace AdventOfCode2018.Tests
|
||||
"|",
|
||||
});
|
||||
|
||||
Assert.AreEqual("0,3", result);
|
||||
Assert.Equal("0,3", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test2()
|
||||
{
|
||||
Day13 day = new Day13();
|
||||
@@ -37,10 +36,10 @@ namespace AdventOfCode2018.Tests
|
||||
@" \------/ ",
|
||||
});
|
||||
|
||||
Assert.AreEqual("7,3", result);
|
||||
Assert.Equal("7,3", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test()
|
||||
{
|
||||
Day13 day = new Day13();
|
||||
@@ -55,7 +54,7 @@ namespace AdventOfCode2018.Tests
|
||||
@" \<->/",
|
||||
});
|
||||
|
||||
Assert.AreEqual("6,4", result);
|
||||
Assert.Equal("6,4", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,94 +1,93 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day14_Tests
|
||||
{
|
||||
#region ResolvePart1
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test1()
|
||||
{
|
||||
Day14 day = new Day14();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "9", });
|
||||
|
||||
Assert.AreEqual("5158916779", result);
|
||||
Assert.Equal("5158916779", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test2()
|
||||
{
|
||||
Day14 day = new Day14();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "5", });
|
||||
|
||||
Assert.AreEqual("0124515891", result);
|
||||
Assert.Equal("0124515891", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test3()
|
||||
{
|
||||
Day14 day = new Day14();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "18", });
|
||||
|
||||
Assert.AreEqual("9251071085", result);
|
||||
Assert.Equal("9251071085", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test4()
|
||||
{
|
||||
Day14 day = new Day14();
|
||||
|
||||
string result = day.ResolvePart1(new string[] { "2018", });
|
||||
|
||||
Assert.AreEqual("5941429882", result);
|
||||
Assert.Equal("5941429882", result);
|
||||
}
|
||||
|
||||
#endregion ResolvePart1
|
||||
|
||||
#region ResolvePart2
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test1()
|
||||
{
|
||||
Day14 day = new Day14();
|
||||
|
||||
string result = day.ResolvePart2(new string[] { "51589", });
|
||||
|
||||
Assert.AreEqual("9", result);
|
||||
Assert.Equal("9", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test2()
|
||||
{
|
||||
Day14 day = new Day14();
|
||||
|
||||
string result = day.ResolvePart2(new string[] { "01245", });
|
||||
|
||||
Assert.AreEqual("5", result);
|
||||
Assert.Equal("5", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test3()
|
||||
{
|
||||
Day14 day = new Day14();
|
||||
|
||||
string result = day.ResolvePart2(new string[] { "92510", });
|
||||
|
||||
Assert.AreEqual("18", result);
|
||||
Assert.Equal("18", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test4()
|
||||
{
|
||||
Day14 day = new Day14();
|
||||
|
||||
string result = day.ResolvePart2(new string[] { "59414", });
|
||||
|
||||
Assert.AreEqual("2018", result);
|
||||
Assert.Equal("2018", result);
|
||||
}
|
||||
|
||||
#endregion ResolvePart2
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
using AdventOfCode2018;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@@ -8,12 +8,11 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day15_Tests
|
||||
{
|
||||
#region ResolvePart1
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test1()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -28,10 +27,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#######",
|
||||
});
|
||||
|
||||
Assert.AreEqual("27730", result);
|
||||
Assert.Equal("27730", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test2()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -46,10 +45,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#######",
|
||||
});
|
||||
|
||||
Assert.AreEqual("36334", result);
|
||||
Assert.Equal("36334", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test3()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -64,10 +63,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#######",
|
||||
});
|
||||
|
||||
Assert.AreEqual("39514", result);
|
||||
Assert.Equal("39514", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test4()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -82,10 +81,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#######",
|
||||
});
|
||||
|
||||
Assert.AreEqual("27755", result);
|
||||
Assert.Equal("27755", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test5()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -100,10 +99,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#######",
|
||||
});
|
||||
|
||||
Assert.AreEqual("28944", result);
|
||||
Assert.Equal("28944", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test6()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -120,14 +119,14 @@ namespace AdventOfCode2018.Tests
|
||||
"#########",
|
||||
});
|
||||
|
||||
Assert.AreEqual("18740", result);
|
||||
Assert.Equal("18740", result);
|
||||
}
|
||||
|
||||
#endregion ResolvePart1
|
||||
|
||||
#region ResolvePart2
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test1()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -142,10 +141,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#######",
|
||||
});
|
||||
|
||||
Assert.AreEqual("4988", result);
|
||||
Assert.Equal("4988", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test3()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -160,10 +159,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#######",
|
||||
});
|
||||
|
||||
Assert.AreEqual("31284", result);
|
||||
Assert.Equal("31284", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test4()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -178,10 +177,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#######",
|
||||
});
|
||||
|
||||
Assert.AreEqual("3478", result);
|
||||
Assert.Equal("3478", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test5()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -196,10 +195,10 @@ namespace AdventOfCode2018.Tests
|
||||
"#######",
|
||||
});
|
||||
|
||||
Assert.AreEqual("6474", result);
|
||||
Assert.Equal("6474", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test6()
|
||||
{
|
||||
Day15 day = new Day15();
|
||||
@@ -216,7 +215,7 @@ namespace AdventOfCode2018.Tests
|
||||
"#########",
|
||||
});
|
||||
|
||||
Assert.AreEqual("1140", result);
|
||||
Assert.Equal("1140", result);
|
||||
}
|
||||
|
||||
#endregion ResolvePart2
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
using AdventOfCode2018;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Day23_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart1__Test()
|
||||
{
|
||||
Day23 day = new Day23();
|
||||
@@ -23,10 +22,10 @@ namespace AdventOfCode2018.Tests
|
||||
"pos=<1,3,1>, r=1",
|
||||
});
|
||||
|
||||
Assert.AreEqual("7", result);
|
||||
Assert.Equal("7", result);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void ResolvePart2__Test()
|
||||
{
|
||||
Day23 day = new Day23();
|
||||
@@ -40,7 +39,7 @@ namespace AdventOfCode2018.Tests
|
||||
"pos=<10,10,10>, r=5",
|
||||
});
|
||||
|
||||
Assert.AreEqual("36", result);
|
||||
Assert.Equal("36", result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,57 +1,56 @@
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class GuardEvent_Tests
|
||||
{
|
||||
#region FromString
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__ShiftBegin()
|
||||
{
|
||||
GuardEvent guardEvent = GuardEvent.FromString("[1518-11-01 00:00] Guard #10 begins shift");
|
||||
|
||||
Assert.AreEqual(10, guardEvent.ID);
|
||||
Assert.AreEqual(11, guardEvent.Date.Month);
|
||||
Assert.AreEqual(1, guardEvent.Date.Day);
|
||||
Assert.AreEqual(0, guardEvent.Date.Hour);
|
||||
Assert.AreEqual(0, guardEvent.Date.Minute);
|
||||
Assert.AreEqual(GuardEventType.ShiftBegin, guardEvent.Type);
|
||||
Assert.Equal(10, guardEvent.ID);
|
||||
Assert.Equal(11, guardEvent.Date.Month);
|
||||
Assert.Equal(1, guardEvent.Date.Day);
|
||||
Assert.Equal(0, guardEvent.Date.Hour);
|
||||
Assert.Equal(0, guardEvent.Date.Minute);
|
||||
Assert.Equal(GuardEventType.ShiftBegin, guardEvent.Type);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__FallSleep()
|
||||
{
|
||||
GuardEvent guardEvent = GuardEvent.FromString("[1518-11-02 00:40] falls asleep");
|
||||
|
||||
Assert.AreEqual(null, guardEvent.ID);
|
||||
Assert.AreEqual(11, guardEvent.Date.Month);
|
||||
Assert.AreEqual(2, guardEvent.Date.Day);
|
||||
Assert.AreEqual(0, guardEvent.Date.Hour);
|
||||
Assert.AreEqual(40, guardEvent.Date.Minute);
|
||||
Assert.AreEqual(GuardEventType.FallSleep, guardEvent.Type);
|
||||
Assert.Equal(null, guardEvent.ID);
|
||||
Assert.Equal(11, guardEvent.Date.Month);
|
||||
Assert.Equal(2, guardEvent.Date.Day);
|
||||
Assert.Equal(0, guardEvent.Date.Hour);
|
||||
Assert.Equal(40, guardEvent.Date.Minute);
|
||||
Assert.Equal(GuardEventType.FallSleep, guardEvent.Type);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromString__WakeUp()
|
||||
{
|
||||
GuardEvent guardEvent = GuardEvent.FromString("[1518-11-03 00:29] wakes up");
|
||||
|
||||
Assert.AreEqual(null, guardEvent.ID);
|
||||
Assert.AreEqual(11, guardEvent.Date.Month);
|
||||
Assert.AreEqual(3, guardEvent.Date.Day);
|
||||
Assert.AreEqual(0, guardEvent.Date.Hour);
|
||||
Assert.AreEqual(29, guardEvent.Date.Minute);
|
||||
Assert.AreEqual(GuardEventType.WakeUp, guardEvent.Type);
|
||||
Assert.Equal(null, guardEvent.ID);
|
||||
Assert.Equal(11, guardEvent.Date.Month);
|
||||
Assert.Equal(3, guardEvent.Date.Day);
|
||||
Assert.Equal(0, guardEvent.Date.Hour);
|
||||
Assert.Equal(29, guardEvent.Date.Minute);
|
||||
Assert.Equal(GuardEventType.WakeUp, guardEvent.Type);
|
||||
}
|
||||
|
||||
#endregion FromString
|
||||
|
||||
#region FromStringArray
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromStringArray__TestBase()
|
||||
{
|
||||
List<GuardEvent> guardEvents = GuardEvent.FromStringArray(new string[] {
|
||||
@@ -65,32 +64,32 @@ namespace AdventOfCode2018.Tests
|
||||
"[1518-11-02 00:50] wakes up",
|
||||
});
|
||||
|
||||
Assert.AreEqual(10, guardEvents[0].ID);
|
||||
Assert.AreEqual(GuardEventType.ShiftBegin, guardEvents[0].Type);
|
||||
Assert.Equal(10, guardEvents[0].ID);
|
||||
Assert.Equal(GuardEventType.ShiftBegin, guardEvents[0].Type);
|
||||
|
||||
Assert.AreEqual(10, guardEvents[1].ID);
|
||||
Assert.AreEqual(GuardEventType.FallSleep, guardEvents[1].Type);
|
||||
Assert.Equal(10, guardEvents[1].ID);
|
||||
Assert.Equal(GuardEventType.FallSleep, guardEvents[1].Type);
|
||||
|
||||
Assert.AreEqual(10, guardEvents[2].ID);
|
||||
Assert.AreEqual(GuardEventType.WakeUp, guardEvents[2].Type);
|
||||
Assert.Equal(10, guardEvents[2].ID);
|
||||
Assert.Equal(GuardEventType.WakeUp, guardEvents[2].Type);
|
||||
|
||||
Assert.AreEqual(10, guardEvents[3].ID);
|
||||
Assert.AreEqual(GuardEventType.FallSleep, guardEvents[3].Type);
|
||||
Assert.Equal(10, guardEvents[3].ID);
|
||||
Assert.Equal(GuardEventType.FallSleep, guardEvents[3].Type);
|
||||
|
||||
Assert.AreEqual(10, guardEvents[4].ID);
|
||||
Assert.AreEqual(GuardEventType.WakeUp, guardEvents[4].Type);
|
||||
Assert.Equal(10, guardEvents[4].ID);
|
||||
Assert.Equal(GuardEventType.WakeUp, guardEvents[4].Type);
|
||||
|
||||
Assert.AreEqual(99, guardEvents[5].ID);
|
||||
Assert.AreEqual(GuardEventType.ShiftBegin, guardEvents[5].Type);
|
||||
Assert.Equal(99, guardEvents[5].ID);
|
||||
Assert.Equal(GuardEventType.ShiftBegin, guardEvents[5].Type);
|
||||
|
||||
Assert.AreEqual(99, guardEvents[6].ID);
|
||||
Assert.AreEqual(GuardEventType.FallSleep, guardEvents[6].Type);
|
||||
Assert.Equal(99, guardEvents[6].ID);
|
||||
Assert.Equal(GuardEventType.FallSleep, guardEvents[6].Type);
|
||||
|
||||
Assert.AreEqual(99, guardEvents[7].ID);
|
||||
Assert.AreEqual(GuardEventType.WakeUp, guardEvents[7].Type);
|
||||
Assert.Equal(99, guardEvents[7].ID);
|
||||
Assert.Equal(GuardEventType.WakeUp, guardEvents[7].Type);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void FromStringArray__TestBaseUnsorted()
|
||||
{
|
||||
List<GuardEvent> guardEvents = GuardEvent.FromStringArray(new string[] {
|
||||
@@ -104,29 +103,29 @@ namespace AdventOfCode2018.Tests
|
||||
"[1518-11-01 00:25] wakes up",
|
||||
});
|
||||
|
||||
Assert.AreEqual(10, guardEvents[0].ID);
|
||||
Assert.AreEqual(GuardEventType.ShiftBegin, guardEvents[0].Type);
|
||||
Assert.Equal(10, guardEvents[0].ID);
|
||||
Assert.Equal(GuardEventType.ShiftBegin, guardEvents[0].Type);
|
||||
|
||||
Assert.AreEqual(10, guardEvents[1].ID);
|
||||
Assert.AreEqual(GuardEventType.FallSleep, guardEvents[1].Type);
|
||||
Assert.Equal(10, guardEvents[1].ID);
|
||||
Assert.Equal(GuardEventType.FallSleep, guardEvents[1].Type);
|
||||
|
||||
Assert.AreEqual(10, guardEvents[2].ID);
|
||||
Assert.AreEqual(GuardEventType.WakeUp, guardEvents[2].Type);
|
||||
Assert.Equal(10, guardEvents[2].ID);
|
||||
Assert.Equal(GuardEventType.WakeUp, guardEvents[2].Type);
|
||||
|
||||
Assert.AreEqual(10, guardEvents[3].ID);
|
||||
Assert.AreEqual(GuardEventType.FallSleep, guardEvents[3].Type);
|
||||
Assert.Equal(10, guardEvents[3].ID);
|
||||
Assert.Equal(GuardEventType.FallSleep, guardEvents[3].Type);
|
||||
|
||||
Assert.AreEqual(10, guardEvents[4].ID);
|
||||
Assert.AreEqual(GuardEventType.WakeUp, guardEvents[4].Type);
|
||||
Assert.Equal(10, guardEvents[4].ID);
|
||||
Assert.Equal(GuardEventType.WakeUp, guardEvents[4].Type);
|
||||
|
||||
Assert.AreEqual(99, guardEvents[5].ID);
|
||||
Assert.AreEqual(GuardEventType.ShiftBegin, guardEvents[5].Type);
|
||||
Assert.Equal(99, guardEvents[5].ID);
|
||||
Assert.Equal(GuardEventType.ShiftBegin, guardEvents[5].Type);
|
||||
|
||||
Assert.AreEqual(99, guardEvents[6].ID);
|
||||
Assert.AreEqual(GuardEventType.FallSleep, guardEvents[6].Type);
|
||||
Assert.Equal(99, guardEvents[6].ID);
|
||||
Assert.Equal(GuardEventType.FallSleep, guardEvents[6].Type);
|
||||
|
||||
Assert.AreEqual(99, guardEvents[7].ID);
|
||||
Assert.AreEqual(GuardEventType.WakeUp, guardEvents[7].Type);
|
||||
Assert.Equal(99, guardEvents[7].ID);
|
||||
Assert.Equal(GuardEventType.WakeUp, guardEvents[7].Type);
|
||||
}
|
||||
|
||||
#endregion FromStringArray
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Xunit;
|
||||
|
||||
namespace AdventOfCode2018.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class MarbleGame_Tests
|
||||
{
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void PlayGame__Test1()
|
||||
{
|
||||
MarbleGame marbleGame = new MarbleGame();
|
||||
@@ -13,10 +12,10 @@ namespace AdventOfCode2018.Tests
|
||||
marbleGame.PlayGame(9, 25);
|
||||
long highScore = marbleGame.GetHighScore();
|
||||
|
||||
Assert.AreEqual(32, highScore);
|
||||
Assert.Equal(32, highScore);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void PlayGame__Test2()
|
||||
{
|
||||
MarbleGame marbleGame = new MarbleGame();
|
||||
@@ -24,10 +23,10 @@ namespace AdventOfCode2018.Tests
|
||||
marbleGame.PlayGame(10, 1618);
|
||||
long highScore = marbleGame.GetHighScore();
|
||||
|
||||
Assert.AreEqual(8317, highScore);
|
||||
Assert.Equal(8317, highScore);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void PlayGame__Test3()
|
||||
{
|
||||
MarbleGame marbleGame = new MarbleGame();
|
||||
@@ -35,10 +34,10 @@ namespace AdventOfCode2018.Tests
|
||||
marbleGame.PlayGame(13, 7999);
|
||||
long highScore = marbleGame.GetHighScore();
|
||||
|
||||
Assert.AreEqual(146373, highScore);
|
||||
Assert.Equal(146373, highScore);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void PlayGame__Test4()
|
||||
{
|
||||
MarbleGame marbleGame = new MarbleGame();
|
||||
@@ -46,10 +45,10 @@ namespace AdventOfCode2018.Tests
|
||||
marbleGame.PlayGame(17, 1104);
|
||||
long highScore = marbleGame.GetHighScore();
|
||||
|
||||
Assert.AreEqual(2764, highScore);
|
||||
Assert.Equal(2764, highScore);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void PlayGame__Test5()
|
||||
{
|
||||
MarbleGame marbleGame = new MarbleGame();
|
||||
@@ -57,10 +56,10 @@ namespace AdventOfCode2018.Tests
|
||||
marbleGame.PlayGame(21, 6111);
|
||||
long highScore = marbleGame.GetHighScore();
|
||||
|
||||
Assert.AreEqual(54718, highScore);
|
||||
Assert.Equal(54718, highScore);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[Fact]
|
||||
public void PlayGame__Test6()
|
||||
{
|
||||
MarbleGame marbleGame = new MarbleGame();
|
||||
@@ -68,7 +67,7 @@ namespace AdventOfCode2018.Tests
|
||||
marbleGame.PlayGame(30, 5807);
|
||||
long highScore = marbleGame.GetHighScore();
|
||||
|
||||
Assert.AreEqual(37305, highScore);
|
||||
Assert.Equal(37305, highScore);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user