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

Side by Side Diff: components/translate/core/browser/translate_ranker_impl_unittest.cc

Issue 2697703004: Allow TranslateRanker to override decisions taken by heuristics. (Closed)
Patch Set: Make TranslateAcceptLanguages default constructor protected. Created 3 years, 8 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "components/translate/core/browser/translate_ranker_impl.h" 5 #include "components/translate/core/browser/translate_ranker_impl.h"
6 6
7 #include <initializer_list> 7 #include <initializer_list>
8 #include <memory> 8 #include <memory>
9 9
10 #include "base/feature_list.h" 10 #include "base/feature_list.h"
(...skipping 14 matching lines...) Expand all
25 #include "components/translate/core/browser/translate_prefs.h" 25 #include "components/translate/core/browser/translate_prefs.h"
26 #include "net/url_request/test_url_fetcher_factory.h" 26 #include "net/url_request/test_url_fetcher_factory.h"
27 #include "net/url_request/url_request_test_util.h" 27 #include "net/url_request/url_request_test_util.h"
28 #include "testing/gtest/include/gtest/gtest.h" 28 #include "testing/gtest/include/gtest/gtest.h"
29 29
30 namespace { 30 namespace {
31 31
32 using translate::kTranslateRankerEnforcement; 32 using translate::kTranslateRankerEnforcement;
33 using translate::kTranslateRankerLogging; 33 using translate::kTranslateRankerLogging;
34 using translate::kTranslateRankerQuery; 34 using translate::kTranslateRankerQuery;
35 using translate::kTranslateRankerDecisionOverride;
35 using translate::TranslateDownloadManager; 36 using translate::TranslateDownloadManager;
36 using translate::TranslateRankerFeatures; 37 using translate::TranslateRankerFeatures;
37 using translate::TranslatePrefs; 38 using translate::TranslatePrefs;
38 using translate::TranslateRankerImpl; 39 using translate::TranslateRankerImpl;
39 40
40 constexpr int kModelVersion = 1234; 41 constexpr int kModelVersion = 1234;
41 42
42 class TranslateRankerImplTest : public ::testing::Test { 43 class TranslateRankerImplTest : public ::testing::Test {
43 protected: 44 protected:
44 TranslateRankerImplTest(); 45 TranslateRankerImplTest();
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 return translate_event; 193 return translate_event;
193 } 194 }
194 195
195 } // namespace 196 } // namespace
196 197
197 TEST_F(TranslateRankerImplTest, DisabledByDefault) { 198 TEST_F(TranslateRankerImplTest, DisabledByDefault) {
198 InitFeatures({}, {}); 199 InitFeatures({}, {});
199 auto ranker = GetRankerForTest(0.5); 200 auto ranker = GetRankerForTest(0.5);
200 EXPECT_FALSE(ranker->IsQueryEnabled()); 201 EXPECT_FALSE(ranker->IsQueryEnabled());
201 EXPECT_FALSE(ranker->IsEnforcementEnabled()); 202 EXPECT_FALSE(ranker->IsEnforcementEnabled());
203 EXPECT_FALSE(ranker->IsDecisionOverrideEnabled());
202 EXPECT_TRUE(ranker->IsLoggingEnabled()); 204 EXPECT_TRUE(ranker->IsLoggingEnabled());
203 } 205 }
204 206
205 TEST_F(TranslateRankerImplTest, ExplicitlyDisabled) { 207 TEST_F(TranslateRankerImplTest, ExplicitlyDisabled) {
206 InitFeatures({}, {kTranslateRankerQuery, kTranslateRankerEnforcement, 208 InitFeatures({}, {kTranslateRankerQuery, kTranslateRankerEnforcement,
207 kTranslateRankerLogging}); 209 kTranslateRankerLogging, kTranslateRankerDecisionOverride});
208 auto ranker = GetRankerForTest(0.5); 210 auto ranker = GetRankerForTest(0.5);
209 EXPECT_FALSE(ranker->IsQueryEnabled()); 211 EXPECT_FALSE(ranker->IsQueryEnabled());
210 EXPECT_FALSE(ranker->IsEnforcementEnabled()); 212 EXPECT_FALSE(ranker->IsEnforcementEnabled());
213 EXPECT_FALSE(ranker->IsDecisionOverrideEnabled());
211 EXPECT_FALSE(ranker->IsLoggingEnabled()); 214 EXPECT_FALSE(ranker->IsLoggingEnabled());
212 } 215 }
213 216
214 TEST_F(TranslateRankerImplTest, EnableQuery) { 217 TEST_F(TranslateRankerImplTest, EnableQuery) {
215 InitFeatures({kTranslateRankerQuery}, {kTranslateRankerEnforcement}); 218 InitFeatures({kTranslateRankerQuery}, {kTranslateRankerEnforcement});
216 auto ranker = GetRankerForTest(0.5); 219 auto ranker = GetRankerForTest(0.5);
217 EXPECT_TRUE(ranker->IsQueryEnabled()); 220 EXPECT_TRUE(ranker->IsQueryEnabled());
218 EXPECT_FALSE(ranker->IsEnforcementEnabled()); 221 EXPECT_FALSE(ranker->IsEnforcementEnabled());
222 EXPECT_FALSE(ranker->IsDecisionOverrideEnabled());
219 EXPECT_TRUE(ranker->IsLoggingEnabled()); 223 EXPECT_TRUE(ranker->IsLoggingEnabled());
220 } 224 }
221 225
222 TEST_F(TranslateRankerImplTest, EnableEnforcement) { 226 TEST_F(TranslateRankerImplTest, EnableEnforcement) {
223 InitFeatures({kTranslateRankerEnforcement}, {kTranslateRankerQuery}); 227 InitFeatures({kTranslateRankerEnforcement}, {kTranslateRankerQuery});
224 auto ranker = GetRankerForTest(0.5); 228 auto ranker = GetRankerForTest(0.5);
225 EXPECT_FALSE(ranker->IsQueryEnabled()); 229 EXPECT_FALSE(ranker->IsQueryEnabled());
226 EXPECT_TRUE(ranker->IsEnforcementEnabled()); 230 EXPECT_TRUE(ranker->IsEnforcementEnabled());
231 EXPECT_FALSE(ranker->IsDecisionOverrideEnabled());
227 EXPECT_TRUE(ranker->IsLoggingEnabled()); 232 EXPECT_TRUE(ranker->IsLoggingEnabled());
228 } 233 }
229 234
230 TEST_F(TranslateRankerImplTest, EnableQueryAndEnforcement) { 235 TEST_F(TranslateRankerImplTest, EnableQueryAndEnforcement) {
231 InitFeatures({kTranslateRankerQuery, kTranslateRankerEnforcement}, {}); 236 InitFeatures({kTranslateRankerQuery, kTranslateRankerEnforcement}, {});
232 auto ranker = GetRankerForTest(0.5); 237 auto ranker = GetRankerForTest(0.5);
233 EXPECT_TRUE(ranker->IsQueryEnabled()); 238 EXPECT_TRUE(ranker->IsQueryEnabled());
234 EXPECT_TRUE(ranker->IsEnforcementEnabled()); 239 EXPECT_TRUE(ranker->IsEnforcementEnabled());
240 EXPECT_FALSE(ranker->IsDecisionOverrideEnabled());
235 EXPECT_TRUE(ranker->IsLoggingEnabled()); 241 EXPECT_TRUE(ranker->IsLoggingEnabled());
236 } 242 }
237 243
244 TEST_F(TranslateRankerImplTest, EnableDecisionOverride) {
245 InitFeatures({kTranslateRankerDecisionOverride}, {});
246 auto ranker = GetRankerForTest(0.5);
247 EXPECT_FALSE(ranker->IsQueryEnabled());
248 EXPECT_FALSE(ranker->IsEnforcementEnabled());
249 EXPECT_TRUE(ranker->IsDecisionOverrideEnabled());
250 EXPECT_TRUE(ranker->IsLoggingEnabled());
251 }
252
238 TEST_F(TranslateRankerImplTest, EnableLogging) { 253 TEST_F(TranslateRankerImplTest, EnableLogging) {
239 InitFeatures({kTranslateRankerLogging}, {}); 254 InitFeatures({kTranslateRankerLogging}, {});
240 auto ranker = GetRankerForTest(0.5); 255 auto ranker = GetRankerForTest(0.5);
241 EXPECT_FALSE(ranker->IsQueryEnabled()); 256 EXPECT_FALSE(ranker->IsQueryEnabled());
242 EXPECT_FALSE(ranker->IsEnforcementEnabled()); 257 EXPECT_FALSE(ranker->IsEnforcementEnabled());
258 EXPECT_FALSE(ranker->IsDecisionOverrideEnabled());
243 EXPECT_TRUE(ranker->IsLoggingEnabled()); 259 EXPECT_TRUE(ranker->IsLoggingEnabled());
244 } 260 }
245 261
246 TEST_F(TranslateRankerImplTest, DisableLogging) { 262 TEST_F(TranslateRankerImplTest, DisableLogging) {
247 InitFeatures({}, {kTranslateRankerLogging}); 263 InitFeatures({}, {kTranslateRankerLogging});
248 auto ranker = GetRankerForTest(0.5); 264 auto ranker = GetRankerForTest(0.5);
249 EXPECT_FALSE(ranker->IsQueryEnabled()); 265 EXPECT_FALSE(ranker->IsQueryEnabled());
250 EXPECT_FALSE(ranker->IsEnforcementEnabled()); 266 EXPECT_FALSE(ranker->IsEnforcementEnabled());
267 EXPECT_FALSE(ranker->IsDecisionOverrideEnabled());
251 EXPECT_FALSE(ranker->IsLoggingEnabled()); 268 EXPECT_FALSE(ranker->IsLoggingEnabled());
252 } 269 }
253 270
254 TEST_F(TranslateRankerImplTest, EnableAll) { 271 TEST_F(TranslateRankerImplTest, EnableAll) {
255 InitFeatures({kTranslateRankerQuery, kTranslateRankerEnforcement, 272 InitFeatures({kTranslateRankerQuery, kTranslateRankerEnforcement,
256 kTranslateRankerLogging}, 273 kTranslateRankerLogging, kTranslateRankerDecisionOverride},
257 {}); 274 {});
258 auto ranker = GetRankerForTest(0.5); 275 auto ranker = GetRankerForTest(0.5);
259 EXPECT_TRUE(ranker->IsQueryEnabled()); 276 EXPECT_TRUE(ranker->IsQueryEnabled());
260 EXPECT_TRUE(ranker->IsEnforcementEnabled()); 277 EXPECT_TRUE(ranker->IsEnforcementEnabled());
278 EXPECT_TRUE(ranker->IsDecisionOverrideEnabled());
261 EXPECT_TRUE(ranker->IsLoggingEnabled()); 279 EXPECT_TRUE(ranker->IsLoggingEnabled());
262 } 280 }
263 281
264 TEST_F(TranslateRankerImplTest, GetVersion) { 282 TEST_F(TranslateRankerImplTest, GetVersion) {
265 InitFeatures({kTranslateRankerQuery}, {}); 283 InitFeatures({kTranslateRankerQuery}, {});
266 auto ranker = GetRankerForTest(0.01f); 284 auto ranker = GetRankerForTest(0.01f);
267 EXPECT_TRUE(ranker->CheckModelLoaderForTesting()); 285 EXPECT_TRUE(ranker->CheckModelLoaderForTesting());
268 EXPECT_EQ(kModelVersion, ranker->GetModelVersion()); 286 EXPECT_EQ(kModelVersion, ranker->GetModelVersion());
269 } 287 }
270 288
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
369 ranker->EnableLogging(false); 387 ranker->EnableLogging(false);
370 388
371 ranker->AddTranslateEvent(CreateTranslateEvent("fr", "en", 1, 0, 3)); 389 ranker->AddTranslateEvent(CreateTranslateEvent("fr", "en", 1, 0, 3));
372 ranker->AddTranslateEvent(CreateTranslateEvent("jp", "en", 2, 0, 3)); 390 ranker->AddTranslateEvent(CreateTranslateEvent("jp", "en", 2, 0, 3));
373 ranker->AddTranslateEvent(CreateTranslateEvent("es", "de", 4, 5, 6)); 391 ranker->AddTranslateEvent(CreateTranslateEvent("es", "de", 4, 5, 6));
374 392
375 // Logging is disabled, so no events should be cached. 393 // Logging is disabled, so no events should be cached.
376 ranker->FlushTranslateEvents(&flushed_events); 394 ranker->FlushTranslateEvents(&flushed_events);
377 EXPECT_EQ(0U, flushed_events.size()); 395 EXPECT_EQ(0U, flushed_events.size());
378 } 396 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698