public void IntegrationTestPartOne() { var fabric = new Fabric(); IEnumerable <ElfClaim> claims = ReadElfClaimsFromFile("day3.txt"); foreach (ElfClaim elfClaim in claims) { fabric.MakeClaim(elfClaim); } Assert.Equal(110195, fabric.TotalOverlappingArea()); }
public void TotalOverlappingAreaTests() { var fabric = new Fabric(); var claimLines = new[] { "#1 @ 1,3: 4x4", "#2 @ 3,1: 4x4", "#3 @ 5,5: 2x2" }; IEnumerable <ElfClaim> claims = claimLines.Select(ParseElfClaim); foreach (ElfClaim elfClaim in claims) { fabric.MakeClaim(elfClaim); } Assert.Equal(4, fabric.TotalOverlappingArea()); }
public void IntegrationTestPartTwo() { var fabric = new Fabric(); ElfClaim[] claims = ReadElfClaimsFromFile("day3.txt").ToArray(); foreach (ElfClaim elfClaim in claims) { fabric.MakeClaim(elfClaim); } ElfClaim notOverlapping = claims.Single(claim => !fabric.IsOverlapping(claim)); Assert.Equal(894, notOverlapping.Id); }
public void IsOverlappingTests() { var fabric = new Fabric(); var claimLines = new[] { "#1 @ 1,3: 4x4", "#2 @ 3,1: 4x4", "#3 @ 5,5: 2x2" }; ElfClaim[] claims = claimLines.Select(ParseElfClaim).ToArray(); foreach (ElfClaim elfClaim in claims) { fabric.MakeClaim(elfClaim); } Assert.True(fabric.IsOverlapping(claims[0])); Assert.True(fabric.IsOverlapping(claims[1])); Assert.False(fabric.IsOverlapping(claims[2])); }