public void TestRowAndColumnMethods() { const string CELL_VALUE = "Test Value"; LanguageFile languageFile = new LanguageFile(); languageFile.AddRow(); languageFile.AddColumn(); languageFile[0][0] = CELL_VALUE; Assert.AreEqual(languageFile.ColumnCount, 1, "Column count is incorrect"); Assert.AreEqual(languageFile.RowCount, 1, "Row count is incorrect"); Assert.AreEqual(languageFile[0][0], CELL_VALUE, "Row value is incorrect"); languageFile.RemoveColumn(0); Assert.Throws(typeof(ArgumentOutOfRangeException), () => { languageFile[0][0] = CELL_VALUE; }, "Column not removed"); languageFile.RemoveRow(0); Assert.Throws(typeof(ArgumentOutOfRangeException), () => { languageFile[0][0] = CELL_VALUE; }, "Row not removed"); }
public void TestLoadMethod() { const int ROW_COUNT = 200; const int COLUMN_COUNT = 6; Stream stream = File.OpenRead(TEST_FILE); stream.Seek(0, SeekOrigin.End); long fileSize = stream.Position; stream.Seek(0, SeekOrigin.Begin); LanguageFile languageFile = new LanguageFile(); languageFile.Load(stream); long streamPosition = stream.Position; stream.Close(); Assert.AreEqual(fileSize, streamPosition, "Not all of the file was read"); Assert.AreEqual(ROW_COUNT, languageFile.RowCount, "Incorrect row count"); Assert.AreEqual(COLUMN_COUNT, languageFile.ColumnCount, "Incorrect column count"); }
public void TestSaveMethod() { LanguageFile languageFile = new LanguageFile(); languageFile.Load(TEST_FILE); MemoryStream savedStream = new MemoryStream(); languageFile.Save(savedStream); savedStream.Seek(0, SeekOrigin.Begin); LanguageFile savedLanguageFile = new LanguageFile(); savedLanguageFile.Load(savedStream); savedStream.Close(); Assert.AreEqual(languageFile.RowCount, savedLanguageFile.RowCount, "Row counts do not match"); Assert.AreEqual(languageFile.ColumnCount, savedLanguageFile.ColumnCount, "Column counts do not match"); for (int i = 0; i < languageFile.RowCount; i++) { for (int j = 0; j < languageFile.ColumnCount; j++) { Assert.AreEqual(languageFile[i][j], savedLanguageFile[i][j], "Cell values do not match"); } } }