• 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 com.android.adservices.service.stats.AdServicesStatsLog.RUN_AD_BIDDING_PER_CAPROCESS_REPORTED__BUYER_DECISION_LOGIC_SCRIPT_TYPE__JAVASCRIPT;
20 
21 import static org.junit.Assert.assertEquals;
22 
23 import android.adservices.common.AdServicesStatusUtils;
24 
25 import org.junit.Test;
26 
27 /** Unit tests for {@link RunAdBiddingPerCAProcessReportedStats}. */
28 public class RunAdBiddingPerCAProcessReportedStatsTest {
29     static final int NUM_OF_ADS_FOR_BIDDING = 10;
30     static final int RUN_AD_BIDDING_PER_CA_LATENCY_IN_MILLIS = 5;
31     static final int RUN_AD_BIDDING_PER_CA_RESULT_CODE = AdServicesStatusUtils.STATUS_SUCCESS;
32     static final int GET_BUYER_DECISION_LOGIC_LATENCY_IN_MILLIS = 5;
33     static final int GET_BUYER_DECISION_LOGIC_RESULT_CODE = AdServicesStatusUtils.STATUS_SUCCESS;
34     static final int BUYER_DECISION_LOGIC_SCRIPT_TYPE =
35             RUN_AD_BIDDING_PER_CAPROCESS_REPORTED__BUYER_DECISION_LOGIC_SCRIPT_TYPE__JAVASCRIPT;
36     static final int FETCHED_BUYER_DECISION_LOGIC_SCRIPT_SIZE_IN_BYTES = 10;
37     static final int NUM_OF_KEYS_OF_TRUSTED_BIDDING_SIGNALS = 10;
38     static final int FETCHED_TRUSTED_BIDDING_SIGNALS_DATA_SIZE_IN_BYTES = 10;
39     static final int GET_TRUSTED_BIDDING_SIGNALS_LATENCY_IN_MILLIS = 5;
40     static final int GENERATE_BIDS_LATENCY_IN_MILLIS = 10;
41     static final int RUN_BIDDING_LATENCY_IN_MILLIS = 5;
42     static final int RUN_BIDDING_RESULT_CODE = AdServicesStatusUtils.STATUS_SUCCESS;
43     static final int GET_TRUSTED_BIDDING_SIGNALS_RESULT_CODE = AdServicesStatusUtils.STATUS_SUCCESS;
44 
45     @Test
testBuilderCreateSuccess()46     public void testBuilderCreateSuccess() {
47         RunAdBiddingPerCAProcessReportedStats stats =
48                 RunAdBiddingPerCAProcessReportedStats.builder()
49                         .setNumOfAdsForBidding(NUM_OF_ADS_FOR_BIDDING)
50                         .setRunAdBiddingPerCaLatencyInMillis(
51                                 RUN_AD_BIDDING_PER_CA_LATENCY_IN_MILLIS)
52                         .setRunAdBiddingPerCaResultCode(RUN_AD_BIDDING_PER_CA_RESULT_CODE)
53                         .setGetBuyerDecisionLogicLatencyInMillis(
54                                 GET_BUYER_DECISION_LOGIC_LATENCY_IN_MILLIS)
55                         .setGetBuyerDecisionLogicResultCode(GET_BUYER_DECISION_LOGIC_RESULT_CODE)
56                         .setBuyerDecisionLogicScriptType(BUYER_DECISION_LOGIC_SCRIPT_TYPE)
57                         .setFetchedBuyerDecisionLogicScriptSizeInBytes(
58                                 FETCHED_BUYER_DECISION_LOGIC_SCRIPT_SIZE_IN_BYTES)
59                         .setNumOfKeysOfTrustedBiddingSignals(NUM_OF_KEYS_OF_TRUSTED_BIDDING_SIGNALS)
60                         .setFetchedTrustedBiddingSignalsDataSizeInBytes(
61                                 FETCHED_TRUSTED_BIDDING_SIGNALS_DATA_SIZE_IN_BYTES)
62                         .setGetTrustedBiddingSignalsLatencyInMillis(
63                                 GET_TRUSTED_BIDDING_SIGNALS_LATENCY_IN_MILLIS)
64                         .setGetTrustedBiddingSignalsResultCode(
65                                 GET_TRUSTED_BIDDING_SIGNALS_RESULT_CODE)
66                         .setGenerateBidsLatencyInMillis(GENERATE_BIDS_LATENCY_IN_MILLIS)
67                         .setRunBiddingLatencyInMillis(RUN_BIDDING_LATENCY_IN_MILLIS)
68                         .setRunBiddingResultCode(RUN_BIDDING_RESULT_CODE)
69                         .build();
70         assertEquals(NUM_OF_ADS_FOR_BIDDING, stats.getNumOfAdsForBidding());
71         assertEquals(
72                 RUN_AD_BIDDING_PER_CA_LATENCY_IN_MILLIS,
73                 stats.getRunAdBiddingPerCaLatencyInMillis());
74         assertEquals(RUN_AD_BIDDING_PER_CA_RESULT_CODE, stats.getRunAdBiddingPerCaResultCode());
75         assertEquals(
76                 GET_BUYER_DECISION_LOGIC_LATENCY_IN_MILLIS,
77                 stats.getGetBuyerDecisionLogicLatencyInMillis());
78         assertEquals(
79                 GET_BUYER_DECISION_LOGIC_RESULT_CODE, stats.getGetBuyerDecisionLogicResultCode());
80         assertEquals(BUYER_DECISION_LOGIC_SCRIPT_TYPE, stats.getBuyerDecisionLogicScriptType());
81         assertEquals(
82                 FETCHED_BUYER_DECISION_LOGIC_SCRIPT_SIZE_IN_BYTES,
83                 stats.getFetchedBuyerDecisionLogicScriptSizeInBytes());
84         assertEquals(
85                 NUM_OF_KEYS_OF_TRUSTED_BIDDING_SIGNALS,
86                 stats.getNumOfKeysOfTrustedBiddingSignals());
87         assertEquals(
88                 FETCHED_TRUSTED_BIDDING_SIGNALS_DATA_SIZE_IN_BYTES,
89                 stats.getFetchedTrustedBiddingSignalsDataSizeInBytes());
90         assertEquals(
91                 GET_TRUSTED_BIDDING_SIGNALS_LATENCY_IN_MILLIS,
92                 stats.getGetTrustedBiddingSignalsLatencyInMillis());
93         assertEquals(
94                 GET_TRUSTED_BIDDING_SIGNALS_RESULT_CODE,
95                 stats.getGetTrustedBiddingSignalsResultCode());
96         assertEquals(GENERATE_BIDS_LATENCY_IN_MILLIS, stats.getGenerateBidsLatencyInMillis());
97         assertEquals(RUN_BIDDING_LATENCY_IN_MILLIS, stats.getRunBiddingLatencyInMillis());
98         assertEquals(RUN_BIDDING_RESULT_CODE, stats.getRunBiddingResultCode());
99     }
100 }
101