feat: solved day 9 part 2
This commit is contained in:
@@ -4,6 +4,11 @@ public class DiskMapTests
|
||||
{
|
||||
private const string TestInput = "12345";
|
||||
private const string ExampleInput = "2333133121414131402";
|
||||
|
||||
private async Task<string> GetPuzzleInput()
|
||||
{
|
||||
return await File.ReadAllTextAsync(Path.Combine(AppContext.BaseDirectory, "INPUT.txt"));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task FromDenseFormat_WhenCalled_ItShouldReturnDiskMap()
|
||||
@@ -59,4 +64,48 @@ public class DiskMapTests
|
||||
|
||||
await Assert.That(result).IsEqualTo(1928);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task CalculateCheckSum_WhenCalledWithPuzzleInput_ItShouldReturnExpectedValue()
|
||||
{
|
||||
var input = await GetPuzzleInput();
|
||||
|
||||
var result = DiskMap.FromDenseFormat(input)
|
||||
.CompactDisk()
|
||||
.CalculateCheckSum();
|
||||
|
||||
await Assert.That(result).IsEqualTo(6200294120911);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task CalculateCheckSum_WhenCalledWhenCalledWithTestInputAndNoFragmentation_ItShouldReturnExpectedValue()
|
||||
{
|
||||
var result = DiskMap.FromDenseFormat(TestInput)
|
||||
.CompactDiskWithoutFragmentation()
|
||||
.CalculateCheckSum();
|
||||
|
||||
await Assert.That(result).IsEqualTo(132);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task CalculateCheckSum_WhenCalledWithExampleInputAndNoFragmentation_ItShouldReturnExpectedValue()
|
||||
{
|
||||
var result = DiskMap.FromDenseFormat(ExampleInput)
|
||||
.CompactDiskWithoutFragmentation()
|
||||
.CalculateCheckSum();
|
||||
|
||||
await Assert.That(result).IsEqualTo(2858);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task CalculateCheckSum_WhenCalledWithPuzzleInputAndNoFragmentation_ItShouldReturnExpectedValue()
|
||||
{
|
||||
var input = await GetPuzzleInput();
|
||||
|
||||
var result = DiskMap.FromDenseFormat(input)
|
||||
.CompactDiskWithoutFragmentation()
|
||||
.CalculateCheckSum();
|
||||
|
||||
await Assert.That(result).IsEqualTo(6227018762750);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user