WindowManagerPermissionTests.java revision 01a98ddbdfbaf1f0d2bc602537e6e314364902a3
115a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root/* 215a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * Copyright (C) 2009 The Android Open Source Project 315a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * 415a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * Licensed under the Apache License, Version 2.0 (the "License"); 515a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * you may not use this file except in compliance with the License. 615a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * You may obtain a copy of the License at 715a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * 815a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * http://www.apache.org/licenses/LICENSE-2.0 915a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * 1015a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * Unless required by applicable law or agreed to in writing, software 1115a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * distributed under the License is distributed on an "AS IS" BASIS, 1215a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1315a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * See the License for the specific language governing permissions and 1415a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * limitations under the License. 1515a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root */ 1615a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root 17cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornpackage com.android.framework.permission.tests; 18cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 19cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornimport android.content.res.Configuration; 20cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornimport android.os.Binder; 21cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornimport android.os.RemoteException; 22cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornimport android.os.ServiceManager; 23cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornimport android.test.suitebuilder.annotation.SmallTest; 24cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornimport android.view.IWindowManager; 25cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornimport android.view.KeyEvent; 26cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornimport android.view.MotionEvent; 27cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 28cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornimport junit.framework.TestCase; 29cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 30cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn/** 31cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn * TODO: Remove this. This is only a placeholder, need to implement this. 32cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn */ 33cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackbornpublic class WindowManagerPermissionTests extends TestCase { 34cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn IWindowManager mWm; 35cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 36cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn @Override 37cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn protected void setUp() throws Exception { 38cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn super.setUp(); 39cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm = IWindowManager.Stub.asInterface( 40cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn ServiceManager.getService("window")); 41cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 42cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 43cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn @SmallTest 44cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn public void testMANAGE_APP_TOKENS() { 45cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 46cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.pauseKeyDispatching(null); 47cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.pauseKeyDispatching did not throw SecurityException as" 48cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 49cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 50cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 51cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 52cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 53cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 54cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 55cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 56cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.resumeKeyDispatching(null); 57cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.resumeKeyDispatching did not throw SecurityException as" 58cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 59cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 60cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 61cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 62cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 63cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 64cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 65cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 66cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.setEventDispatching(true); 67cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.setEventDispatching did not throw SecurityException as" 68cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 69cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 70cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 71cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 72cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 73cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 74cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 75cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 76cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.addWindowToken(null, 0); 77cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.addWindowToken did not throw SecurityException as" 78cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 79cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 80cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 81cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 82cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 83cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 84cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 85cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 86cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.removeWindowToken(null); 87cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.removeWindowToken did not throw SecurityException as" 88cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 89cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 90cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 91cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 92cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 93cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 94cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 95cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 96cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.addAppToken(0, null, 0, 0, false); 97cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.addAppToken did not throw SecurityException as" 98cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 99cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 100cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 101cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 102cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 103cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 104cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 105cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 106cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.setAppGroupId(null, 0); 107cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.setAppGroupId did not throw SecurityException as" 108cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 109cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 110cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 111cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 112cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 113cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 114cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 115cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 116cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.updateOrientationFromAppTokens(new Configuration(), null); 117cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.updateOrientationFromAppTokens did not throw SecurityException as" 118cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 119cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 120cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 121cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 122cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 123cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 124cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 125cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 126cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.setAppOrientation(null, 0); 127cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.addWindowToken(null, 0); 128cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.setAppOrientation did not throw SecurityException as" 129cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 130cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 131cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 132cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 133cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 134cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 135cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 136cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 137cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.setFocusedApp(null, false); 138cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.setFocusedApp did not throw SecurityException as" 139cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 140cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 141cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 142cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 143cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 144cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 145cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 146cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 1477da6ac33a9de82be52e22846d5f22d502452854cDianne Hackborn mWm.prepareAppTransition(0, false); 148cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.prepareAppTransition did not throw SecurityException as" 149cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 150cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 151cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 152cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 153cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 154cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 155cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 156cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 157cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.executeAppTransition(); 158cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.executeAppTransition did not throw SecurityException as" 159cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 160cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 161cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 162cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 163cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 164cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 165cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 166cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 1672f0b17573d4324832f7a20402a3d2b5920bc4866Dianne Hackborn mWm.setAppStartingWindow(null, "foo", 0, null, null, 0, 0, 0, null, false); 168cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.setAppStartingWindow did not throw SecurityException as" 169cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 170cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 171cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 172cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 173cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 174cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 175cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 176cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 177cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.setAppWillBeHidden(null); 178cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.setAppWillBeHidden did not throw SecurityException as" 179cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 180cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 181cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 182cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 183cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 184cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 185cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 186cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 187cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.setAppVisibility(null, false); 188cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.setAppVisibility did not throw SecurityException as" 189cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 190cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 191cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 192cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 193cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 194cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 195cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 196cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 197cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.startAppFreezingScreen(null, 0); 198cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.startAppFreezingScreen did not throw SecurityException as" 199cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 200cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 201cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 202cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 203cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 204cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 205cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 206cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 207cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.stopAppFreezingScreen(null, false); 208cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.stopAppFreezingScreen did not throw SecurityException as" 209cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 210cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 211cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 212cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 213cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 214cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 215cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 216cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 217cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.removeAppToken(null); 218cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.removeAppToken did not throw SecurityException as" 219cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 220cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 221cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 222cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 223cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 224cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 225cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 226cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 227cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.moveAppToken(0, null); 228cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.moveAppToken did not throw SecurityException as" 229cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 230cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 231cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 232cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 233cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 234cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 235cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 236cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 237cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.moveAppTokensToTop(null); 238cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.moveAppTokensToTop did not throw SecurityException as" 239cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 240cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 241cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 242cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 243cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 244cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 245cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 246cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 247cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.moveAppTokensToBottom(null); 248cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.moveAppTokensToBottom did not throw SecurityException as" 249cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 250cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 251cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 252cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 253cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 254cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 255cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 256cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 257cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn @SmallTest 258cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn public void testINJECT_EVENTS() { 259cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 260cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.injectKeyEvent(new KeyEvent(0, 0), false); 261cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.injectKeyEvent did not throw SecurityException as" 262cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 263cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 264cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 265cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 266cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 267cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 268cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 269cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 270cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.injectPointerEvent(MotionEvent.obtain(0, 0, 0, 0, 0, 0, 0, 0, 0, 271cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 0, 0, 0), false); 272cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.injectPointerEvent did not throw SecurityException as" 273cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 274cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 275cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 276cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 277cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 278cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 279cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 280cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 281cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.injectTrackballEvent(MotionEvent.obtain(0, 0, 0, 0, 0, 0, 0, 0, 0, 282cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 0, 0, 0), false); 283cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.injectTrackballEvent did not throw SecurityException as" 284cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 285cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 286cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 287cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 288cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 289cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 290cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 291cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 292cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn @SmallTest 293cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn public void testDISABLE_KEYGUARD() { 294cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn Binder token = new Binder(); 295cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 296cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.disableKeyguard(token, "foo"); 297cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.disableKeyguard did not throw SecurityException as" 298cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 299cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 300cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 301cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 302cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 303cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 304cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 305cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 306cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.reenableKeyguard(token); 307cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.reenableKeyguard did not throw SecurityException as" 308cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 309cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 310cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 311cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 312cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 313cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 314cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 315cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 316cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.exitKeyguardSecurely(null); 317cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.exitKeyguardSecurely did not throw SecurityException as" 318cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 319cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 320cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 321cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 322cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 323cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 324cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 325cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 326cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn @SmallTest 327cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn public void testSET_ANIMATION_SCALE() { 328cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 329cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.setAnimationScale(0, 1); 330cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.setAnimationScale did not throw SecurityException as" 331cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 332cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 333cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 334cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 335cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 336cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 337cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 338cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 339cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.setAnimationScales(new float[1]); 340cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.setAnimationScales did not throw SecurityException as" 341cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 342cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 343cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 344cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 345cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 346cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 347cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 348cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 349cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn @SmallTest 350cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn public void testREAD_INPUT_STATE() { 351cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 352cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.getSwitchState(0); 353cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.getSwitchState did not throw SecurityException as" 354cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 355cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 356cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 357cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 358cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 359cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 360cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 361cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 362cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.getSwitchStateForDevice(0, 0); 363cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.getSwitchStateForDevice did not throw SecurityException as" 364cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 365cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 366cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 367cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 368cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 369cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 370cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 371cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 372cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.getScancodeState(0); 373cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.getScancodeState did not throw SecurityException as" 374cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 375cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 376cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 377cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 378cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 379cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 380cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 381cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 382cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.getScancodeStateForDevice(0, 0); 383cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.getScancodeStateForDevice did not throw SecurityException as" 384cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 385cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 386cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 387cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 388cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 389cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 390cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 391cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 392cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.getKeycodeState(0); 393cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.getKeycodeState did not throw SecurityException as" 394cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 395cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 396cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 397cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 398cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 399cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 400cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 401cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 402cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.getKeycodeStateForDevice(0, 0); 403cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("IWindowManager.getKeycodeStateForDevice did not throw SecurityException as" 404cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 405cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 406cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 407cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 408cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 409cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 410cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 411cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn 412cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn @SmallTest 413cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn public void testSET_ORIENTATION() { 414cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn try { 41501a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown mWm.updateRotation(true); 416cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn mWm.getSwitchState(0); 41701a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown fail("IWindowManager.updateRotation did not throw SecurityException as" 41801a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown + " expected"); 41901a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown } catch (SecurityException e) { 42001a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown // expected 42101a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown } catch (RemoteException e) { 42201a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown fail("Unexpected remote exception"); 42301a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown } 42401a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown 42501a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown try { 42601a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown mWm.freezeRotation(); 42701a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown mWm.getSwitchState(0); 42801a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown fail("IWindowManager.freezeRotation did not throw SecurityException as" 42901a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown + " expected"); 43001a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown } catch (SecurityException e) { 43101a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown // expected 43201a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown } catch (RemoteException e) { 43301a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown fail("Unexpected remote exception"); 43401a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown } 43501a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown 43601a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown try { 43701a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown mWm.thawRotation(); 43801a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown mWm.getSwitchState(0); 43901a98ddbdfbaf1f0d2bc602537e6e314364902a3Jeff Brown fail("IWindowManager.thawRotation did not throw SecurityException as" 440cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn + " expected"); 441cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (SecurityException e) { 442cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn // expected 443cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } catch (RemoteException e) { 444cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn fail("Unexpected remote exception"); 445cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 446cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn } 447cfaef699e1dfb3a75d5b51f3b15816f13670fd51Dianne Hackborn} 448