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 
18 package com.android.systemui.keyguard.data.repository
19 
20 import kotlinx.coroutines.flow.Flow
21 import kotlinx.coroutines.flow.MutableStateFlow
22 import kotlinx.coroutines.flow.StateFlow
23 import kotlinx.coroutines.flow.asStateFlow
24 
25 class FakeTrustRepository : TrustRepository {
26     private val _isCurrentUserTrusted = MutableStateFlow(false)
27     override val isCurrentUserTrusted: Flow<Boolean>
28         get() = _isCurrentUserTrusted
29 
30     private val _isCurrentUserActiveUnlockAvailable = MutableStateFlow(false)
31     override val isCurrentUserActiveUnlockRunning: StateFlow<Boolean> =
32         _isCurrentUserActiveUnlockAvailable.asStateFlow()
33 
34     private val _isCurrentUserTrustManaged = MutableStateFlow(false)
35     override val isCurrentUserTrustManaged: StateFlow<Boolean>
36         get() = _isCurrentUserTrustManaged
37 
38     fun setCurrentUserTrusted(trust: Boolean) {
39         _isCurrentUserTrusted.value = trust
40     }
41 
42     fun setCurrentUserTrustManaged(value: Boolean) {
43         _isCurrentUserTrustManaged.value = value
44     }
45 
46     fun setCurrentUserActiveUnlockAvailable(available: Boolean) {
47         _isCurrentUserActiveUnlockAvailable.value = available
48     }
49 }
50