• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2022 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.adservices.service.stats;
18 
19 import static org.junit.Assert.assertEquals;
20 
21 import android.adservices.common.AdServicesStatusUtils;
22 
23 import org.junit.Test;
24 
25 /** Unit tests for {@link RunAdScoringProcessReportedStats}. */
26 public class RunAdScoringProcessReportedStatsTest {
27     static final int GET_AD_SELECTION_LOGIC_LATENCY_IN_MILLIS = 10;
28     static final int FETCHED_AD_SELECTION_LOGIC_SCRIPT_SIZE_IN_BYTES = 20;
29     static final int GET_TRUSTED_SCORING_SIGNALS_LATENCY_IN_MILLIS = 10;
30     static final int FETCHED_TRUSTED_SCORING_SIGNALS_DATA_SIZE_IN_BYTES = 10;
31     static final int SCORE_ADS_LATENCY_IN_MILLIS = 5;
32     static final int GET_AD_SCORES_LATENCY_IN_MILLIS = 5;
33     static final int GET_AD_SELECTION_LOGIC_RESULT_CODE = AdServicesStatusUtils.STATUS_SUCCESS;
34     static final int GET_AD_SCORES_RESULT_CODE = AdServicesStatusUtils.STATUS_SUCCESS;
35     static final int GET_TRUSTED_SCORING_SIGNALS_RESULT_CODE = AdServicesStatusUtils.STATUS_SUCCESS;
36     static final int NUM_OF_CAS_ENTERING_SCORING = 5;
37     static final int NUM_OF_REMARKETING_ADS_ENTERING_SCORING = 6;
38     static final int NUM_OF_CONTEXTUAL_ADS_ENTERING_SCORING = 0;
39     static final int RUN_AD_SCORING_LATENCY_IN_MILLIS = 10;
40     static final int RUN_AD_SCORING_RESULT_CODE = AdServicesStatusUtils.STATUS_SUCCESS;
41     static final int GET_AD_SELECTION_LOGIC_SCRIPT_TYPE = AdServicesStatusUtils.STATUS_SUCCESS;
42 
43     @Test
testBuilderCreateSuccess()44     public void testBuilderCreateSuccess() {
45         RunAdScoringProcessReportedStats stats =
46                 RunAdScoringProcessReportedStats.builder()
47                         .setGetAdSelectionLogicLatencyInMillis(
48                                 GET_AD_SELECTION_LOGIC_LATENCY_IN_MILLIS)
49                         .setGetAdSelectionLogicResultCode(GET_AD_SELECTION_LOGIC_RESULT_CODE)
50                         .setGetAdSelectionLogicScriptType(GET_AD_SELECTION_LOGIC_SCRIPT_TYPE)
51                         .setFetchedAdSelectionLogicScriptSizeInBytes(
52                                 FETCHED_AD_SELECTION_LOGIC_SCRIPT_SIZE_IN_BYTES)
53                         .setGetTrustedScoringSignalsLatencyInMillis(
54                                 GET_TRUSTED_SCORING_SIGNALS_LATENCY_IN_MILLIS)
55                         .setGetTrustedScoringSignalsResultCode(
56                                 GET_TRUSTED_SCORING_SIGNALS_RESULT_CODE)
57                         .setFetchedTrustedScoringSignalsDataSizeInBytes(
58                                 FETCHED_TRUSTED_SCORING_SIGNALS_DATA_SIZE_IN_BYTES)
59                         .setScoreAdsLatencyInMillis(SCORE_ADS_LATENCY_IN_MILLIS)
60                         .setGetAdScoresLatencyInMillis(GET_AD_SCORES_LATENCY_IN_MILLIS)
61                         .setGetAdScoresResultCode(GET_AD_SCORES_RESULT_CODE)
62                         .setNumOfCasEnteringScoring(NUM_OF_CAS_ENTERING_SCORING)
63                         .setNumOfRemarketingAdsEnteringScoring(
64                                 NUM_OF_REMARKETING_ADS_ENTERING_SCORING)
65                         .setNumOfContextualAdsEnteringScoring(
66                                 NUM_OF_CONTEXTUAL_ADS_ENTERING_SCORING)
67                         .setRunAdScoringLatencyInMillis(RUN_AD_SCORING_LATENCY_IN_MILLIS)
68                         .setRunAdScoringResultCode(RUN_AD_SCORING_RESULT_CODE)
69                         .build();
70         assertEquals(
71                 GET_AD_SELECTION_LOGIC_LATENCY_IN_MILLIS,
72                 stats.getGetAdSelectionLogicLatencyInMillis());
73         assertEquals(GET_AD_SELECTION_LOGIC_RESULT_CODE, stats.getGetAdSelectionLogicResultCode());
74         assertEquals(GET_AD_SELECTION_LOGIC_SCRIPT_TYPE, stats.getGetAdSelectionLogicScriptType());
75         assertEquals(
76                 FETCHED_AD_SELECTION_LOGIC_SCRIPT_SIZE_IN_BYTES,
77                 stats.getFetchedAdSelectionLogicScriptSizeInBytes());
78         assertEquals(
79                 GET_TRUSTED_SCORING_SIGNALS_LATENCY_IN_MILLIS,
80                 stats.getGetTrustedScoringSignalsLatencyInMillis());
81         assertEquals(
82                 GET_TRUSTED_SCORING_SIGNALS_RESULT_CODE,
83                 stats.getGetTrustedScoringSignalsResultCode());
84         assertEquals(
85                 FETCHED_TRUSTED_SCORING_SIGNALS_DATA_SIZE_IN_BYTES,
86                 stats.getFetchedTrustedScoringSignalsDataSizeInBytes());
87         assertEquals(SCORE_ADS_LATENCY_IN_MILLIS, stats.getScoreAdsLatencyInMillis());
88         assertEquals(GET_AD_SCORES_LATENCY_IN_MILLIS, stats.getGetAdScoresLatencyInMillis());
89         assertEquals(GET_AD_SCORES_RESULT_CODE, stats.getGetAdScoresResultCode());
90         assertEquals(NUM_OF_CAS_ENTERING_SCORING, stats.getNumOfCasEnteringScoring());
91         assertEquals(
92                 NUM_OF_REMARKETING_ADS_ENTERING_SCORING,
93                 stats.getNumOfRemarketingAdsEnteringScoring());
94         assertEquals(
95                 NUM_OF_CONTEXTUAL_ADS_ENTERING_SCORING,
96                 stats.getNumOfContextualAdsEnteringScoring());
97         assertEquals(RUN_AD_SCORING_LATENCY_IN_MILLIS, stats.getRunAdScoringLatencyInMillis());
98         assertEquals(RUN_AD_SCORING_RESULT_CODE, stats.getRunAdScoringResultCode());
99     }
100 }
101