• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2014 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.providers.contacts.util;
17 
18 import static com.android.providers.contacts.ContactsActor.PACKAGE_GREY;
19 
20 import android.content.Context;
21 import android.provider.ContactsContract;
22 import android.test.suitebuilder.annotation.SmallTest;
23 
24 import com.android.providers.contacts.ContactsActor;
25 import com.android.providers.contacts.ContactsActor.MockUserManager;
26 import com.android.providers.contacts.FixedAndroidTestCase;
27 import com.android.providers.contacts.SynchronousContactsProvider2;
28 
29 @SmallTest
30 public class UserUtilsTest extends FixedAndroidTestCase {
31 
32     protected ContactsActor mActor;
33 
34     @Override
setUp()35     protected void setUp() throws Exception {
36         super.setUp();
37 
38         mActor = new ContactsActor(getContext(), PACKAGE_GREY,
39                 SynchronousContactsProvider2.class,
40                 ContactsContract.AUTHORITY);
41     }
42 
testGetCorpUser()43     public void testGetCorpUser() {
44         final Context c = mActor.getProviderContext();
45         final MockUserManager um = mActor.mockUserManager;
46 
47         // No corp user.  Primary only.
48         assertEquals(-1, UserUtils.getCorpUserId(c));
49 
50         // Primary + corp
51         um.setUsers(MockUserManager.PRIMARY_USER, MockUserManager.CORP_USER);
52 
53         um.myUser = MockUserManager.PRIMARY_USER.id;
54         assertEquals(MockUserManager.CORP_USER.id, UserUtils.getCorpUserId(c));
55 
56         um.myUser = MockUserManager.CORP_USER.id;
57         assertEquals(-1, UserUtils.getCorpUserId(c));
58 
59         // Primary + secondary + corp
60         um.setUsers(MockUserManager.PRIMARY_USER, MockUserManager.SECONDARY_USER,
61                 MockUserManager.CORP_USER);
62 
63         um.myUser = MockUserManager.PRIMARY_USER.id;
64         assertEquals(MockUserManager.CORP_USER.id, UserUtils.getCorpUserId(c));
65 
66         um.myUser = MockUserManager.CORP_USER.id;
67         assertEquals(-1, UserUtils.getCorpUserId(c));
68 
69         um.myUser = MockUserManager.SECONDARY_USER.id;
70         assertEquals(-1, UserUtils.getCorpUserId(c));
71 
72         // Primary + secondary
73         um.setUsers(MockUserManager.PRIMARY_USER, MockUserManager.SECONDARY_USER);
74 
75         um.myUser = MockUserManager.PRIMARY_USER.id;
76         assertEquals(-1, UserUtils.getCorpUserId(c));
77 
78         um.myUser = MockUserManager.SECONDARY_USER.id;
79         assertEquals(-1, UserUtils.getCorpUserId(c));
80     }
81 }
82