public void Equals_ComparesCorrectly() { CrunchedWord3Grid grid1 = new CrunchedWord3Grid(Idx(1), Idx(2), Idx(3), Idx(4), Idx(5), Idx(6)); CrunchedWord3Grid grid2 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(2), Idx(3), Idx(4), Idx(5)); CrunchedWord3Grid grid3 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(1), Idx(2), Idx(3), Idx(4)); CrunchedWord3Grid grid4 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(1), Idx(1), Idx(2), Idx(3)); CrunchedWord3Grid grid5 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(1), Idx(1), Idx(1), Idx(2)); CrunchedWord3Grid grid6 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(1), Idx(1), Idx(1), Idx(1)); Assert.True(grid1.Equals(grid1)); Assert.False(grid1.Equals(grid2)); Assert.False(grid2.Equals(grid3)); Assert.False(grid3.Equals(grid4)); Assert.False(grid4.Equals(grid5)); Assert.False(grid5.Equals(grid6)); Assert.True(grid6.Equals(grid6)); }
public void Crunch_FirstColumnAndRowEqualButSecondColumnGreater_ReturnsRowIndexesFirst() { Word3Grid grid = new Word3Grid(new Word3("abc"), new Word3("baa"), new Word3("cza")); SortedTable <Word3> table = new SortedTable <Word3>(); table.Add(new Word3("abc")); table.Add(new Word3("baa")); table.Add(new Word3("baz")); table.Add(new Word3("caa")); table.Add(new Word3("cza")); Word3GridCruncher cruncher = new Word3GridCruncher(table); CrunchedWord3Grid crunchedGrid = cruncher.Crunch(grid); CrunchedWord3Grid expectedGrid = new CrunchedWord3Grid(Idx(1), Idx(2), Idx(5), Idx(1), Idx(3), Idx(4)); Assert.Equal(expectedGrid, crunchedGrid); }
public void CompareTo_ComparesCorrectly() { CrunchedWord3Grid grid1 = new CrunchedWord3Grid(Idx(1), Idx(2), Idx(3), Idx(4), Idx(5), Idx(6)); CrunchedWord3Grid grid2 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(2), Idx(3), Idx(4), Idx(5)); CrunchedWord3Grid grid3 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(1), Idx(2), Idx(3), Idx(4)); CrunchedWord3Grid grid4 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(1), Idx(1), Idx(2), Idx(3)); CrunchedWord3Grid grid5 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(1), Idx(1), Idx(1), Idx(2)); CrunchedWord3Grid grid6 = new CrunchedWord3Grid(Idx(1), Idx(1), Idx(1), Idx(1), Idx(1), Idx(1)); Assert.True(grid1.CompareTo(grid1) == 0); Assert.True(grid1.CompareTo(grid2) > 0); Assert.True(grid2.CompareTo(grid1) < 0); Assert.True(grid2.CompareTo(grid3) > 0); Assert.True(grid3.CompareTo(grid4) > 0); Assert.True(grid4.CompareTo(grid5) > 0); Assert.True(grid5.CompareTo(grid6) > 0); Assert.True(grid6.CompareTo(grid6) == 0); }
public void Crunch_ColumnsLessThanRows_ReturnsColumnIndexesFirst() { Word3Grid grid = new Word3Grid(new Word3("zbc"), new Word3("aef"), new Word3("ahi")); SortedTable <Word3> table = new SortedTable <Word3>(); table.Add(new Word3("aef")); table.Add(new Word3("ahi")); table.Add(new Word3("beh")); table.Add(new Word3("cfi")); table.Add(new Word3("zaa")); table.Add(new Word3("zbc")); Word3GridCruncher cruncher = new Word3GridCruncher(table); CrunchedWord3Grid crunchedGrid = cruncher.Crunch(grid); CrunchedWord3Grid expectedGrid = new CrunchedWord3Grid(Idx(5), Idx(3), Idx(4), Idx(6), Idx(1), Idx(2)); Assert.Equal(expectedGrid, crunchedGrid); }