79 lines
1.9 KiB
C#
79 lines
1.9 KiB
C#
using AdvenOfCode.Contracts;
|
|
|
|
namespace AoC_2025.Tests;
|
|
|
|
public class Day10Test
|
|
{
|
|
private IPuzzleSolver<long> _sut;
|
|
private static readonly string rootPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
|
|
private readonly string TestInputPath = @$"{rootPath}\AoC-PuzzleInputs\2025\Test\day10.txt";
|
|
private readonly string ProdInputPath = @$"{rootPath}\AoC-PuzzleInputs\2025\Prod\day10.txt";
|
|
|
|
public Day10Test()
|
|
{
|
|
_sut = new Day10();
|
|
}
|
|
[Fact]
|
|
public void Part01_Test_equals_7()
|
|
{
|
|
var actual = _sut.SolvePart1(TestInputPath);
|
|
|
|
Assert.Equal(7, actual);
|
|
}
|
|
|
|
[Fact]
|
|
public void Part01_Prod_equals_500()
|
|
{
|
|
var actual = (_sut as Day10).SolvePart1Unoptimized(ProdInputPath);
|
|
|
|
Assert.Equal(500, actual);
|
|
}
|
|
|
|
[Fact]
|
|
public void Part01Unop_Test_equals_7()
|
|
{
|
|
var actual = (_sut as Day10).SolvePart1Unoptimized(TestInputPath);
|
|
|
|
Assert.Equal(7, actual);
|
|
}
|
|
|
|
[Fact]
|
|
public void Part01Unop_Prod_equals_500()
|
|
{
|
|
var actual = _sut.SolvePart1(ProdInputPath);
|
|
|
|
Assert.Equal(500, actual);
|
|
}
|
|
|
|
[Fact]
|
|
public void Part02_Test_equals_33()
|
|
{
|
|
var actual = _sut.SolvePart2(TestInputPath);
|
|
|
|
Assert.Equal(33, actual);
|
|
}
|
|
|
|
[Fact]
|
|
public void Part02Z3_Test_equals_33()
|
|
{
|
|
var actual = (_sut as Day10)?.SolvePart2Z3(TestInputPath);
|
|
|
|
Assert.Equal(33, actual);
|
|
}
|
|
|
|
[Fact]
|
|
public void Part02_Prod_equals_19763()
|
|
{
|
|
var actual = _sut.SolvePart2(ProdInputPath);
|
|
|
|
Assert.Equal(19763, actual);
|
|
}
|
|
|
|
[Fact]
|
|
public void Part02Z3_Prod_equals_19763()
|
|
{
|
|
var actual = (_sut as Day10)?.SolvePart2Z3(ProdInputPath);
|
|
|
|
Assert.Equal(19763, actual);
|
|
}
|
|
} |