Introduce InsetsModeSession to InsetsAnimationControlImplTest

InsetsAnimationControlImplTest sets new insets mode to full mode when setUp(), which
leads some tests in ViewRootImplTest fail. Introduce InsetsModeSession
to fix it.

Change-Id: Id159db1395d1b105d9d4d3d13cdba778015e9989
Fix: 130609028
Test: atest ViewRootImplTest InsetsAnimationControlImplTest
This commit is contained in:
Charles Chen
2019-04-16 17:39:23 +08:00
parent 9b98748a43
commit 2783faff58

View File

@@ -39,10 +39,13 @@ import android.platform.test.annotations.Presubmit;
import android.util.SparseArray;
import android.view.SurfaceControl.Transaction;
import android.view.SyncRtSurfaceTransactionApplier.SurfaceParams;
import android.view.test.InsetsModeSession;
import androidx.test.runner.AndroidJUnit4;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
@@ -70,15 +73,25 @@ public class InsetsAnimationControlImplTest {
private SurfaceControl mTopLeash;
private SurfaceControl mNavLeash;
private InsetsState mInsetsState;
private static InsetsModeSession sInsetsModeSession;
@Mock Transaction mMockTransaction;
@Mock InsetsController mMockController;
@Mock WindowInsetsAnimationControlListener mMockListener;
@Mock SyncRtSurfaceTransactionApplier mMockTransactionApplier;
@BeforeClass
public static void setupOnce() {
sInsetsModeSession = new InsetsModeSession(NEW_INSETS_MODE_FULL);
}
@AfterClass
public static void tearDownOnce() throws Exception {
sInsetsModeSession.close();
}
@Before
public void setup() {
ViewRootImpl.sNewInsetsMode = NEW_INSETS_MODE_FULL;
MockitoAnnotations.initMocks(this);
mTopLeash = new SurfaceControl.Builder(mSession)
.setName("testSurface")