public void ParseTest() { // invalid data. Assert.Throws <ArgumentNullException>(() => CellPosition.Parse(null)); Assert.Throws <ArgumentException>(() => CellPosition.Parse("")); Assert.Throws <ArgumentException>(() => CellPosition.Parse("a")); Assert.Throws <ArgumentException>(() => CellPosition.Parse("a1X")); Assert.Throws <ArgumentException>(() => CellPosition.Parse("1a")); Assert.Throws <ArgumentException>(() => CellPosition.Parse("11")); Assert.Throws <ArgumentException>(() => CellPosition.Parse("X1")); Assert.Throws <ArgumentException>(() => CellPosition.Parse("XX")); Assert.Throws <ArgumentException>(() => CellPosition.Parse("a0")); Assert.Throws <ArgumentException>(() => CellPosition.Parse("a9")); Assert.Throws <ArgumentException>(() => CellPosition.Parse("i1")); var a1 = CellPosition.Parse("a1"); Assert.Equal(0, a1.Row); Assert.Equal(0, a1.Column); var a2 = CellPosition.Parse("a2"); Assert.Equal(1, a2.Row); Assert.Equal(0, a2.Column); var a3 = CellPosition.Parse("a3"); Assert.Equal(2, a3.Row); Assert.Equal(0, a3.Column); var a4 = CellPosition.Parse("a4"); Assert.Equal(3, a4.Row); Assert.Equal(0, a4.Column); var a5 = CellPosition.Parse("a5"); Assert.Equal(4, a5.Row); Assert.Equal(0, a5.Column); var a6 = CellPosition.Parse("a6"); Assert.Equal(5, a6.Row); Assert.Equal(0, a6.Column); var a7 = CellPosition.Parse("a7"); Assert.Equal(6, a7.Row); Assert.Equal(0, a7.Column); var a8 = CellPosition.Parse("a8"); Assert.Equal(7, a8.Row); Assert.Equal(0, a8.Column); var b1 = CellPosition.Parse("b1"); Assert.Equal(0, b1.Row); Assert.Equal(1, b1.Column); var b2 = CellPosition.Parse("b2"); Assert.Equal(1, b2.Row); Assert.Equal(1, b2.Column); var b3 = CellPosition.Parse("b3"); Assert.Equal(2, b3.Row); Assert.Equal(1, b3.Column); var b4 = CellPosition.Parse("b4"); Assert.Equal(3, b4.Row); Assert.Equal(1, b4.Column); var b5 = CellPosition.Parse("b5"); Assert.Equal(4, b5.Row); Assert.Equal(1, b5.Column); var b6 = CellPosition.Parse("b6"); Assert.Equal(5, b6.Row); Assert.Equal(1, b6.Column); var b7 = CellPosition.Parse("b7"); Assert.Equal(6, b7.Row); Assert.Equal(1, b7.Column); var b8 = CellPosition.Parse("b8"); Assert.Equal(7, b8.Row); Assert.Equal(1, b8.Column); var c1 = CellPosition.Parse("c1"); Assert.Equal(0, c1.Row); Assert.Equal(2, c1.Column); var c2 = CellPosition.Parse("c2"); Assert.Equal(1, c2.Row); Assert.Equal(2, c2.Column); var c3 = CellPosition.Parse("c3"); Assert.Equal(2, c3.Row); Assert.Equal(2, c3.Column); var c4 = CellPosition.Parse("c4"); Assert.Equal(3, c4.Row); Assert.Equal(2, c4.Column); var c5 = CellPosition.Parse("c5"); Assert.Equal(4, c5.Row); Assert.Equal(2, c5.Column); var c6 = CellPosition.Parse("c6"); Assert.Equal(5, c6.Row); Assert.Equal(2, c6.Column); var c7 = CellPosition.Parse("c7"); Assert.Equal(6, c7.Row); Assert.Equal(2, c7.Column); var c8 = CellPosition.Parse("c8"); Assert.Equal(7, c8.Row); Assert.Equal(2, c8.Column); var d1 = CellPosition.Parse("d1"); Assert.Equal(0, d1.Row); Assert.Equal(3, d1.Column); var d2 = CellPosition.Parse("d2"); Assert.Equal(1, d2.Row); Assert.Equal(3, d2.Column); var d3 = CellPosition.Parse("d3"); Assert.Equal(2, d3.Row); Assert.Equal(3, d3.Column); var d4 = CellPosition.Parse("d4"); Assert.Equal(3, d4.Row); Assert.Equal(3, d4.Column); var d5 = CellPosition.Parse("d5"); Assert.Equal(4, d5.Row); Assert.Equal(3, d5.Column); var d6 = CellPosition.Parse("d6"); Assert.Equal(5, d6.Row); Assert.Equal(3, d6.Column); var d7 = CellPosition.Parse("d7"); Assert.Equal(6, d7.Row); Assert.Equal(3, d7.Column); var d8 = CellPosition.Parse("d8"); Assert.Equal(7, d8.Row); Assert.Equal(3, d8.Column); var e1 = CellPosition.Parse("e1"); Assert.Equal(0, e1.Row); Assert.Equal(4, e1.Column); var e2 = CellPosition.Parse("e2"); Assert.Equal(1, e2.Row); Assert.Equal(4, e2.Column); var e3 = CellPosition.Parse("e3"); Assert.Equal(2, e3.Row); Assert.Equal(4, e3.Column); var e4 = CellPosition.Parse("e4"); Assert.Equal(3, e4.Row); Assert.Equal(4, e4.Column); var e5 = CellPosition.Parse("e5"); Assert.Equal(4, e5.Row); Assert.Equal(4, e5.Column); var e6 = CellPosition.Parse("e6"); Assert.Equal(5, e6.Row); Assert.Equal(4, e6.Column); var e7 = CellPosition.Parse("e7"); Assert.Equal(6, e7.Row); Assert.Equal(4, e7.Column); var e8 = CellPosition.Parse("e8"); Assert.Equal(7, e8.Row); Assert.Equal(4, e8.Column); var f1 = CellPosition.Parse("f1"); Assert.Equal(0, f1.Row); Assert.Equal(5, f1.Column); var f2 = CellPosition.Parse("f2"); Assert.Equal(1, f2.Row); Assert.Equal(5, f2.Column); var f3 = CellPosition.Parse("f3"); Assert.Equal(2, f3.Row); Assert.Equal(5, f3.Column); var f4 = CellPosition.Parse("f4"); Assert.Equal(3, f4.Row); Assert.Equal(5, f4.Column); var f5 = CellPosition.Parse("f5"); Assert.Equal(4, f5.Row); Assert.Equal(5, f5.Column); var f6 = CellPosition.Parse("f6"); Assert.Equal(5, f6.Row); Assert.Equal(5, f6.Column); var f7 = CellPosition.Parse("f7"); Assert.Equal(6, f7.Row); Assert.Equal(5, f7.Column); var f8 = CellPosition.Parse("f8"); Assert.Equal(7, f8.Row); Assert.Equal(5, f8.Column); var g1 = CellPosition.Parse("g1"); Assert.Equal(0, g1.Row); Assert.Equal(6, g1.Column); var g2 = CellPosition.Parse("g2"); Assert.Equal(1, g2.Row); Assert.Equal(6, g2.Column); var g3 = CellPosition.Parse("g3"); Assert.Equal(2, g3.Row); Assert.Equal(6, g3.Column); var g4 = CellPosition.Parse("g4"); Assert.Equal(3, g4.Row); Assert.Equal(6, g4.Column); var g5 = CellPosition.Parse("g5"); Assert.Equal(4, g5.Row); Assert.Equal(6, g5.Column); var g6 = CellPosition.Parse("g6"); Assert.Equal(5, g6.Row); Assert.Equal(6, g6.Column); var g7 = CellPosition.Parse("g7"); Assert.Equal(6, g7.Row); Assert.Equal(6, g7.Column); var g8 = CellPosition.Parse("g8"); Assert.Equal(7, g8.Row); Assert.Equal(6, g8.Column); var h1 = CellPosition.Parse("h1"); Assert.Equal(0, h1.Row); Assert.Equal(7, h1.Column); var h2 = CellPosition.Parse("h2"); Assert.Equal(1, h2.Row); Assert.Equal(7, h2.Column); var h3 = CellPosition.Parse("h3"); Assert.Equal(2, h3.Row); Assert.Equal(7, h3.Column); var h4 = CellPosition.Parse("h4"); Assert.Equal(3, h4.Row); Assert.Equal(7, h4.Column); var h5 = CellPosition.Parse("h5"); Assert.Equal(4, h5.Row); Assert.Equal(7, h5.Column); var h6 = CellPosition.Parse("h6"); Assert.Equal(5, h6.Row); Assert.Equal(7, h6.Column); var h7 = CellPosition.Parse("h7"); Assert.Equal(6, h7.Row); Assert.Equal(7, h7.Column); var h8 = CellPosition.Parse("h8"); Assert.Equal(7, h8.Row); Assert.Equal(7, h8.Column); }