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.measurement;
18 
19 import android.net.Uri;
20 
21 import com.android.adservices.service.measurement.registration.AsyncRedirect;
22 import com.android.adservices.service.measurement.registration.AsyncRegistration;
23 
24 import java.util.UUID;
25 
26 public class AsyncRegistrationFixture {
AsyncRegistrationFixture()27     private AsyncRegistrationFixture() {}
28 
getValidAsyncRegistrationBuilder()29     public static AsyncRegistration.Builder getValidAsyncRegistrationBuilder() {
30         return new AsyncRegistration.Builder()
31                 .setId(UUID.randomUUID().toString())
32                 .setRegistrationUri(ValidAsyncRegistrationParams.REGISTRATION_URI)
33                 .setOsDestination(ValidAsyncRegistrationParams.OS_DESTINATION)
34                 .setWebDestination(ValidAsyncRegistrationParams.WEB_DESTINATION)
35                 .setVerifiedDestination(ValidAsyncRegistrationParams.VERIFIED_DESTINATION)
36                 .setRegistrant(ValidAsyncRegistrationParams.REGISTRANT)
37                 .setTopOrigin(ValidAsyncRegistrationParams.TOP_ORIGIN)
38                 .setSourceType(ValidAsyncRegistrationParams.SOURCE_TYPE)
39                 .setRequestTime(System.currentTimeMillis())
40                 .setRetryCount(ValidAsyncRegistrationParams.RETRY_COUNT)
41                 .setType(ValidAsyncRegistrationParams.TYPE)
42                 .setDebugKeyAllowed(ValidAsyncRegistrationParams.DEBUG_KEY_ALLOWED)
43                 .setRegistrationId(ValidAsyncRegistrationParams.REGISTRATION_ID)
44                 .setPostBody(ValidAsyncRegistrationParams.POST_BODY)
45                 .setRedirectBehavior(ValidAsyncRegistrationParams.REDIRECT_BEHAVIOR);
46     }
47 
getValidAsyncRegistration()48     public static AsyncRegistration getValidAsyncRegistration() {
49         return getValidAsyncRegistrationBuilder().build();
50     }
51 
52     public static class ValidAsyncRegistrationParams {
53         public static final Source.SourceType SOURCE_TYPE = Source.SourceType.EVENT;
54         public static final long RETRY_COUNT = 0;
55         public static final Uri REGISTRATION_URI = Uri.parse("android-app://com.example");
56         public static final Uri OS_DESTINATION = Uri.parse("android-app://com.example");
57         public static final Uri WEB_DESTINATION = Uri.parse("https://com.example");
58         public static final Uri VERIFIED_DESTINATION = Uri.parse("android-app://com.example");
59         public static final Uri REGISTRANT = Uri.parse("android-app://com.example");
60         public static final Uri TOP_ORIGIN = Uri.parse("android-app://com.example");
61         public static final boolean DEBUG_KEY_ALLOWED = true;
62         public static final AsyncRegistration.RegistrationType TYPE =
63                 AsyncRegistration.RegistrationType.APP_SOURCE;
64         public static final String REGISTRATION_ID = "R1";
65         public static final String PLATFORM_AD_ID = "test-platform-ad-id";
66         public static final String POST_BODY = "{\"ad_location\":\"bottom_right\"}";
67         public static final AsyncRedirect.RedirectBehavior REDIRECT_BEHAVIOR =
68                 AsyncRedirect.RedirectBehavior.AS_IS;
69     }
70 }
71