Add support for a numeric table id in DataLogs.
Useful when logging in modules which have multiple instances and the logs
should be separated into different tables.
Review URL: http://webrtc-codereview.appspot.com/132003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@555 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/src/system_wrappers/source/data_log_unittest.cc b/src/system_wrappers/source/data_log_unittest.cc
index 60318a7..9458234 100644
--- a/src/system_wrappers/source/data_log_unittest.cc
+++ b/src/system_wrappers/source/data_log_unittest.cc
@@ -113,29 +113,30 @@
TEST(TestDataLog, CreateReturnTest) {
for (int i = 0; i < 10; ++i)
ASSERT_EQ(DataLog::CreateLog(), 0);
- ASSERT_EQ(DataLog::AddTable("a proper table", "table.txt"), 0);
+ ASSERT_EQ(DataLog::AddTable(DataLog::Combine("a proper table", 1)), 0);
for (int i = 0; i < 10; ++i)
DataLog::ReturnLog();
- ASSERT_LT(DataLog::AddTable("table failure", "table.txt"), 0);
+ ASSERT_LT(DataLog::AddTable(DataLog::Combine("table failure", 1)), 0);
}
TEST(TestDataLog, VerifySingleTable) {
DataLog::CreateLog();
- DataLog::AddTable("table1", "table1.txt");
- DataLog::AddColumn("table1", "arrival", 1);
- DataLog::AddColumn("table1", "timestamp", 1);
- DataLog::AddColumn("table1", "size", 5);
+ DataLog::AddTable(DataLog::Combine("table", 1));
+ DataLog::AddColumn(DataLog::Combine("table", 1), "arrival", 1);
+ DataLog::AddColumn(DataLog::Combine("table", 1), "timestamp", 1);
+ DataLog::AddColumn(DataLog::Combine("table", 1), "size", 5);
WebRtc_UWord32 sizes[5] = {1400, 1500, 1600, 1700, 1800};
for (int i = 0; i < 10; ++i) {
- DataLog::InsertCell("table1", "arrival", static_cast<double>(i));
- DataLog::InsertCell("table1", "timestamp",
+ DataLog::InsertCell(DataLog::Combine("table", 1), "arrival",
+ static_cast<double>(i));
+ DataLog::InsertCell(DataLog::Combine("table", 1), "timestamp",
static_cast<WebRtc_Word64>(4354 + i));
- DataLog::InsertCell("table1", "size", sizes, 5);
- DataLog::NextRow("table1");
+ DataLog::InsertCell(DataLog::Combine("table", 1), "size", sizes, 5);
+ DataLog::NextRow(DataLog::Combine("table", 1));
}
DataLog::ReturnLog();
// Verify file
- FILE* table = fopen("table1.txt", "r");
+ FILE* table = fopen("table_1.txt", "r");
ASSERT_FALSE(table == NULL);
// Read the column names and verify with the expected columns.
// Note that the columns are written to file in alphabetical order.
@@ -170,31 +171,31 @@
TEST(TestDataLog, VerifyMultipleTables) {
DataLog::CreateLog();
- DataLog::AddTable("table2", "table2.txt");
- DataLog::AddTable("table3", "table3.txt");
- DataLog::AddColumn("table2", "arrival", 1);
- DataLog::AddColumn("table2", "timestamp", 1);
- DataLog::AddColumn("table2", "size", 1);
- DataLog::AddTable("table4", "table4.txt");
- DataLog::AddColumn("table3", "timestamp", 1);
- DataLog::AddColumn("table3", "arrival", 1);
- DataLog::AddColumn("table4", "size", 1);
+ DataLog::AddTable(DataLog::Combine("table", 2));
+ DataLog::AddTable(DataLog::Combine("table", 3));
+ DataLog::AddColumn(DataLog::Combine("table", 2), "arrival", 1);
+ DataLog::AddColumn(DataLog::Combine("table", 2), "timestamp", 1);
+ DataLog::AddColumn(DataLog::Combine("table", 2), "size", 1);
+ DataLog::AddTable(DataLog::Combine("table", 4));
+ DataLog::AddColumn(DataLog::Combine("table", 3), "timestamp", 1);
+ DataLog::AddColumn(DataLog::Combine("table", 3), "arrival", 1);
+ DataLog::AddColumn(DataLog::Combine("table", 4), "size", 1);
for (WebRtc_Word32 i = 0; i < 10; ++i) {
- DataLog::InsertCell("table2", "arrival",
+ DataLog::InsertCell(DataLog::Combine("table", 2), "arrival",
static_cast<WebRtc_Word32>(i));
- DataLog::InsertCell("table2", "timestamp",
+ DataLog::InsertCell(DataLog::Combine("table", 2), "timestamp",
static_cast<WebRtc_Word32>(4354 + i));
- DataLog::InsertCell("table2", "size",
+ DataLog::InsertCell(DataLog::Combine("table", 2), "size",
static_cast<WebRtc_Word32>(1200 + 10 * i));
- DataLog::InsertCell("table3", "timestamp",
+ DataLog::InsertCell(DataLog::Combine("table", 3), "timestamp",
static_cast<WebRtc_Word32>(4354 + i));
- DataLog::InsertCell("table3", "arrival",
+ DataLog::InsertCell(DataLog::Combine("table", 3), "arrival",
static_cast<WebRtc_Word32>(i));
- DataLog::InsertCell("table4", "size",
+ DataLog::InsertCell(DataLog::Combine("table", 4), "size",
static_cast<WebRtc_Word32>(1200 + 10 * i));
- DataLog::NextRow("table4");
- DataLog::NextRow("table2");
- DataLog::NextRow("table3");
+ DataLog::NextRow(DataLog::Combine("table", 4));
+ DataLog::NextRow(DataLog::Combine("table", 2));
+ DataLog::NextRow(DataLog::Combine("table", 3));
}
DataLog::ReturnLog();
@@ -217,7 +218,7 @@
// Verify table 2
{
- FILE* table = fopen("table2.txt", "r");
+ FILE* table = fopen("table_2.txt", "r");
ASSERT_FALSE(table == NULL);
ExpectedValuesMap expected;
expected["arrival,"] = ExpectedValues(
@@ -240,20 +241,18 @@
// Verify table 3
{
- FILE* table = fopen("table3.txt", "r");
+ FILE* table = fopen("table_3.txt", "r");
ASSERT_FALSE(table == NULL);
ExpectedValuesMap expected;
expected["arrival,"] = ExpectedValues(
std::vector<std::string>(string_arrival,
string_arrival +
- sizeof(string_arrival)
- / sizeof(std::string)),
+ kNumberOfRows),
1);
expected["timestamp,"] = ExpectedValues(
std::vector<std::string>(string_timestamp,
string_timestamp +
- sizeof(string_timestamp) /
- sizeof(std::string)),
+ kNumberOfRows),
1);
ASSERT_EQ(DataLogParser::VerifyTable(table, expected), 0);
fclose(table);
@@ -261,14 +260,13 @@
// Verify table 4
{
- FILE* table = fopen("table4.txt", "r");
+ FILE* table = fopen("table_4.txt", "r");
ASSERT_FALSE(table == NULL);
ExpectedValuesMap expected;
expected["size,"] = ExpectedValues(
std::vector<std::string>(string_size,
string_size +
- sizeof(string_size)
- / sizeof(std::string)),
+ kNumberOfRows),
1);
ASSERT_EQ(DataLogParser::VerifyTable(table, expected), 0);
fclose(table);