Commit f130e8e8 authored by Scott Little's avatar Scott Little Committed by Commit Bot

Remove usage of std::unique_ptr(new...) pattern in components/translate

This CL removes usage of the |new| operator with std::unique_ptr in
components/translate, either changing the call site to use
std::make_unique, or refactoring the call site to not require a
std::unique_ptr at all.

Bug: 881807
Change-Id: I7d66f206bc9807e5188f22b58647901d720d3505
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2341177Reviewed-by: default avatarMegan Jablonski <megjablon@chromium.org>
Commit-Queue: Scott Little <sclittle@chromium.org>
Auto-Submit: Scott Little <sclittle@chromium.org>
Cr-Commit-Position: refs/heads/master@{#795945}
parent 61491ae4
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
#include "components/translate/content/renderer/translate_agent.h" #include "components/translate/content/renderer/translate_agent.h"
#include <stddef.h>
#include <utility> #include <utility>
#include "base/bind.h" #include "base/bind.h"
...@@ -230,10 +231,13 @@ std::string TranslateAgent::ExecuteScriptAndGetStringResult( ...@@ -230,10 +231,13 @@ std::string TranslateAgent::ExecuteScriptAndGetStringResult(
} }
v8::Local<v8::String> v8_str = result.As<v8::String>(); v8::Local<v8::String> v8_str = result.As<v8::String>();
int length = v8_str->Utf8Length(isolate) + 1; int length = v8_str->Utf8Length(isolate);
std::unique_ptr<char[]> str(new char[length]); if (length <= 0)
v8_str->WriteUtf8(isolate, str.get(), length); return std::string();
return std::string(str.get());
std::string str(static_cast<size_t>(length), '\0');
v8_str->WriteUtf8(isolate, &str[0], length);
return str;
} }
double TranslateAgent::ExecuteScriptAndGetDoubleResult( double TranslateAgent::ExecuteScriptAndGetDoubleResult(
......
...@@ -4,8 +4,6 @@ ...@@ -4,8 +4,6 @@
#include "components/translate/core/browser/language_state.h" #include "components/translate/core/browser/language_state.h"
#include <memory>
#include "base/macros.h" #include "base/macros.h"
#include "components/translate/core/browser/language_state.h" #include "components/translate/core/browser/language_state.h"
#include "components/translate/core/browser/mock_translate_driver.h" #include "components/translate/core/browser/mock_translate_driver.h"
...@@ -17,8 +15,8 @@ using translate::testing::MockTranslateDriver; ...@@ -17,8 +15,8 @@ using translate::testing::MockTranslateDriver;
namespace translate { namespace translate {
TEST(LanguageStateTest, IsPageTranslated) { TEST(LanguageStateTest, IsPageTranslated) {
std::unique_ptr<MockTranslateDriver> driver(new MockTranslateDriver); MockTranslateDriver driver;
LanguageState language_state(driver.get()); LanguageState language_state(&driver);
EXPECT_FALSE(language_state.IsPageTranslated()); EXPECT_FALSE(language_state.IsPageTranslated());
// Navigate to a French page. // Navigate to a French page.
...@@ -41,36 +39,36 @@ TEST(LanguageStateTest, IsPageTranslated) { ...@@ -41,36 +39,36 @@ TEST(LanguageStateTest, IsPageTranslated) {
} }
TEST(LanguageStateTest, Driver) { TEST(LanguageStateTest, Driver) {
std::unique_ptr<MockTranslateDriver> driver(new MockTranslateDriver); MockTranslateDriver driver;
LanguageState language_state(driver.get()); LanguageState language_state(&driver);
// Enable/Disable translate. // Enable/Disable translate.
EXPECT_FALSE(language_state.translate_enabled()); EXPECT_FALSE(language_state.translate_enabled());
EXPECT_FALSE(driver->on_translate_enabled_changed_called()); EXPECT_FALSE(driver.on_translate_enabled_changed_called());
language_state.SetTranslateEnabled(true); language_state.SetTranslateEnabled(true);
EXPECT_TRUE(language_state.translate_enabled()); EXPECT_TRUE(language_state.translate_enabled());
EXPECT_TRUE(driver->on_translate_enabled_changed_called()); EXPECT_TRUE(driver.on_translate_enabled_changed_called());
driver->Reset(); driver.Reset();
language_state.SetTranslateEnabled(false); language_state.SetTranslateEnabled(false);
EXPECT_FALSE(language_state.translate_enabled()); EXPECT_FALSE(language_state.translate_enabled());
EXPECT_TRUE(driver->on_translate_enabled_changed_called()); EXPECT_TRUE(driver.on_translate_enabled_changed_called());
// Navigate to a French page. // Navigate to a French page.
driver->Reset(); driver.Reset();
language_state.LanguageDetermined("fr", true); language_state.LanguageDetermined("fr", true);
EXPECT_FALSE(language_state.translate_enabled()); EXPECT_FALSE(language_state.translate_enabled());
EXPECT_FALSE(driver->on_is_page_translated_changed_called()); EXPECT_FALSE(driver.on_is_page_translated_changed_called());
EXPECT_FALSE(driver->on_translate_enabled_changed_called()); EXPECT_FALSE(driver.on_translate_enabled_changed_called());
// Translate. // Translate.
language_state.SetCurrentLanguage("en"); language_state.SetCurrentLanguage("en");
EXPECT_TRUE(language_state.IsPageTranslated()); EXPECT_TRUE(language_state.IsPageTranslated());
EXPECT_TRUE(driver->on_is_page_translated_changed_called()); EXPECT_TRUE(driver.on_is_page_translated_changed_called());
// Translate feature must be enabled after an actual translation. // Translate feature must be enabled after an actual translation.
EXPECT_TRUE(language_state.translate_enabled()); EXPECT_TRUE(language_state.translate_enabled());
EXPECT_TRUE(driver->on_translate_enabled_changed_called()); EXPECT_TRUE(driver.on_translate_enabled_changed_called());
} }
} // namespace translate } // namespace translate
...@@ -17,8 +17,8 @@ TranslateDownloadManager* TranslateDownloadManager::GetInstance() { ...@@ -17,8 +17,8 @@ TranslateDownloadManager* TranslateDownloadManager::GetInstance() {
} }
TranslateDownloadManager::TranslateDownloadManager() TranslateDownloadManager::TranslateDownloadManager()
: language_list_(new TranslateLanguageList), : language_list_(std::make_unique<TranslateLanguageList>()),
script_(new TranslateScript) {} script_(std::make_unique<TranslateScript>()) {}
TranslateDownloadManager::~TranslateDownloadManager() {} TranslateDownloadManager::~TranslateDownloadManager() {}
...@@ -71,8 +71,8 @@ void TranslateDownloadManager::ClearTranslateScriptForTesting() { ...@@ -71,8 +71,8 @@ void TranslateDownloadManager::ClearTranslateScriptForTesting() {
void TranslateDownloadManager::ResetForTesting() { void TranslateDownloadManager::ResetForTesting() {
DCHECK(sequence_checker_.CalledOnValidSequence()); DCHECK(sequence_checker_.CalledOnValidSequence());
language_list_.reset(new TranslateLanguageList); language_list_ = std::make_unique<TranslateLanguageList>();
script_.reset(new TranslateScript); script_ = std::make_unique<TranslateScript>();
url_loader_factory_ = nullptr; url_loader_factory_ = nullptr;
} }
......
...@@ -66,33 +66,32 @@ static void ExpectEqualLanguageLists( ...@@ -66,33 +66,32 @@ static void ExpectEqualLanguageLists(
class TranslatePrefsTest : public testing::Test { class TranslatePrefsTest : public testing::Test {
protected: protected:
TranslatePrefsTest() TranslatePrefsTest() {
: prefs_(new sync_preferences::TestingPrefServiceSyncable()) { language::LanguagePrefs::RegisterProfilePrefs(prefs_.registry());
language::LanguagePrefs::RegisterProfilePrefs(prefs_->registry()); TranslatePrefs::RegisterProfilePrefs(prefs_.registry());
TranslatePrefs::RegisterProfilePrefs(prefs_->registry());
translate_prefs_ = std::make_unique<translate::TranslatePrefs>( translate_prefs_ = std::make_unique<translate::TranslatePrefs>(
prefs_.get(), kAcceptLanguagesPref, kPreferredLanguagesPref); &prefs_, kAcceptLanguagesPref, kPreferredLanguagesPref);
now_ = base::Time::Now(); now_ = base::Time::Now();
two_days_ago_ = now_ - base::TimeDelta::FromDays(2); two_days_ago_ = now_ - base::TimeDelta::FromDays(2);
} }
void SetUp() override { void SetUp() override {
prefs_->SetString(kAcceptLanguagesPref, std::string()); prefs_.SetString(kAcceptLanguagesPref, std::string());
#if defined(OS_CHROMEOS) #if defined(OS_CHROMEOS)
prefs_->SetString(kPreferredLanguagesPref, std::string()); prefs_.SetString(kPreferredLanguagesPref, std::string());
#endif #endif
prefs_->registry()->RegisterBooleanPref( prefs_.registry()->RegisterBooleanPref(
prefs::kOfferTranslateEnabled, true, prefs::kOfferTranslateEnabled, true,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
} }
void SetLastDeniedTime(const std::string& language, base::Time time) { void SetLastDeniedTime(const std::string& language, base::Time time) {
DenialTimeUpdate update(prefs_.get(), language, 2); DenialTimeUpdate update(&prefs_, language, 2);
update.AddDenialTime(time); update.AddDenialTime(time);
} }
base::Time GetLastDeniedTime(const std::string& language) { base::Time GetLastDeniedTime(const std::string& language) {
DenialTimeUpdate update(prefs_.get(), language, 2); DenialTimeUpdate update(&prefs_, language, 2);
return update.GetOldestDenialTime(); return update.GetOldestDenialTime();
} }
...@@ -101,15 +100,15 @@ class TranslatePrefsTest : public testing::Test { ...@@ -101,15 +100,15 @@ class TranslatePrefsTest : public testing::Test {
void ExpectLanguagePrefs(const std::string& expected, void ExpectLanguagePrefs(const std::string& expected,
const std::string& expected_chromeos) const { const std::string& expected_chromeos) const {
if (expected.empty()) { if (expected.empty()) {
EXPECT_TRUE(prefs_->GetString(kAcceptLanguagesPref).empty()); EXPECT_TRUE(prefs_.GetString(kAcceptLanguagesPref).empty());
} else { } else {
EXPECT_EQ(expected, prefs_->GetString(kAcceptLanguagesPref)); EXPECT_EQ(expected, prefs_.GetString(kAcceptLanguagesPref));
} }
#if defined(OS_CHROMEOS) #if defined(OS_CHROMEOS)
if (expected_chromeos.empty()) { if (expected_chromeos.empty()) {
EXPECT_TRUE(prefs_->GetString(kPreferredLanguagesPref).empty()); EXPECT_TRUE(prefs_.GetString(kPreferredLanguagesPref).empty());
} else { } else {
EXPECT_EQ(expected_chromeos, prefs_->GetString(kPreferredLanguagesPref)); EXPECT_EQ(expected_chromeos, prefs_.GetString(kPreferredLanguagesPref));
} }
#endif #endif
} }
...@@ -123,7 +122,7 @@ class TranslatePrefsTest : public testing::Test { ...@@ -123,7 +122,7 @@ class TranslatePrefsTest : public testing::Test {
void ExpectBlockedLanguageListContent( void ExpectBlockedLanguageListContent(
const std::vector<std::string>& list) const { const std::vector<std::string>& list) const {
const base::ListValue* const blacklist = const base::ListValue* const blacklist =
prefs_->GetList(kTranslateBlockedLanguagesPref); prefs_.GetList(kTranslateBlockedLanguagesPref);
ExpectEqualLanguageLists(*blacklist, list); ExpectEqualLanguageLists(*blacklist, list);
} }
...@@ -164,7 +163,7 @@ class TranslatePrefsTest : public testing::Test { ...@@ -164,7 +163,7 @@ class TranslatePrefsTest : public testing::Test {
return result; return result;
} }
std::unique_ptr<sync_preferences::TestingPrefServiceSyncable> prefs_; sync_preferences::TestingPrefServiceSyncable prefs_;
std::unique_ptr<translate::TranslatePrefs> translate_prefs_; std::unique_ptr<translate::TranslatePrefs> translate_prefs_;
// Shared time constants. // Shared time constants.
...@@ -216,14 +215,14 @@ TEST_F(TranslatePrefsTest, UpdateLastDeniedTime) { ...@@ -216,14 +215,14 @@ TEST_F(TranslatePrefsTest, UpdateLastDeniedTime) {
// Test that the default value for non-existing entries is base::Time::Null(). // Test that the default value for non-existing entries is base::Time::Null().
TEST_F(TranslatePrefsTest, DenialTimeUpdate_DefaultTimeIsNull) { TEST_F(TranslatePrefsTest, DenialTimeUpdate_DefaultTimeIsNull) {
DenialTimeUpdate update(prefs_.get(), kTestLanguage, 2); DenialTimeUpdate update(&prefs_, kTestLanguage, 2);
EXPECT_TRUE(update.GetOldestDenialTime().is_null()); EXPECT_TRUE(update.GetOldestDenialTime().is_null());
} }
// Test that non-existing entries automatically create a ListValue. // Test that non-existing entries automatically create a ListValue.
TEST_F(TranslatePrefsTest, DenialTimeUpdate_ForceListExistence) { TEST_F(TranslatePrefsTest, DenialTimeUpdate_ForceListExistence) {
DictionaryPrefUpdate dict_update( DictionaryPrefUpdate dict_update(
prefs_.get(), TranslatePrefs::kPrefTranslateLastDeniedTimeForLanguage); &prefs_, TranslatePrefs::kPrefTranslateLastDeniedTimeForLanguage);
base::DictionaryValue* denial_dict = dict_update.Get(); base::DictionaryValue* denial_dict = dict_update.Get();
EXPECT_TRUE(denial_dict); EXPECT_TRUE(denial_dict);
...@@ -232,7 +231,7 @@ TEST_F(TranslatePrefsTest, DenialTimeUpdate_ForceListExistence) { ...@@ -232,7 +231,7 @@ TEST_F(TranslatePrefsTest, DenialTimeUpdate_ForceListExistence) {
EXPECT_FALSE(has_list); EXPECT_FALSE(has_list);
// Calling GetDenialTimes will force creation of a properly populated list. // Calling GetDenialTimes will force creation of a properly populated list.
DenialTimeUpdate update(prefs_.get(), kTestLanguage, 2); DenialTimeUpdate update(&prefs_, kTestLanguage, 2);
base::ListValue* time_list = update.GetDenialTimes(); base::ListValue* time_list = update.GetDenialTimes();
EXPECT_TRUE(time_list); EXPECT_TRUE(time_list);
EXPECT_EQ(0U, time_list->GetSize()); EXPECT_EQ(0U, time_list->GetSize());
...@@ -243,7 +242,7 @@ TEST_F(TranslatePrefsTest, DenialTimeUpdate_ForceListExistence) { ...@@ -243,7 +242,7 @@ TEST_F(TranslatePrefsTest, DenialTimeUpdate_ForceListExistence) {
TEST_F(TranslatePrefsTest, DenialTimeUpdate_Migrate) { TEST_F(TranslatePrefsTest, DenialTimeUpdate_Migrate) {
translate_prefs_->ResetDenialState(); translate_prefs_->ResetDenialState();
DictionaryPrefUpdate dict_update( DictionaryPrefUpdate dict_update(
prefs_.get(), TranslatePrefs::kPrefTranslateLastDeniedTimeForLanguage); &prefs_, TranslatePrefs::kPrefTranslateLastDeniedTimeForLanguage);
base::DictionaryValue* denial_dict = dict_update.Get(); base::DictionaryValue* denial_dict = dict_update.Get();
EXPECT_TRUE(denial_dict); EXPECT_TRUE(denial_dict);
denial_dict->SetDouble(kTestLanguage, two_days_ago_.ToJsTime()); denial_dict->SetDouble(kTestLanguage, two_days_ago_.ToJsTime());
...@@ -253,7 +252,7 @@ TEST_F(TranslatePrefsTest, DenialTimeUpdate_Migrate) { ...@@ -253,7 +252,7 @@ TEST_F(TranslatePrefsTest, DenialTimeUpdate_Migrate) {
EXPECT_FALSE(has_list); EXPECT_FALSE(has_list);
// Calling GetDenialTimes will force creation of a properly populated list. // Calling GetDenialTimes will force creation of a properly populated list.
DenialTimeUpdate update(prefs_.get(), kTestLanguage, 2); DenialTimeUpdate update(&prefs_, kTestLanguage, 2);
base::ListValue* time_list = update.GetDenialTimes(); base::ListValue* time_list = update.GetDenialTimes();
EXPECT_TRUE(time_list); EXPECT_TRUE(time_list);
...@@ -265,7 +264,7 @@ TEST_F(TranslatePrefsTest, DenialTimeUpdate_Migrate) { ...@@ -265,7 +264,7 @@ TEST_F(TranslatePrefsTest, DenialTimeUpdate_Migrate) {
} }
TEST_F(TranslatePrefsTest, DenialTimeUpdate_SlidingWindow) { TEST_F(TranslatePrefsTest, DenialTimeUpdate_SlidingWindow) {
DenialTimeUpdate update(prefs_.get(), kTestLanguage, 4); DenialTimeUpdate update(&prefs_, kTestLanguage, 4);
update.AddDenialTime(now_ - base::TimeDelta::FromMinutes(5)); update.AddDenialTime(now_ - base::TimeDelta::FromMinutes(5));
EXPECT_EQ(update.GetOldestDenialTime(), EXPECT_EQ(update.GetOldestDenialTime(),
...@@ -958,12 +957,12 @@ TEST_F(TranslatePrefsTest, DefaultBlockedLanguages) { ...@@ -958,12 +957,12 @@ TEST_F(TranslatePrefsTest, DefaultBlockedLanguages) {
} }
TEST_F(TranslatePrefsTest, CanTranslateLanguage) { TEST_F(TranslatePrefsTest, CanTranslateLanguage) {
prefs_->SetString(kAcceptLanguagesPref, "en"); prefs_.SetString(kAcceptLanguagesPref, "en");
TranslateDownloadManager::GetInstance()->set_application_locale("en"); TranslateDownloadManager::GetInstance()->set_application_locale("en");
translate_prefs_->ResetToDefaults(); translate_prefs_->ResetToDefaults();
TranslateAcceptLanguages translate_accept_languages(prefs_.get(), TranslateAcceptLanguages translate_accept_languages(&prefs_,
kAcceptLanguagesPref); kAcceptLanguagesPref);
// Unblocked language. // Unblocked language.
...@@ -991,8 +990,8 @@ TEST_F(TranslatePrefsTest, CanTranslateLanguage) { ...@@ -991,8 +990,8 @@ TEST_F(TranslatePrefsTest, CanTranslateLanguage) {
} }
TEST_F(TranslatePrefsTest, ForceTriggerOnEnglishPagesCount) { TEST_F(TranslatePrefsTest, ForceTriggerOnEnglishPagesCount) {
prefs_->SetInteger(kForceTriggerTranslateCountPref, prefs_.SetInteger(kForceTriggerTranslateCountPref,
std::numeric_limits<int>::max() - 1); std::numeric_limits<int>::max() - 1);
EXPECT_EQ(std::numeric_limits<int>::max() - 1, EXPECT_EQ(std::numeric_limits<int>::max() - 1,
translate_prefs_->GetForceTriggerOnEnglishPagesCount()); translate_prefs_->GetForceTriggerOnEnglishPagesCount());
......
...@@ -120,7 +120,7 @@ GURL TranslateScript::GetTranslateScriptURL() { ...@@ -120,7 +120,7 @@ GURL TranslateScript::GetTranslateScriptURL() {
void TranslateScript::OnScriptFetchComplete(bool success, void TranslateScript::OnScriptFetchComplete(bool success,
const std::string& data) { const std::string& data) {
std::unique_ptr<const TranslateURLFetcher> delete_ptr(fetcher_.release()); std::unique_ptr<const TranslateURLFetcher> delete_ptr(std::move(fetcher_));
if (success) { if (success) {
DCHECK(data_.empty()); DCHECK(data_.empty());
......
...@@ -26,8 +26,8 @@ class TranslateControllerTest : public PlatformTest, ...@@ -26,8 +26,8 @@ class TranslateControllerTest : public PlatformTest,
public TranslateController::Observer { public TranslateController::Observer {
protected: protected:
TranslateControllerTest() TranslateControllerTest()
: test_web_state_(new web::TestWebState), : test_web_state_(std::make_unique<web::TestWebState>()),
test_browser_state_(new web::TestBrowserState), test_browser_state_(std::make_unique<web::TestBrowserState>()),
fake_main_frame_(/*frame_id=*/"", /*is_main_frame=*/true, GURL()), fake_main_frame_(/*frame_id=*/"", /*is_main_frame=*/true, GURL()),
fake_iframe_(/*frame_id=*/"", /*is_main_frame=*/false, GURL()), fake_iframe_(/*frame_id=*/"", /*is_main_frame=*/false, GURL()),
error_type_(TranslateErrors::Type::NONE), error_type_(TranslateErrors::Type::NONE),
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment