public void TranslateTest1()
{
string[] colNames = { "col1", "col2", "col3" };
DataTable table = new DataTable("TranslateTest1 Table");
table.Columns.Add(colNames);
table.Rows.Add(1, 2, 3);
table.Rows.Add(1, 3, 5);
table.Rows.Add(1, 4, 7);
table.Rows.Add(2, 4, 6);
table.Rows.Add(2, 5, 8);
table.Rows.Add(2, 6, 10);
table.Rows.Add(3, 4, 5);
table.Rows.Add(3, 5, 7);
table.Rows.Add(3, 6, 9);
// ok, so values 1,2,3 are in column 1
// values 2,3,4,5,6 in column 2
// values 3,5,6,7,8,9,10 in column 3
var codeBook = new Codification(table);
Assert.AreEqual(0, codeBook.Translate("col1", "1"));
Assert.AreEqual(1, codeBook.Translate("col1", "2"));
Assert.AreEqual(2, codeBook.Translate("col1", "3"));
Assert.AreEqual(0, codeBook.Translate("col2", "2"));
Assert.AreEqual(1, codeBook.Translate("col2", "3"));
Assert.AreEqual(2, codeBook.Translate("col2", "4"));
Assert.AreEqual(3, codeBook.Translate("col2", "5"));
Assert.AreEqual(4, codeBook.Translate("col2", "6"));
Assert.AreEqual(0, codeBook.Translate("col3", "3"));
Assert.AreEqual(1, codeBook.Translate("col3", "5"));
Assert.AreEqual(2, codeBook.Translate("col3", "7"));
Assert.AreEqual(3, codeBook.Translate("col3", "6"));
Assert.AreEqual(4, codeBook.Translate("col3", "8"));
Assert.AreEqual(5, codeBook.Translate("col3", "10"));
Assert.AreEqual(6, codeBook.Translate("col3", "9"));
}