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 android.platform.systemui_tapl.ui
18 
19 import android.platform.systemui_tapl.utils.DeviceUtils.sysuiResSelector
20 import android.platform.uiautomatorhelpers.DeviceHelpers.assertVisible
21 import android.platform.uiautomatorhelpers.DeviceHelpers.waitForPossibleEmpty
22 
23 /**
24  * Recommend Media Card on the Universal Media Object.
25  *
26  * **See:** [HSV](https://hsv.googleplex.com/6195547053490176?node=86)
27  */
28 class RecentMediaCard internal constructor() {
29 
30     init {
<lambda>null31         sysuiResSelector("media_recommendations_updated").assertVisible {
32             "Can't find recent media card."
33         }
34     }
35 
36     /**
37      * The titles of recommended recent medias. The layout of the card is defined in
38      * [RecommendationViewHolder].
39      */
40     val mediaTitles: List<String>
<lambda>null41         get() = waitForPossibleEmpty(sysuiResSelector("media_title")).map { it.text }
42 }
43