1 /*
2  * Copyright (C) 2024 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.common.logging.annotations;
18 
19 import static com.android.adservices.common.logging.annotations.ExpectErrorLogUtilCall.UNDEFINED_INT_PARAM;
20 import static com.android.adservices.common.logging.annotations.ExpectErrorLogUtilWithExceptionCall.Undefined;
21 
22 import static java.lang.annotation.ElementType.TYPE;
23 import static java.lang.annotation.RetentionPolicy.RUNTIME;
24 
25 import java.lang.annotation.Retention;
26 import java.lang.annotation.Target;
27 
28 /**
29  * Class level annotation that can be used to specify default expected parameters to be inherited by
30  * {@link ExpectErrorLogUtilCall} / {@link ExpectErrorLogUtilWithExceptionCall} if left unspecified.
31  *
32  * <p>Parameter(s) specified by the annotation over the test method will always take precedence.
33  */
34 @Retention(RUNTIME)
35 @Target(TYPE)
36 public @interface SetErrorLogUtilDefaultParams {
37     /** Default throwable to be used by {@link ExpectErrorLogUtilWithExceptionCall}. */
throwable()38     Class<? extends Throwable> throwable() default Undefined.class;
39 
40     /**
41      * Default error code to be used by {@link ExpectErrorLogUtilCall} / {@link
42      * ExpectErrorLogUtilWithExceptionCall}.
43      */
errorCode()44     int errorCode() default UNDEFINED_INT_PARAM;
45 
46     /**
47      * Default ppapi name code to be used by {@link ExpectErrorLogUtilCall} / {@link
48      * ExpectErrorLogUtilWithExceptionCall}.
49      */
ppapiName()50     int ppapiName() default UNDEFINED_INT_PARAM;
51 }
52