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

Commit f5a19955 authored by John Wu's avatar John Wu Committed by Android (Google) Code Review
Browse files

Merge "Fix several graphics tests in coretests" into main

parents 381930df ebf56d5b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -16,5 +16,5 @@
  -->

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:color="#ff0000" android:lStar="50" />
    <item android:color="@color/testcolor2" android:lStar="50" />
</selector>
+0 −1
Original line number Diff line number Diff line
@@ -25,6 +25,5 @@
    <drawable name="yellow">#ffffff00</drawable>
    <color name="testcolor1">#ff00ff00</color>
    <color name="testcolor2">#ffff0000</color>
    <color name="testcolor3">#fff00000</color>
    <color name="failColor">#ff0000ff</color>
</resources>
+10 −2
Original line number Diff line number Diff line
@@ -16,19 +16,27 @@

package android.graphics;

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

import android.os.ParcelFileDescriptor;

import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.SmallTest;

import junit.framework.TestCase;
import org.junit.Test;
import org.junit.runner.RunWith;

import java.io.ByteArrayOutputStream;
import java.io.FileDescriptor;

public class BitmapFactoryTest extends TestCase {
@RunWith(AndroidJUnit4.class)
public class BitmapFactoryTest {

    // tests that we can decode bitmaps from MemoryFiles
    @SmallTest
    @Test
    public void testBitmapParcelFileDescriptor() throws Exception {
        Bitmap bitmap1 = Bitmap.createBitmap(
                new int[] { Color.BLUE }, 1, 1, Bitmap.Config.RGB_565);
+32 −21
Original line number Diff line number Diff line
@@ -16,19 +16,28 @@

package android.graphics;

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

import android.hardware.HardwareBuffer;

import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.SmallTest;

import junit.framework.TestCase;
import org.junit.Test;
import org.junit.runner.RunWith;

import java.nio.ByteBuffer;
import java.nio.IntBuffer;
import java.nio.ShortBuffer;

public class BitmapTest extends TestCase {

@SmallTest
@RunWith(AndroidJUnit4.class)
public class BitmapTest {

    @Test
    public void testBasic() throws Exception {
        Bitmap bm1 = Bitmap.createBitmap(100, 200, Bitmap.Config.ARGB_8888);
        Bitmap bm2 = Bitmap.createBitmap(100, 200, Bitmap.Config.RGB_565);
@@ -63,7 +72,7 @@ public class BitmapTest extends TestCase {
        assertTrue("getConfig", bm3.getConfig() == Bitmap.Config.ARGB_8888);
    }

    @SmallTest
    @Test
    public void testMutability() throws Exception {
        Bitmap bm1 = Bitmap.createBitmap(100, 200, Bitmap.Config.ARGB_8888);
        Bitmap bm2 = Bitmap.createBitmap(new int[100 * 200], 100, 200,
@@ -82,7 +91,7 @@ public class BitmapTest extends TestCase {
        }
    }

    @SmallTest
    @Test
    public void testGetPixelsWithAlpha() throws Exception {
        int[] colors = new int[100];
        for (int i = 0; i < 100; i++) {
@@ -108,7 +117,7 @@ public class BitmapTest extends TestCase {

    }

    @SmallTest
    @Test
    public void testGetPixelsWithoutAlpha() throws Exception {
        int[] colors = new int[100];
        for (int i = 0; i < 100; i++) {
@@ -125,7 +134,7 @@ public class BitmapTest extends TestCase {
        }
    }

    @SmallTest
    @Test
    public void testSetPixelsWithAlpha() throws Exception {
        int[] colors = new int[100];
        for (int i = 0; i < 100; i++) {
@@ -151,7 +160,7 @@ public class BitmapTest extends TestCase {
        }
    }

    @SmallTest
    @Test
    public void testSetPixelsWithoutAlpha() throws Exception {
        int[] colors = new int[100];
        for (int i = 0; i < 100; i++) {
@@ -181,7 +190,7 @@ public class BitmapTest extends TestCase {
        return unpre;
    }

    @SmallTest
    @Test
    public void testSetPixelsWithNonOpaqueAlpha() throws Exception {
        int[] colors = new int[256];
        for (int i = 0; i < 256; i++) {
@@ -238,10 +247,13 @@ public class BitmapTest extends TestCase {
        }
    }

    @SmallTest
    private static final int GRAPHICS_USAGE =
            GraphicBuffer.USAGE_HW_TEXTURE | GraphicBuffer.USAGE_SW_READ_OFTEN
                    | GraphicBuffer.USAGE_SW_WRITE_OFTEN;

    @Test
    public void testWrapHardwareBufferWithSrgbColorSpace() {
        GraphicBuffer buffer = GraphicBuffer.create(10, 10, PixelFormat.RGBA_8888,
                GraphicBuffer.USAGE_HW_TEXTURE | GraphicBuffer.USAGE_SOFTWARE_MASK);
        GraphicBuffer buffer = GraphicBuffer.create(10, 10, PixelFormat.RGBA_8888, GRAPHICS_USAGE);
        Canvas canvas = buffer.lockCanvas();
        canvas.drawColor(Color.YELLOW);
        buffer.unlockCanvasAndPost(canvas);
@@ -252,10 +264,9 @@ public class BitmapTest extends TestCase {
        assertEquals(ColorSpace.get(ColorSpace.Named.SRGB), hardwareBitmap.getColorSpace());
    }

    @SmallTest
    @Test
    public void testWrapHardwareBufferWithDisplayP3ColorSpace() {
        GraphicBuffer buffer = GraphicBuffer.create(10, 10, PixelFormat.RGBA_8888,
                GraphicBuffer.USAGE_HW_TEXTURE | GraphicBuffer.USAGE_SOFTWARE_MASK);
        GraphicBuffer buffer = GraphicBuffer.create(10, 10, PixelFormat.RGBA_8888, GRAPHICS_USAGE);
        Canvas canvas = buffer.lockCanvas();
        canvas.drawColor(Color.YELLOW);
        buffer.unlockCanvasAndPost(canvas);
@@ -267,7 +278,7 @@ public class BitmapTest extends TestCase {
        assertEquals(ColorSpace.get(ColorSpace.Named.DISPLAY_P3), hardwareBitmap.getColorSpace());
    }

    @SmallTest
    @Test
    public void testCopyWithDirectByteBuffer() {
        // Initialize Bitmap
        final int width = 2;
@@ -305,7 +316,7 @@ public class BitmapTest extends TestCase {
        assertTrue(bm2.sameAs(bm1));
    }

    @SmallTest
    @Test
    public void testCopyWithDirectShortBuffer() {
        // Initialize Bitmap
        final int width = 2;
@@ -344,7 +355,7 @@ public class BitmapTest extends TestCase {
        assertTrue(bm2.sameAs(bm1));
    }

    @SmallTest
    @Test
    public void testCopyWithDirectIntBuffer() {
        // Initialize Bitmap
        final int width = 2;
@@ -383,7 +394,7 @@ public class BitmapTest extends TestCase {
        assertTrue(bm2.sameAs(bm1));
    }

    @SmallTest
    @Test
    public void testCopyWithHeapByteBuffer() {
        // Initialize Bitmap
        final int width = 2;
@@ -420,7 +431,7 @@ public class BitmapTest extends TestCase {
        assertTrue(bm2.sameAs(bm1));
    }

    @SmallTest
    @Test
    public void testCopyWithHeapShortBuffer() {
        // Initialize Bitmap
        final int width = 2;
@@ -457,7 +468,7 @@ public class BitmapTest extends TestCase {
        assertTrue(bm2.sameAs(bm1));
    }

    @SmallTest
    @Test
    public void testCopyWithHeapIntBuffer() {
        // Initialize Bitmap
        final int width = 2;
+24 −15
Original line number Diff line number Diff line
@@ -16,33 +16,41 @@

package android.graphics;

import static org.junit.Assert.assertEquals;

import android.content.res.ColorStateList;
import android.content.res.Resources;
import android.test.AndroidTestCase;
import android.util.proto.ProtoInputStream;
import android.util.proto.ProtoOutputStream;

import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.SmallTest;
import androidx.test.platform.app.InstrumentationRegistry;

import com.android.frameworks.coretests.R;

import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;

/**
 * Tests of {@link android.graphics.ColorStateList}
 * Tests of {@link ColorStateList}
 */

public class ColorStateListTest extends AndroidTestCase {
@SmallTest
@RunWith(AndroidJUnit4.class)
public class ColorStateListTest {

    private Resources mResources;
    private int mFailureColor;

    @Override
    protected void setUp() throws Exception {
        super.setUp();
        mResources = mContext.getResources();
    @Before
    public void setUp() throws Exception {
        mResources = InstrumentationRegistry.getInstrumentation().getContext().getResources();
        mFailureColor = mResources.getColor(R.color.failColor);
    }

    @SmallTest
    @Test
    public void testStateIsInList() throws Exception {
        ColorStateList colorStateList = mResources.getColorStateList(R.color.color1);
        int[] focusedState = {android.R.attr.state_focused};
@@ -50,7 +58,7 @@ public class ColorStateListTest extends AndroidTestCase {
        assertEquals(mResources.getColor(R.color.testcolor1), focusColor);
    }

    @SmallTest
    @Test
    public void testStateIsInList_proto() throws Exception {
        ColorStateList colorStateList = recreateFromProto(
                mResources.getColorStateList(R.color.color1));
@@ -59,7 +67,7 @@ public class ColorStateListTest extends AndroidTestCase {
        assertEquals(mResources.getColor(R.color.testcolor1), focusColor);
    }

    @SmallTest
    @Test
    public void testEmptyState() throws Exception {
        ColorStateList colorStateList = mResources.getColorStateList(R.color.color1);
        int[] emptyState = {};
@@ -67,7 +75,7 @@ public class ColorStateListTest extends AndroidTestCase {
        assertEquals(mResources.getColor(R.color.testcolor2), defaultColor);
    }

    @SmallTest
    @Test
    public void testEmptyState_proto() throws Exception {
        ColorStateList colorStateList = recreateFromProto(
                mResources.getColorStateList(R.color.color1));
@@ -76,22 +84,23 @@ public class ColorStateListTest extends AndroidTestCase {
        assertEquals(mResources.getColor(R.color.testcolor2), defaultColor);
    }

    @SmallTest
    @Test
    public void testGetColor() throws Exception {
        int defaultColor = mResources.getColor(R.color.color1);
        assertEquals(mResources.getColor(R.color.testcolor2), defaultColor);
    }

    @SmallTest
    @Test
    public void testGetColorWhenListHasNoDefault() throws Exception {
        int defaultColor = mResources.getColor(R.color.color_no_default);
        assertEquals(mResources.getColor(R.color.testcolor1), defaultColor);
    }

    @SmallTest
    @Test
    public void testLstar() throws Exception {
        var cl = ColorStateList.valueOf(mResources.getColor(R.color.testcolor2)).withLStar(50.0f);
        int defaultColor = mResources.getColor(R.color.color_with_lstar);
        assertEquals(mResources.getColor(R.color.testcolor3), defaultColor);
        assertEquals(cl.getDefaultColor(), defaultColor);
    }

    private ColorStateList recreateFromProto(ColorStateList colorStateList) throws Exception {
Loading