Index: base/logging_unittest.cc |
diff --git a/base/logging_unittest.cc b/base/logging_unittest.cc |
deleted file mode 100644 |
index 5b5156e783d95c119d568744c6f2de2942a697f1..0000000000000000000000000000000000000000 |
--- a/base/logging_unittest.cc |
+++ /dev/null |
@@ -1,268 +0,0 @@ |
-// Copyright 2007-2009 Google Inc. |
-// |
-// Licensed under the Apache License, Version 2.0 (the "License"); |
-// you may not use this file except in compliance with the License. |
-// You may obtain a copy of the License at |
-// |
-// http://www.apache.org/licenses/LICENSE-2.0 |
-// |
-// Unless required by applicable law or agreed to in writing, software |
-// distributed under the License is distributed on an "AS IS" BASIS, |
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-// See the License for the specific language governing permissions and |
-// limitations under the License. |
-// ======================================================================== |
- |
-#include "base/basictypes.h" |
-#include "omaha/base/logging.h" |
-#include "omaha/testing/unit_test.h" |
- |
-namespace omaha { |
- |
-TEST(LoggingTest, Logging) { |
-#ifdef _DEBUG |
- OPT_LOG(L1, (_T("[OPT_LOG from debug build.]"))); |
-#else |
- OPT_LOG(L1, (_T("[OPT_LOG from optimized build.]"))); |
-#endif |
-} |
- |
-class FileLogWriterTest : public testing::Test { |
- public: |
- |
- int FindFirstInMultiString(const TCHAR* multi_str, |
- size_t count, |
- const TCHAR* str) { |
- return FileLogWriter::FindFirstInMultiString(multi_str, count, str); |
- } |
-}; |
- |
-class HistoryTest : public testing::Test { |
- protected: |
- HistoryTest() { |
- logging_ = GetLogging(); |
- } |
- |
- void AppendToHistory(const wchar_t* msg) { |
- logging_->AppendToHistory(msg); |
- } |
- |
- CString GetHistory() { |
- return logging_->GetHistory(); |
- } |
- |
- private: |
- Logging* logging_; |
-}; |
- |
-#define EOS _T("") |
-TEST_F(FileLogWriterTest, FindInMultiString) { |
- // One string of one char. |
- const TCHAR s1[] = _T("a\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s1, arraysize(s1), _T("a")), 0); |
- |
- // One string. |
- const TCHAR s2[] = _T("abc\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s2, arraysize(s2), _T("abc")), 0); |
- |
- // Two strings of one char. |
- const TCHAR s3[] = _T("a\0b\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s3, arraysize(s3), _T("b")), 2); |
- |
- // Two strings. |
- const TCHAR s4[] = _T("ab\0cde\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s4, arraysize(s4), _T("cde")), 3); |
- |
- // Three strings one char. |
- const TCHAR s5[] = _T("a\0b\0c\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s5, arraysize(s5), _T("c")), 4); |
- |
- // Many strings. |
- const TCHAR s6[] = _T("a\0bcd\0efgh\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s6, arraysize(s6), _T("efgh")), 6); |
- |
- // Many strings including empty string. |
- const TCHAR s7[] = _T("a\0\0bc\0\0de\0fg") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s7, arraysize(s7), _T("fg")), 10); |
- |
- // Many strings, empty string at the end, negative test. |
- const TCHAR s8[] = _T("a\0bcd\0efgh\0\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s8, arraysize(s8), _T("foo")), -1); |
- |
- // Another negative test. |
- const TCHAR s9[] = _T("a\0bcd\0\0\0efgh\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s9, arraysize(s9), _T("foo")), -1); |
- |
- // Empty string is always found. |
- const TCHAR s10[] = _T("\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s10, arraysize(s10), _T("\0")), 0); |
- |
- const TCHAR s11[] = _T("\0") EOS; |
- EXPECT_EQ(FindFirstInMultiString(s11, arraysize(s11), _T("a")), -1); |
-} |
- |
-TEST_F(HistoryTest, GetHistory) { |
- EXPECT_TRUE(GetHistory().IsEmpty()); |
- |
- const TCHAR msg1[] = _T("Hello"); |
- AppendToHistory(msg1); |
- EXPECT_STREQ(msg1, GetHistory()); |
- EXPECT_TRUE(GetHistory().IsEmpty()); |
-} |
- |
-TEST_F(HistoryTest, AppendToHistoryTest) { |
- // Test one character. |
- const TCHAR msg1[] = _T("A"); |
- AppendToHistory(msg1); |
- EXPECT_STREQ(msg1, GetHistory()); |
- |
- // Test small string. |
- const TCHAR msg2[] = _T("ABCD"); |
- AppendToHistory(msg2); |
- EXPECT_STREQ(msg2, GetHistory()); |
- |
- // Test one string that fills the buffer. |
- TCHAR msg3[kMaxHistoryBufferSize + 1] = {0}; |
- for (int i = 0; i <= kMaxHistoryBufferSize; ++i) { |
- msg3[i] = _T('A'); |
- } |
- msg3[kMaxHistoryBufferSize] = _T('\0'); |
- AppendToHistory(msg3); |
- EXPECT_STREQ(msg3, GetHistory()); |
- |
- // Test set of strings that exactly fill buffer. |
- const int test_buffer_size = 64; |
- TCHAR msg4[test_buffer_size + 1] = {0}; |
- for (int i = 0; i <= test_buffer_size; ++i) { |
- msg4[i] = _T('A'); |
- } |
- msg4[test_buffer_size] = _T('\0'); |
- |
- int num_times_to_append = kMaxHistoryBufferSize / test_buffer_size; |
- EXPECT_EQ(kMaxHistoryBufferSize, num_times_to_append * test_buffer_size); |
- for (int i = 0; i < num_times_to_append; ++i) { |
- AppendToHistory(msg4); |
- } |
- EXPECT_STREQ(msg3, GetHistory()); |
-} |
- |
-TEST_F(HistoryTest, AppendToHistoryTest_WrapAround) { |
- // Test string that wraps around the buffer. |
- // First fill kMaxHistoryBufferSize - 1 with one string, then use |
- // another string of length 2("XX"), and another string to length of length 3. |
- // "XFFFGGGGG....GGGX" should be the result. The returned string should |
- // be in correct FIFO order i.e. "GGGGG......XXFFF". |
- const TCHAR msg6[] = _T("XX"); |
- const TCHAR msg7[] = _T("FFF"); |
- const int test_buffer_size = kMaxHistoryBufferSize - 1; |
- TCHAR msg5[test_buffer_size + 1] = {0}; |
- TCHAR expected_buffer[kMaxHistoryBufferSize + 1] = {0}; |
- for (int i = 0; i <= test_buffer_size; ++i) { |
- msg5[i] = _T('G'); |
- } |
- msg5[test_buffer_size] = _T('\0'); |
- |
- // Call test method. |
- AppendToHistory(msg5); |
- AppendToHistory(msg6); |
- AppendToHistory(msg7); |
- |
- // Create the expected string. |
- for (int i = 0; i <= kMaxHistoryBufferSize; ++i) { |
- expected_buffer[i] = _T('G'); |
- } |
- int msg6len = wcslen(msg6); |
- int msg7len = wcslen(msg7); |
- memcpy(expected_buffer + kMaxHistoryBufferSize - msg6len - msg7len, |
- msg6, |
- msg6len * sizeof(TCHAR)); |
- memcpy(expected_buffer + kMaxHistoryBufferSize - msg7len, |
- msg7, |
- msg7len * sizeof(TCHAR)); |
- expected_buffer[kMaxHistoryBufferSize] = _T('\0'); |
- EXPECT_STREQ(expected_buffer, GetHistory()); |
-} |
- |
-TEST_F(HistoryTest, AppendToHistoryTest_AnotherWrapAroundTest) { |
- // Test string that wraps around the buffer. |
- // First fill the kMaxHistoryBufferSize - 1 with one string, then fill it with |
- // another string of same length. |
- const int test_buffer_size = kMaxHistoryBufferSize - 1; |
- TCHAR msg2[test_buffer_size + 1] = {0}; |
- TCHAR msg1[test_buffer_size + 1] = {0}; |
- TCHAR expected_buffer[kMaxHistoryBufferSize + 1] = {0}; |
- for (int i = 0; i <= test_buffer_size; ++i) { |
- msg1[i] = _T('G'); |
- msg2[i] = _T('J'); |
- } |
- msg2[test_buffer_size] = _T('\0'); |
- msg1[test_buffer_size] = _T('\0'); |
- |
- // Call test method. |
- AppendToHistory(msg1); |
- AppendToHistory(msg2); |
- |
- // Create the expected string. |
- for (int i = 0; i <= kMaxHistoryBufferSize; ++i) { |
- expected_buffer[i] = _T('J'); |
- } |
- expected_buffer[0] = _T('G'); |
- expected_buffer[kMaxHistoryBufferSize] = _T('\0'); |
- EXPECT_STREQ(expected_buffer, GetHistory()); |
-} |
- |
-TEST_F(HistoryTest, AppendToHistoryTest_LotsOfLogs) { |
- // Run over a number of Append calls, with strings length |
- // (kMaxHistoryBufferSize / 2) + 1, causing wrap on every run. |
- TCHAR expected_buffer[kMaxHistoryBufferSize + 1] = {0}; |
- const int test_buffer_size = (kMaxHistoryBufferSize / 2) + 1; |
- TCHAR msg1[test_buffer_size + 1] = {0}; |
- for (int test_char = 'A'; test_char <= 'Z'; ++test_char) { |
- for (int i = 0; i <= test_buffer_size; ++i) { |
- msg1[i] = static_cast<TCHAR>(test_char); |
- } |
- msg1[test_buffer_size] = _T('\0'); |
- |
- // Call test method. |
- AppendToHistory(msg1); |
- } |
- |
- // Create the expected string. |
- int i = 0; |
- for (; i < test_buffer_size - 2; ++i) { |
- expected_buffer[i] = _T('Y'); |
- } |
- for (; i <= kMaxHistoryBufferSize; ++i) { |
- expected_buffer[i] = _T('Z'); |
- } |
- expected_buffer[kMaxHistoryBufferSize] = _T('\0'); |
- EXPECT_STREQ(expected_buffer, GetHistory()); |
-} |
- |
-TEST_F(HistoryTest, AppendToHistoryTest_LargeBuffer) { |
- // Test with a message that is larger than the buffer. |
- const int test_buffer_size = kMaxHistoryBufferSize + 10; |
- TCHAR msg4[test_buffer_size + 1] = {0}; |
- TCHAR expected_buffer[kMaxHistoryBufferSize + 1] = {0}; |
- for (int i = 0; i < test_buffer_size; ++i) { |
- msg4[i] = _T('A'); |
- } |
- msg4[test_buffer_size] = _T('\0'); |
- |
- for (int i = 0; i <= kMaxHistoryBufferSize; ++i) { |
- expected_buffer[i] = _T('A'); |
- } |
- expected_buffer[kMaxHistoryBufferSize] = _T('\0'); |
- |
- AppendToHistory(msg4); |
- EXPECT_STREQ(expected_buffer, GetHistory()); |
-} |
- |
-TEST_F(HistoryTest, AppendToHistoryTest_EmptyBuffer) { |
- CString test_string; |
- AppendToHistory(test_string); |
- EXPECT_TRUE(GetHistory().IsEmpty()); |
-} |
- |
-} // namespace omaha |
- |