1 /* 2 * Copyright (C) 2019 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 package com.android.wallpaper.testing; 17 18 import android.content.Intent; 19 20 import com.android.wallpaper.module.UserEventLogger; 21 import com.android.wallpaper.module.WallpaperPersister.WallpaperPosition; 22 23 /** 24 * Test implementation of {@link UserEventLogger}. 25 */ 26 public class TestUserEventLogger implements UserEventLogger { 27 28 private int mNumDailyRefreshTurnedOnEvents; 29 private int mNumCurrentWallpaperPreviewedEvents; 30 private int mNumActionClickedEvents; 31 private int mNumIndividualWallpaperSelectedEvents; 32 private int mNumCategorySelectedEvents; 33 private int mNumWallpaperSetEvents; 34 private int mNumWallpaperSetResultEvents; 35 private String mLastCollectionId; 36 private String mLastWallpaperId; 37 @WallpaperSetResult 38 private int mLastWallpaperSetResult; 39 private int mLastDailyRotationHour; 40 private int mNum1DayActiveLogs; 41 private int mNum7DayActiveLogs; 42 private int mNum14DayActiveLogs; 43 private int mNum28DayActiveLogs; 44 private int mLastDailyWallpaperRotationStatus; 45 private int mNumDaysDailyRotationFailed; 46 private int mNumDaysDailyRotationNotAttempted; 47 private int mLastDailyWallpaperUpdateResult; 48 private int mStandalonePreviewLaunches; 49 private int mNumRestores; 50 @WallpaperPosition 51 private int mWallpaperPosition; 52 TestUserEventLogger()53 public TestUserEventLogger() { 54 mLastDailyRotationHour = -1; 55 mLastDailyWallpaperRotationStatus = -1; 56 mNumDaysDailyRotationFailed = -1; 57 mNumDaysDailyRotationNotAttempted = -1; 58 } 59 60 @Override logResumed(boolean provisioned, boolean wallpaper)61 public void logResumed(boolean provisioned, boolean wallpaper) { 62 63 } 64 65 @Override logStopped()66 public void logStopped() { 67 68 } 69 70 @Override logAppLaunched(Intent launchSource)71 public void logAppLaunched(Intent launchSource) { 72 // Do nothing. 73 } 74 75 @Override logDailyRefreshTurnedOn()76 public void logDailyRefreshTurnedOn() { 77 mNumDailyRefreshTurnedOnEvents++; 78 } 79 getNumDailyRefreshTurnedOnEvents()80 public int getNumDailyRefreshTurnedOnEvents() { 81 return mNumDailyRefreshTurnedOnEvents; 82 } 83 84 @Override logCurrentWallpaperPreviewed()85 public void logCurrentWallpaperPreviewed() { 86 mNumCurrentWallpaperPreviewedEvents++; 87 } 88 89 @Override logActionClicked(String collectionId, int actionLabelResId)90 public void logActionClicked(String collectionId, int actionLabelResId) { 91 mNumActionClickedEvents++; 92 mLastCollectionId = collectionId; 93 } 94 getNumCurrentWallpaperPreviewedEvents()95 public int getNumCurrentWallpaperPreviewedEvents() { 96 return mNumCurrentWallpaperPreviewedEvents; 97 } 98 getNumActionClickedEvents()99 public int getNumActionClickedEvents() { 100 return mNumActionClickedEvents; 101 } 102 103 @Override logIndividualWallpaperSelected(String collectionId)104 public void logIndividualWallpaperSelected(String collectionId) { 105 mNumIndividualWallpaperSelectedEvents++; 106 mLastCollectionId = collectionId; 107 } 108 getNumIndividualWallpaperSelectedEvents()109 public int getNumIndividualWallpaperSelectedEvents() { 110 return mNumIndividualWallpaperSelectedEvents; 111 } 112 113 @Override logCategorySelected(String collectionId)114 public void logCategorySelected(String collectionId) { 115 mNumCategorySelectedEvents++; 116 mLastCollectionId = collectionId; 117 } 118 119 @Override logLiveWallpaperInfoSelected(String collectionId, String wallpaperId)120 public void logLiveWallpaperInfoSelected(String collectionId, String wallpaperId) { 121 // No-op 122 } 123 124 @Override logLiveWallpaperCustomizeSelected(String collectionId, String wallpaperId)125 public void logLiveWallpaperCustomizeSelected(String collectionId, String wallpaperId) { 126 // No-op 127 } 128 129 @Override logSnapshot()130 public void logSnapshot() { 131 // No-op 132 } 133 getNumCategorySelectedEvents()134 public int getNumCategorySelectedEvents() { 135 return mNumCategorySelectedEvents; 136 } 137 138 @Override logWallpaperSet(String collectionId, String wallpaperId)139 public void logWallpaperSet(String collectionId, String wallpaperId) { 140 mNumWallpaperSetEvents++; 141 mLastCollectionId = collectionId; 142 mLastWallpaperId = wallpaperId; 143 } 144 145 @Override logWallpaperSetResult(@allpaperSetResult int result)146 public void logWallpaperSetResult(@WallpaperSetResult int result) { 147 mNumWallpaperSetResultEvents++; 148 mLastWallpaperSetResult = result; 149 } 150 151 @Override logWallpaperSetFailureReason(@allpaperSetFailureReason int reason)152 public void logWallpaperSetFailureReason(@WallpaperSetFailureReason int reason) { 153 // No-op 154 } 155 156 157 @Override logNumDailyWallpaperRotationsInLastWeek()158 public void logNumDailyWallpaperRotationsInLastWeek() { 159 // No-op 160 } 161 162 @Override logNumDailyWallpaperRotationsPreviousDay()163 public void logNumDailyWallpaperRotationsPreviousDay() { 164 // No-op 165 } 166 167 @Override logDailyWallpaperRotationHour(int hour)168 public void logDailyWallpaperRotationHour(int hour) { 169 mLastDailyRotationHour = hour; 170 } 171 172 @Override logDailyWallpaperDecodes(boolean decodes)173 public void logDailyWallpaperDecodes(boolean decodes) { 174 // No-op 175 } 176 177 @Override logRefreshDailyWallpaperButtonClicked()178 public void logRefreshDailyWallpaperButtonClicked() { 179 // No-op 180 } 181 182 @Override logDailyWallpaperRotationStatus(int status)183 public void logDailyWallpaperRotationStatus(int status) { 184 mLastDailyWallpaperRotationStatus = status; 185 } 186 187 @Override logDailyWallpaperSetNextWallpaperResult(@ailyWallpaperUpdateResult int result)188 public void logDailyWallpaperSetNextWallpaperResult(@DailyWallpaperUpdateResult int result) { 189 mLastDailyWallpaperUpdateResult = result; 190 } 191 192 @Override logDailyWallpaperSetNextWallpaperCrash(@ailyWallpaperUpdateCrash int crash)193 public void logDailyWallpaperSetNextWallpaperCrash(@DailyWallpaperUpdateCrash int crash) { 194 // No-op 195 } 196 197 @Override logNumDaysDailyRotationFailed(int days)198 public void logNumDaysDailyRotationFailed(int days) { 199 mNumDaysDailyRotationFailed = days; 200 } 201 202 @Override logDailyWallpaperMetadataRequestFailure( @ailyWallpaperMetadataFailureReason int reason)203 public void logDailyWallpaperMetadataRequestFailure( 204 @DailyWallpaperMetadataFailureReason int reason) { 205 // No-op 206 } 207 208 @Override logNumDaysDailyRotationNotAttempted(int days)209 public void logNumDaysDailyRotationNotAttempted(int days) { 210 mNumDaysDailyRotationNotAttempted = days; 211 } 212 213 @Override logStandalonePreviewLaunched()214 public void logStandalonePreviewLaunched() { 215 mStandalonePreviewLaunches++; 216 } 217 218 @Override logStandalonePreviewImageUriHasReadPermission(boolean isReadPermissionGranted)219 public void logStandalonePreviewImageUriHasReadPermission(boolean isReadPermissionGranted) { 220 // No-op 221 } 222 223 @Override logStandalonePreviewStorageDialogApproved(boolean isApproved)224 public void logStandalonePreviewStorageDialogApproved(boolean isApproved) { 225 // No-op 226 } 227 228 @Override logWallpaperPresentationMode()229 public void logWallpaperPresentationMode() { 230 // No-op 231 } 232 233 @Override logRestored()234 public void logRestored() { 235 mNumRestores++; 236 } 237 getNumWallpaperSetEvents()238 public int getNumWallpaperSetEvents() { 239 return mNumWallpaperSetEvents; 240 } 241 getLastCollectionId()242 public String getLastCollectionId() { 243 return mLastCollectionId; 244 } 245 getLastWallpaperId()246 public String getLastWallpaperId() { 247 return mLastWallpaperId; 248 } 249 getNumWallpaperSetResultEvents()250 public int getNumWallpaperSetResultEvents() { 251 return mNumWallpaperSetResultEvents; 252 } 253 254 @WallpaperSetResult getLastWallpaperSetResult()255 public int getLastWallpaperSetResult() { 256 return mLastWallpaperSetResult; 257 } 258 getLastDailyRotationHour()259 public int getLastDailyRotationHour() { 260 return mLastDailyRotationHour; 261 } 262 getNum1DayActiveLogs()263 public int getNum1DayActiveLogs() { 264 return mNum1DayActiveLogs; 265 } 266 getNum7DayActiveLogs()267 public int getNum7DayActiveLogs() { 268 return mNum7DayActiveLogs; 269 } 270 getNum14DayActiveLogs()271 public int getNum14DayActiveLogs() { 272 return mNum14DayActiveLogs; 273 } 274 getNum28DayActiveLogs()275 public int getNum28DayActiveLogs() { 276 return mNum28DayActiveLogs; 277 } 278 getLastDailyWallpaperRotationStatus()279 public int getLastDailyWallpaperRotationStatus() { 280 return mLastDailyWallpaperRotationStatus; 281 } 282 getNumDaysDailyRotationFailed()283 public int getNumDaysDailyRotationFailed() { 284 return mNumDaysDailyRotationFailed; 285 } 286 getNumDaysDailyRotationNotAttempted()287 public int getNumDaysDailyRotationNotAttempted() { 288 return mNumDaysDailyRotationNotAttempted; 289 } 290 getLastDailyWallpaperUpdateResult()291 public int getLastDailyWallpaperUpdateResult() { 292 return mLastDailyWallpaperUpdateResult; 293 } 294 getStandalonePreviewLaunches()295 public int getStandalonePreviewLaunches() { 296 return mStandalonePreviewLaunches; 297 } 298 getNumRestores()299 public int getNumRestores() { 300 return mNumRestores; 301 } 302 getWallpaperPosition()303 public int getWallpaperPosition() { 304 return mWallpaperPosition; 305 } 306 } 307