Reland "Encapsulate CSS selector declarative content condition tracking"
[chromium-blink-merge.git] / base / test / scoped_locale.cc
blob35b3fbe6790ac5175b8dc1fa9c306fe6745bc7cc
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "base/test/scoped_locale.h"
7 #include <locale.h>
9 #include "testing/gtest/include/gtest/gtest.h"
11 namespace base {
13 ScopedLocale::ScopedLocale(const std::string& locale) {
14 prev_locale_ = setlocale(LC_ALL, NULL);
15 EXPECT_TRUE(setlocale(LC_ALL, locale.c_str()) != NULL) <<
16 "Failed to set locale: " << locale;
19 ScopedLocale::~ScopedLocale() {
20 EXPECT_STREQ(prev_locale_.c_str(), setlocale(LC_ALL, prev_locale_.c_str()));
23 } // namespace base