summaryrefslogtreecommitdiffstats
path: root/tests/src/com/android/gallery3d/glrenderer/TextureTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src/com/android/gallery3d/glrenderer/TextureTest.java')
-rw-r--r--tests/src/com/android/gallery3d/glrenderer/TextureTest.java208
1 files changed, 0 insertions, 208 deletions
diff --git a/tests/src/com/android/gallery3d/glrenderer/TextureTest.java b/tests/src/com/android/gallery3d/glrenderer/TextureTest.java
deleted file mode 100644
index 9e7955418..000000000
--- a/tests/src/com/android/gallery3d/glrenderer/TextureTest.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/*
- * Copyright (C) 2010 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.glrenderer;
-
-import android.graphics.Bitmap;
-import android.graphics.Bitmap.Config;
-import android.test.suitebuilder.annotation.SmallTest;
-
-import com.android.gallery3d.glrenderer.BasicTexture;
-import com.android.gallery3d.glrenderer.BitmapTexture;
-import com.android.gallery3d.glrenderer.ColorTexture;
-import com.android.gallery3d.glrenderer.GLCanvas;
-import com.android.gallery3d.glrenderer.GLES11Canvas;
-import com.android.gallery3d.glrenderer.UploadedTexture;
-
-import junit.framework.TestCase;
-
-import javax.microedition.khronos.opengles.GL11;
-
-public class TextureTest extends TestCase {
- @SuppressWarnings("unused")
- private static final String TAG = "TextureTest";
-
- class MyBasicTexture extends BasicTexture {
- int mOnBindCalled;
- int mOpaqueCalled;
-
- MyBasicTexture(GLCanvas canvas, int id) {
- super(canvas, id, 0);
- }
-
- @Override
- protected boolean onBind(GLCanvas canvas) {
- mOnBindCalled++;
- return true;
- }
-
- @Override
- protected int getTarget() {
- return GL11.GL_TEXTURE_2D;
- }
-
- @Override
- public boolean isOpaque() {
- mOpaqueCalled++;
- return true;
- }
-
- void upload() {
- mState = STATE_LOADED;
- }
- }
-
- @SmallTest
- public void testBasicTexture() {
- GL11 glStub = new GLStub();
- GLCanvas canvas = new GLES11Canvas(glStub);
- MyBasicTexture texture = new MyBasicTexture(canvas, 47);
-
- assertEquals(47, texture.getId());
- texture.setSize(1, 1);
- assertEquals(1, texture.getWidth());
- assertEquals(1, texture.getHeight());
- assertEquals(1, texture.getTextureWidth());
- assertEquals(1, texture.getTextureHeight());
- texture.setSize(3, 5);
- assertEquals(3, texture.getWidth());
- assertEquals(5, texture.getHeight());
- assertEquals(4, texture.getTextureWidth());
- assertEquals(8, texture.getTextureHeight());
-
- assertFalse(texture.isLoaded());
- texture.upload();
- assertTrue(texture.isLoaded());
-
- // For a different GL, it's not loaded.
- GLCanvas canvas2 = new GLES11Canvas(glStub);
- assertFalse(texture.isLoaded());
-
- assertEquals(0, texture.mOnBindCalled);
- assertEquals(0, texture.mOpaqueCalled);
- texture.draw(canvas, 100, 200, 1, 1);
- assertEquals(1, texture.mOnBindCalled);
- assertEquals(1, texture.mOpaqueCalled);
- texture.draw(canvas, 0, 0);
- assertEquals(2, texture.mOnBindCalled);
- assertEquals(2, texture.mOpaqueCalled);
- }
-
- @SmallTest
- public void testColorTexture() {
- GLCanvasMock canvas = new GLCanvasMock();
- ColorTexture texture = new ColorTexture(0x12345678);
-
- texture.setSize(42, 47);
- assertEquals(texture.getWidth(), 42);
- assertEquals(texture.getHeight(), 47);
- assertEquals(0, canvas.mFillRectCalled);
- texture.draw(canvas, 0, 0);
- assertEquals(1, canvas.mFillRectCalled);
- assertEquals(0x12345678, canvas.mFillRectColor);
- assertEquals(42f, canvas.mFillRectWidth);
- assertEquals(47f, canvas.mFillRectHeight);
- assertFalse(texture.isOpaque());
- assertTrue(new ColorTexture(0xFF000000).isOpaque());
- }
-
- private class MyUploadedTexture extends UploadedTexture {
- int mGetCalled;
- int mFreeCalled;
- Bitmap mBitmap;
- @Override
- protected Bitmap onGetBitmap() {
- mGetCalled++;
- Config config = Config.ARGB_8888;
- mBitmap = Bitmap.createBitmap(47, 42, config);
- return mBitmap;
- }
- @Override
- protected void onFreeBitmap(Bitmap bitmap) {
- mFreeCalled++;
- assertSame(mBitmap, bitmap);
- mBitmap.recycle();
- mBitmap = null;
- }
- }
-
- @SmallTest
- public void testUploadedTexture() {
- GL11 glStub = new GLStub();
- GLCanvas canvas = new GLES11Canvas(glStub);
- MyUploadedTexture texture = new MyUploadedTexture();
-
- // draw it and the bitmap should be fetched.
- assertEquals(0, texture.mFreeCalled);
- assertEquals(0, texture.mGetCalled);
- texture.draw(canvas, 0, 0);
- assertEquals(1, texture.mGetCalled);
- assertTrue(texture.isLoaded());
- assertTrue(texture.isContentValid());
-
- // invalidate content and it should be freed.
- texture.invalidateContent();
- assertFalse(texture.isContentValid());
- assertEquals(1, texture.mFreeCalled);
- assertTrue(texture.isLoaded()); // But it's still loaded
-
- // draw it again and the bitmap should be fetched again.
- texture.draw(canvas, 0, 0);
- assertEquals(2, texture.mGetCalled);
- assertTrue(texture.isLoaded());
- assertTrue(texture.isContentValid());
-
- // recycle the texture and it should be freed again.
- texture.recycle();
- assertEquals(2, texture.mFreeCalled);
- // TODO: these two are broken and waiting for fix.
- //assertFalse(texture.isLoaded(canvas));
- //assertFalse(texture.isContentValid(canvas));
- }
-
- class MyTextureForMixed extends BasicTexture {
- MyTextureForMixed(GLCanvas canvas, int id) {
- super(canvas, id, 0);
- }
-
- @Override
- protected boolean onBind(GLCanvas canvas) {
- return true;
- }
-
- @Override
- protected int getTarget() {
- return GL11.GL_TEXTURE_2D;
- }
-
- @Override
- public boolean isOpaque() {
- return true;
- }
- }
-
- @SmallTest
- public void testBitmapTexture() {
- Config config = Config.ARGB_8888;
- Bitmap bitmap = Bitmap.createBitmap(47, 42, config);
- assertFalse(bitmap.isRecycled());
- BitmapTexture texture = new BitmapTexture(bitmap);
- texture.recycle();
- assertFalse(bitmap.isRecycled());
- bitmap.recycle();
- assertTrue(bitmap.isRecycled());
- }
-}