Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(528)

Side by Side Diff: base/win_util_unittest.cc

Issue 6019007: Remove win_util::FormatMessage and FormatLastWin32Error. These were only used... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « base/win_util.cc ('k') | chrome/browser/aeropeek_manager.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <windows.h> 5 #include <windows.h>
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/string_util.h" 8 #include "base/string_util.h"
9 #include "base/win_util.h" 9 #include "base/win_util.h"
10 #include "base/win/windows_version.h" 10 #include "base/win/windows_version.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 ThreadLocaleSaver() : original_locale_id_(GetThreadLocale()) {} 43 ThreadLocaleSaver() : original_locale_id_(GetThreadLocale()) {}
44 ~ThreadLocaleSaver() { SetThreadLocale(original_locale_id_); } 44 ~ThreadLocaleSaver() { SetThreadLocale(original_locale_id_); }
45 45
46 private: 46 private:
47 LCID original_locale_id_; 47 LCID original_locale_id_;
48 48
49 DISALLOW_COPY_AND_ASSIGN(ThreadLocaleSaver); 49 DISALLOW_COPY_AND_ASSIGN(ThreadLocaleSaver);
50 }; 50 };
51 51
52 } // namespace 52 } // namespace
53
54 TEST(BaseWinUtilTest, FormatMessage) {
55 // Because we cannot write tests of every language, we only test the message
56 // of en-US locale. Here, we change the current locale temporarily.
57 ThreadLocaleSaver thread_locale_saver;
58 WORD language_id = MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US);
59 LCID locale_id = MAKELCID(language_id, SORT_DEFAULT);
60 ASSERT_TRUE(SetThreadLocale(locale_id));
61
62 const int kAccessDeniedErrorCode = 5;
63 SetLastError(kAccessDeniedErrorCode);
64 ASSERT_EQ(GetLastError(), kAccessDeniedErrorCode);
65 std::wstring value;
66 TrimWhitespace(win_util::FormatLastWin32Error(), TRIM_ALL, &value);
67 EXPECT_EQ(std::wstring(L"Access is denied."), value);
68
69 // Manually call the OS function
70 wchar_t * string_buffer = NULL;
71 unsigned string_length =
72 ::FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
73 FORMAT_MESSAGE_FROM_SYSTEM |
74 FORMAT_MESSAGE_IGNORE_INSERTS, NULL,
75 kAccessDeniedErrorCode, 0,
76 reinterpret_cast<wchar_t *>(&string_buffer), 0, NULL);
77
78 // Verify the call succeeded
79 ASSERT_TRUE(string_length);
80 ASSERT_TRUE(string_buffer);
81
82 // Verify the string is the same by different calls
83 EXPECT_EQ(win_util::FormatLastWin32Error(), std::wstring(string_buffer));
84 EXPECT_EQ(win_util::FormatMessage(kAccessDeniedErrorCode),
85 std::wstring(string_buffer));
86
87 // Done with the buffer allocated by ::FormatMessage()
88 LocalFree(string_buffer);
89 }
OLDNEW
« no previous file with comments | « base/win_util.cc ('k') | chrome/browser/aeropeek_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698