public void SecondTripleIsValidKeyStretched() { var sut = new AdventOfCode2016.Day14.Day14("abc", 2016); var hash = sut.GetHash(10); Assert.Equal("eee", sut.GetTriplet(hash)); Assert.True(sut.IsValidKey(10)); }
public void FirstTripleIsNotValidKeyStretched() { var sut = new AdventOfCode2016.Day14.Day14("abc", 2016); var hash = sut.GetHash(5); Assert.Equal("222", sut.GetTriplet(hash)); Assert.False(sut.IsValidKey(5)); }
public void HashIsValidKey(int index, bool expected) { var sut = new AdventOfCode2016.Day14.Day14("abc"); var actual = sut.IsValidKey(index); Assert.Equal(expected, actual); }
public void TripleAtEndOfHashIsValid() { var sut = new AdventOfCode2016.Day14.Day14("abc"); var expected = "fff"; var actual = sut.GetTriplet("22df6e9378c3c53abed6d3508b6285fff"); Assert.Equal(expected, actual); }
public void StretchedHashIsCorrect() { var sut = new AdventOfCode2016.Day14.Day14("abc", 2016); var expected = "a107ff634856bb300138cac6568c0f24"; var actual = sut.GetHash(0); Assert.Equal(expected, actual); }
public void HashContainsTriplets() { var sut = new AdventOfCode2016.Day14.Day14("abc"); var hash = sut.GetHash(18); var actual = sut.GetTriplet(hash); Assert.NotEqual(string.Empty, actual); }
public void FirstHashesContainNoTriplets() { var sut = new AdventOfCode2016.Day14.Day14("abc"); for (int i = 0; i < 18; i++) { var hash = sut.GetHash(i); var expected = string.Empty; var actual = sut.GetTriplet(hash); Assert.Equal(expected, actual); } }
private static void Day14() { var d14 = new Day14.Day14("jlmsuwbz", 2016); d14.CollectKeys(); }