public void Construct_FromRows_SetsPropertyValues() { Word4[] rows = new Word4[] { new Word4("abcd"), new Word4("efgh"), new Word4("ijkl"), new Word4("mnop") }; Word4Grid grid = new Word4Grid(rows[0], rows[1], rows[2], rows[3]); Assert.Equal('a', grid.A00); Assert.Equal('b', grid.A01); Assert.Equal('c', grid.A02); Assert.Equal('d', grid.A03); Assert.Equal('e', grid.A10); Assert.Equal('f', grid.A11); Assert.Equal('g', grid.A12); Assert.Equal('h', grid.A13); Assert.Equal('i', grid.A20); Assert.Equal('j', grid.A21); Assert.Equal('k', grid.A22); Assert.Equal('l', grid.A23); Assert.Equal('m', grid.A30); Assert.Equal('n', grid.A31); Assert.Equal('o', grid.A32); Assert.Equal('p', grid.A33); Assert.Equal(rows[0], grid.Row1); Assert.Equal(rows[1], grid.Row2); Assert.Equal(rows[2], grid.Row3); Assert.Equal(rows[3], grid.Row4); Assert.Equal(new Word4("aeim"), grid.Column1); Assert.Equal(new Word4("bfjn"), grid.Column2); Assert.Equal(new Word4("cgko"), grid.Column3); Assert.Equal(new Word4("dhlp"), grid.Column4); }
public void Construct_FromChars_SetsPropertyValues() { Word4 c = new Word4('a', 'b', 'c', 'd'); Assert.Equal('a', c.L1); Assert.Equal('b', c.L2); Assert.Equal('c', c.L3); Assert.Equal('d', c.L4); }
public void Construct_FromString_SetsPropertyValues() { Word4 c = new Word4("abcd"); Assert.Equal('a', c.L1); Assert.Equal('b', c.L2); Assert.Equal('c', c.L3); Assert.Equal('d', c.L4); }
public void Construct_WordSequence_AddsToTrie() { Word4 w1 = new Word4("aaaa"); Word4 w2 = new Word4("zzzz"); Word4Trie trie = new Word4Trie(new Word4[] { w1, w2 }); Assert.True(trie.Contains(w1)); Assert.True(trie.Contains(w2)); }
public void Transpose_CreatesRowAndColumnSwappedGrid() { Word4[] rows = new Word4[] { new Word4("abcd"), new Word4("efgh"), new Word4("ijkl"), new Word4("mnop") }; Word4Grid grid = new Word4Grid(rows[0], rows[1], rows[2], rows[3]); Word4Grid gridT = grid.Transpose(); Assert.Equal(new Word4("aeim"), gridT.Row1); Assert.Equal(new Word4("bfjn"), gridT.Row2); Assert.Equal(new Word4("cgko"), gridT.Row3); Assert.Equal(new Word4("dhlp"), gridT.Row4); }
public void Equals_ComparesCorrectly() { Word4[] rows = new Word4[] { new Word4("abcd"), new Word4("efgh"), new Word4("ijkl"), new Word4("mnop") }; Word4Grid grid1a = new Word4Grid(rows[0], rows[1], rows[2], rows[3]); Word4Grid grid1b = new Word4Grid(rows[0], rows[1], rows[2], rows[3]); Word4Grid grid2 = new Word4Grid(rows[0], rows[1], rows[2], rows[2]); Assert.True(grid1a.Equals(grid1b)); Assert.True(grid1b.Equals(grid1a)); Assert.False(grid1b.Equals(grid2)); Assert.False(grid2.Equals(grid1a)); }
public void GetHashCode_UniqueUnlessValuesAreEqual() { Word4 one = new Word4("onea"); Word4 oneA = new Word4("onea"); Word4 two = new Word4("twoa"); Word4 twoA = new Word4("twoa"); int c1 = one.GetHashCode(); int c2 = two.GetHashCode(); int c1a = oneA.GetHashCode(); int c2a = twoA.GetHashCode(); Assert.Equal(c1, c1a); Assert.Equal(c2, c2a); Assert.NotEqual(c1, c2); }
public void Equals_ComparesCorrectly() { Word4 one = new Word4("onea"); Word4 oneA = new Word4("onea"); Word4 two = new Word4("twoa"); Word4 twoA = new Word4("twoa"); object twoO = two; Assert.True(one.Equals(oneA)); Assert.True(oneA.Equals(one)); Assert.True(two.Equals(twoA)); Assert.True(twoA.Equals(two)); Assert.True(two.Equals(twoO)); Assert.False(one.Equals(two)); Assert.False(two.Equals(one)); Assert.False(two.Equals(null)); }
public void CompareTo_ComparesCorrectly() { Word4 one = new Word4("aaaa"); Word4 two = new Word4("aaab"); Word4 three = new Word4("baaa"); Word4 four = new Word4("bbaa"); Word4 five = new Word4("bbba"); Assert.True(one.CompareTo(one) == 0); Assert.True(one.CompareTo(two) < 0); Assert.True(one.CompareTo(three) < 0); Assert.True(one.CompareTo(four) < 0); Assert.True(one.CompareTo(five) < 0); Assert.True(two.CompareTo(one) > 0); Assert.True(two.CompareTo(two) == 0); Assert.True(two.CompareTo(three) < 0); Assert.True(two.CompareTo(four) < 0); Assert.True(two.CompareTo(five) < 0); Assert.True(three.CompareTo(one) > 0); Assert.True(three.CompareTo(two) > 0); Assert.True(three.CompareTo(three) == 0); Assert.True(three.CompareTo(four) < 0); Assert.True(three.CompareTo(five) < 0); Assert.True(four.CompareTo(one) > 0); Assert.True(four.CompareTo(two) > 0); Assert.True(four.CompareTo(three) > 0); Assert.True(four.CompareTo(four) == 0); Assert.True(four.CompareTo(five) < 0); Assert.True(five.CompareTo(one) > 0); Assert.True(five.CompareTo(two) > 0); Assert.True(five.CompareTo(three) > 0); Assert.True(five.CompareTo(four) > 0); Assert.True(five.CompareTo(five) == 0); }
public void ToString_ReturnsWord() { Word4 word = new Word4("abcd"); Assert.Equal("abcd", word.ToString()); }