OLD | NEW |
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" |
11 #include "base/memory/ptr_util.h" | 11 #include "base/memory/ptr_util.h" |
12 #include "base/run_loop.h" | 12 #include "base/run_loop.h" |
13 #include "base/strings/stringprintf.h" | 13 #include "base/strings/stringprintf.h" |
14 #include "base/task_scheduler/post_task.h" | 14 #include "base/task_scheduler/post_task.h" |
15 #include "base/test/scoped_feature_list.h" | 15 #include "base/test/scoped_feature_list.h" |
16 #include "base/test/scoped_task_environment.h" | 16 #include "base/test/scoped_task_environment.h" |
| 17 #include "components/machine_intelligence/proto/ranker_model.pb.h" |
| 18 #include "components/machine_intelligence/proto/translate_ranker_model.pb.h" |
| 19 #include "components/machine_intelligence/ranker_model.h" |
17 #include "components/metrics/proto/translate_event.pb.h" | 20 #include "components/metrics/proto/translate_event.pb.h" |
18 #include "components/metrics/proto/ukm/source.pb.h" | 21 #include "components/metrics/proto/ukm/source.pb.h" |
19 #include "components/translate/core/browser/proto/ranker_model.pb.h" | |
20 #include "components/translate/core/browser/proto/translate_ranker_model.pb.h" | |
21 #include "components/translate/core/browser/ranker_model.h" | |
22 #include "components/ukm/test_ukm_recorder.h" | 22 #include "components/ukm/test_ukm_recorder.h" |
23 #include "components/ukm/ukm_source.h" | 23 #include "components/ukm/ukm_source.h" |
24 #include "net/url_request/test_url_fetcher_factory.h" | 24 #include "net/url_request/test_url_fetcher_factory.h" |
25 #include "net/url_request/url_request_test_util.h" | 25 #include "net/url_request/url_request_test_util.h" |
26 #include "testing/gtest/include/gtest/gtest.h" | 26 #include "testing/gtest/include/gtest/gtest.h" |
27 #include "url/gurl.h" | 27 #include "url/gurl.h" |
28 | 28 |
29 namespace { | 29 namespace { |
30 | 30 |
31 using translate::kTranslateRankerEnforcement; | 31 using translate::kTranslateRankerEnforcement; |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 TranslateRankerImplTest::TranslateRankerImplTest() {} | 87 TranslateRankerImplTest::TranslateRankerImplTest() {} |
88 | 88 |
89 void TranslateRankerImplTest::InitFeatures( | 89 void TranslateRankerImplTest::InitFeatures( |
90 const std::initializer_list<base::Feature>& enabled, | 90 const std::initializer_list<base::Feature>& enabled, |
91 const std::initializer_list<base::Feature>& disabled) { | 91 const std::initializer_list<base::Feature>& disabled) { |
92 scoped_feature_list_.InitWithFeatures(enabled, disabled); | 92 scoped_feature_list_.InitWithFeatures(enabled, disabled); |
93 } | 93 } |
94 | 94 |
95 std::unique_ptr<TranslateRankerImpl> TranslateRankerImplTest::GetRankerForTest( | 95 std::unique_ptr<TranslateRankerImpl> TranslateRankerImplTest::GetRankerForTest( |
96 float threshold) { | 96 float threshold) { |
97 auto model = base::MakeUnique<chrome_intelligence::RankerModel>(); | 97 auto model = base::MakeUnique<machine_intelligence::RankerModel>(); |
98 model->mutable_proto()->mutable_translate()->set_version(kModelVersion); | 98 model->mutable_proto()->mutable_translate()->set_version(kModelVersion); |
99 auto* details = model->mutable_proto() | 99 auto* details = model->mutable_proto() |
100 ->mutable_translate() | 100 ->mutable_translate() |
101 ->mutable_logistic_regression_model(); | 101 ->mutable_logistic_regression_model(); |
102 if (threshold > 0.0) { | 102 if (threshold > 0.0) { |
103 details->set_threshold(threshold); | 103 details->set_threshold(threshold); |
104 } | 104 } |
105 details->set_bias(0.5f); | 105 details->set_bias(0.5f); |
106 details->set_accept_ratio_weight(0.02f); | 106 details->set_accept_ratio_weight(0.02f); |
107 details->set_decline_ratio_weight(0.03f); | 107 details->set_decline_ratio_weight(0.03f); |
(...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
502 std::vector<metrics::TranslateEventProto> flushed_events; | 502 std::vector<metrics::TranslateEventProto> flushed_events; |
503 ranker->FlushTranslateEvents(&flushed_events); | 503 ranker->FlushTranslateEvents(&flushed_events); |
504 | 504 |
505 EXPECT_EQ(1U, flushed_events.size()); | 505 EXPECT_EQ(1U, flushed_events.size()); |
506 ASSERT_EQ(1, flushed_events[0].decision_overrides_size()); | 506 ASSERT_EQ(1, flushed_events[0].decision_overrides_size()); |
507 ASSERT_EQ(kOverrideType, flushed_events[0].decision_overrides(0)); | 507 ASSERT_EQ(kOverrideType, flushed_events[0].decision_overrides(0)); |
508 ASSERT_EQ(kEventType, flushed_events[0].event_type()); | 508 ASSERT_EQ(kEventType, flushed_events[0].event_type()); |
509 EXPECT_EQ(metrics::TranslateEventProto::DONT_SHOW, | 509 EXPECT_EQ(metrics::TranslateEventProto::DONT_SHOW, |
510 flushed_events[0].ranker_response()); | 510 flushed_events[0].ranker_response()); |
511 } | 511 } |
OLD | NEW |