Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dc5d17ad authored by Tiger Huang's avatar Tiger Huang
Browse files

Move some unit tests about WindowInsets to CTS

These tests are about the new insets APIs.

Bug: 152618398
Bug: 152617905
Bug: 152617904
Bug: 152617519
Bug: 152617444
Bug: 152617265
Test: atest WindowInsetsTest
Change-Id: Ie8ecce7b9c93637044055ad271bbc4824b17e814
parent 8d4ffed2
Loading
Loading
Loading
Loading
+1 −53
Original line number Diff line number Diff line
@@ -17,20 +17,14 @@
package android.view;

import static android.view.WindowInsets.Type.SIZE;
import static android.view.WindowInsets.Type.ime;
import static android.view.WindowInsets.Type.navigationBars;
import static android.view.WindowInsets.Type.statusBars;

import static android.view.WindowInsets.Type.systemBars;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;

import android.graphics.Insets;
import android.graphics.Rect;
import android.platform.test.annotations.Presubmit;
import android.view.WindowInsets.Builder;
import android.view.WindowInsets.Type;

import androidx.test.filters.SmallTest;
import androidx.test.runner.AndroidJUnit4;
@@ -70,50 +64,4 @@ public class WindowInsetsTest {
                systemBars(), true /* compatIgnoreVisibility */);
        assertEquals(Insets.of(0, 10, 0, 0), windowInsets.getSystemWindowInsets());
    }

    // TODO: Move this to CTS once API made public
    @Test
    public void typeMap() {
        Builder b = new WindowInsets.Builder();
        b.setInsets(navigationBars(), Insets.of(0, 0, 0, 100));
        b.setInsets(ime(), Insets.of(0, 0, 0, 300));
        WindowInsets insets = b.build();
        assertEquals(100, insets.getSystemWindowInsets().bottom);
        assertEquals(300, insets.getInsets(ime()).bottom);
    }

    // TODO: Move this to CTS once API made public
    @Test
    public void compatInsets() {
        Builder b = new WindowInsets.Builder();
        b.setSystemWindowInsets(Insets.of(0, 50, 30, 10));
        WindowInsets insets = b.build();
        assertEquals(Insets.of(0, 50, 0, 0), insets.getInsets(statusBars()));
        assertEquals(Insets.of(0, 0, 30, 10), insets.getInsets(navigationBars()));
    }

    // TODO: Move this to CTS once API made public
    @Test
    public void visibility() {
        Builder b = new WindowInsets.Builder();
        b.setInsets(navigationBars(), Insets.of(0, 0, 0, 100));
        b.setInsets(ime(), Insets.of(0, 0, 0, 300));
        b.setVisible(navigationBars(), true);
        b.setVisible(ime(), true);
        WindowInsets insets = b.build();
        assertTrue(insets.isVisible(navigationBars()));
        assertTrue(insets.isVisible(navigationBars() | ime()));
        assertFalse(insets.isVisible(navigationBars() | statusBars()));
    }

    // TODO: Move this to CTS once API made public
    @Test
    public void consume_doesntChangeVisibility() {
        Builder b = new WindowInsets.Builder();
        b.setInsets(ime(), Insets.of(0, 0, 0, 300));
        b.setVisible(ime(), true);
        WindowInsets insets = b.build();
        insets = insets.consumeSystemWindowInsets();
        assertTrue(insets.isVisible(ime()));
    }
}