diff options
Diffstat (limited to 'icing/scoring/scoring-processor_test.cc')
-rw-r--r-- | icing/scoring/scoring-processor_test.cc | 72 |
1 files changed, 48 insertions, 24 deletions
diff --git a/icing/scoring/scoring-processor_test.cc b/icing/scoring/scoring-processor_test.cc index 10f3eb5..644e013 100644 --- a/icing/scoring/scoring-processor_test.cc +++ b/icing/scoring/scoring-processor_test.cc @@ -108,6 +108,8 @@ class ScoringProcessorTest SchemaStore* schema_store() { return schema_store_.get(); } + const FakeClock& fake_clock() const { return fake_clock_; } + private: const std::string test_dir_; const std::string doc_store_dir_; @@ -184,23 +186,27 @@ PropertyWeight CreatePropertyWeight(std::string path, double weight) { TEST_F(ScoringProcessorTest, CreationWithNullDocumentStoreShouldFail) { ScoringSpecProto spec_proto; - EXPECT_THAT(ScoringProcessor::Create(spec_proto, /*document_store=*/nullptr, - schema_store()), + EXPECT_THAT(ScoringProcessor::Create( + spec_proto, /*document_store=*/nullptr, schema_store(), + fake_clock().GetSystemTimeMilliseconds()), StatusIs(libtextclassifier3::StatusCode::FAILED_PRECONDITION)); } TEST_F(ScoringProcessorTest, CreationWithNullSchemaStoreShouldFail) { ScoringSpecProto spec_proto; - EXPECT_THAT(ScoringProcessor::Create(spec_proto, document_store(), - /*schema_store=*/nullptr), - StatusIs(libtextclassifier3::StatusCode::FAILED_PRECONDITION)); + EXPECT_THAT( + ScoringProcessor::Create(spec_proto, document_store(), + /*schema_store=*/nullptr, + fake_clock().GetSystemTimeMilliseconds()), + StatusIs(libtextclassifier3::StatusCode::FAILED_PRECONDITION)); } TEST_P(ScoringProcessorTest, ShouldCreateInstance) { ScoringSpecProto spec_proto = CreateScoringSpecForRankingStrategy( ScoringSpecProto::RankingStrategy::DOCUMENT_SCORE, GetParam()); ICING_EXPECT_OK( - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); } TEST_P(ScoringProcessorTest, ShouldHandleEmptyDocHitIterator) { @@ -215,7 +221,8 @@ TEST_P(ScoringProcessorTest, ShouldHandleEmptyDocHitIterator) { // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); EXPECT_THAT(scoring_processor->Score(std::move(doc_hit_info_iterator), /*num_to_score=*/5), @@ -241,7 +248,8 @@ TEST_P(ScoringProcessorTest, ShouldHandleNonPositiveNumToScore) { // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); EXPECT_THAT(scoring_processor->Score(std::move(doc_hit_info_iterator), /*num_to_score=*/-1), @@ -271,7 +279,8 @@ TEST_P(ScoringProcessorTest, ShouldRespectNumToScore) { // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); EXPECT_THAT(scoring_processor->Score(std::move(doc_hit_info_iterator), /*num_to_score=*/2), @@ -303,7 +312,8 @@ TEST_P(ScoringProcessorTest, ShouldScoreByDocumentScore) { // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); EXPECT_THAT(scoring_processor->Score(std::move(doc_hit_info_iterator), /*num_to_score=*/3), @@ -358,7 +368,8 @@ TEST_P(ScoringProcessorTest, // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); std::unordered_map<std::string, std::unique_ptr<DocHitInfoIterator>> query_term_iterators; @@ -427,7 +438,8 @@ TEST_P(ScoringProcessorTest, // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); std::unordered_map<std::string, std::unique_ptr<DocHitInfoIterator>> query_term_iterators; @@ -500,7 +512,8 @@ TEST_P(ScoringProcessorTest, // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); std::unordered_map<std::string, std::unique_ptr<DocHitInfoIterator>> query_term_iterators; @@ -549,7 +562,8 @@ TEST_P(ScoringProcessorTest, // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); std::unordered_map<std::string, std::unique_ptr<DocHitInfoIterator>> query_term_iterators; @@ -614,7 +628,8 @@ TEST_P(ScoringProcessorTest, // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); std::unordered_map<std::string, std::unique_ptr<DocHitInfoIterator>> query_term_iterators; @@ -684,7 +699,8 @@ TEST_P(ScoringProcessorTest, // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); std::unordered_map<std::string, std::unique_ptr<DocHitInfoIterator>> query_term_iterators; @@ -745,7 +761,8 @@ TEST_P(ScoringProcessorTest, // Creates a ScoringProcessor with no explicit weights set. ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); ScoringSpecProto spec_proto_with_weights = CreateScoringSpecForRankingStrategy( @@ -761,7 +778,8 @@ TEST_P(ScoringProcessorTest, ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor_with_weights, ScoringProcessor::Create(spec_proto_with_weights, document_store(), - schema_store())); + schema_store(), + fake_clock().GetSystemTimeMilliseconds())); std::unordered_map<std::string, std::unique_ptr<DocHitInfoIterator>> query_term_iterators; @@ -847,7 +865,8 @@ TEST_P(ScoringProcessorTest, // Creates a ScoringProcessor ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); std::unordered_map<std::string, std::unique_ptr<DocHitInfoIterator>> query_term_iterators; @@ -909,7 +928,8 @@ TEST_P(ScoringProcessorTest, ShouldScoreByCreationTimestamp) { // Creates a ScoringProcessor which ranks in descending order ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); EXPECT_THAT(scoring_processor->Score(std::move(doc_hit_info_iterator), /*num_to_score=*/3), @@ -969,7 +989,8 @@ TEST_P(ScoringProcessorTest, ShouldScoreByUsageCount) { // Creates a ScoringProcessor which ranks in descending order ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); EXPECT_THAT(scoring_processor->Score(std::move(doc_hit_info_iterator), /*num_to_score=*/3), @@ -1029,7 +1050,8 @@ TEST_P(ScoringProcessorTest, ShouldScoreByUsageTimestamp) { // Creates a ScoringProcessor which ranks in descending order ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); EXPECT_THAT(scoring_processor->Score(std::move(doc_hit_info_iterator), /*num_to_score=*/3), @@ -1065,7 +1087,8 @@ TEST_P(ScoringProcessorTest, ShouldHandleNoScores) { // Creates a ScoringProcessor which ranks in descending order ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); EXPECT_THAT(scoring_processor->Score(std::move(doc_hit_info_iterator), /*num_to_score=*/4), ElementsAre(EqualsScoredDocumentHit(scored_document_hit_default), @@ -1114,7 +1137,8 @@ TEST_P(ScoringProcessorTest, ShouldWrapResultsWhenNoScoring) { // Creates a ScoringProcessor which ranks in descending order ICING_ASSERT_OK_AND_ASSIGN( std::unique_ptr<ScoringProcessor> scoring_processor, - ScoringProcessor::Create(spec_proto, document_store(), schema_store())); + ScoringProcessor::Create(spec_proto, document_store(), schema_store(), + fake_clock().GetSystemTimeMilliseconds())); EXPECT_THAT(scoring_processor->Score(std::move(doc_hit_info_iterator), /*num_to_score=*/3), |