summaryrefslogtreecommitdiffstats
path: root/tests/src/com/android/gallery3d/jpegstream
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src/com/android/gallery3d/jpegstream')
-rw-r--r--tests/src/com/android/gallery3d/jpegstream/JpegStreamReaderTest.java84
-rw-r--r--tests/src/com/android/gallery3d/jpegstream/JpegStreamTestCase.java71
-rw-r--r--tests/src/com/android/gallery3d/jpegstream/JpegStreamTestRunner.java78
-rw-r--r--tests/src/com/android/gallery3d/jpegstream/JpegStreamWriterTest.java138
4 files changed, 0 insertions, 371 deletions
diff --git a/tests/src/com/android/gallery3d/jpegstream/JpegStreamReaderTest.java b/tests/src/com/android/gallery3d/jpegstream/JpegStreamReaderTest.java
deleted file mode 100644
index ae60a91a7..000000000
--- a/tests/src/com/android/gallery3d/jpegstream/JpegStreamReaderTest.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright (C) 2013 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.jpegstream;
-
-import android.test.suitebuilder.annotation.MediumTest;
-
-import android.graphics.Bitmap;
-import android.graphics.BitmapFactory;
-import android.graphics.Point;
-import android.os.Environment;
-import android.util.Log;
-
-import com.android.gallery3d.common.Utils;
-import com.android.gallery3d.tests.R;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.nio.ByteBuffer;
-import java.nio.ByteOrder;
-import java.util.Arrays;
-
-public class JpegStreamReaderTest extends JpegStreamTestCase {
- public static final String TAG = "JpegStreamReaderTest";
- private JPEGInputStream mStream;
- private Bitmap mBitmap;
-
- public JpegStreamReaderTest(int imageRes) {
- super(imageRes);
- }
-
- @Override
- public void setUp() throws Exception {
- super.setUp();
- mBitmap = BitmapFactory.decodeStream(getImageInputStream());
- }
-
- @Override
- public void tearDown() throws Exception {
- super.tearDown();
- Utils.closeSilently(mStream);
- mStream = null;
- if (mBitmap != null) {
- mBitmap.recycle();
- mBitmap = null;
- }
- }
-
- @MediumTest
- public void testBasicReads() throws Exception {
-
- // Setup input stream.
- mStream = new JPEGInputStream(reopenFileStream(), JpegConfig.FORMAT_RGBA);
- Point dimens = mStream.getDimensions();
-
- // Read whole stream into array.
- byte[] bytes = new byte[dimens.x * StreamUtils.pixelSize(JpegConfig.FORMAT_RGBA) * dimens.y];
- assertTrue(mStream.read(bytes, 0, bytes.length) == bytes.length);
-
- // Set pixels in bitmap
- Bitmap test = Bitmap.createBitmap(dimens.x, dimens.y, Bitmap.Config.ARGB_8888);
- ByteBuffer buf = ByteBuffer.wrap(bytes);
- test.copyPixelsFromBuffer(buf);
- assertTrue(test.getWidth() == mBitmap.getWidth() && test.getHeight() == mBitmap.getHeight());
- assertTrue(mStream.read(bytes, 0, bytes.length) == -1);
- }
-
- // TODO : more tests
-}
diff --git a/tests/src/com/android/gallery3d/jpegstream/JpegStreamTestCase.java b/tests/src/com/android/gallery3d/jpegstream/JpegStreamTestCase.java
deleted file mode 100644
index ed3b08aaa..000000000
--- a/tests/src/com/android/gallery3d/jpegstream/JpegStreamTestCase.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (C) 2013 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.jpegstream;
-
-import android.content.res.Resources;
-import android.test.InstrumentationTestCase;
-import android.util.Log;
-
-import com.android.gallery3d.common.Utils;
-
-import java.io.InputStream;
-
-public class JpegStreamTestCase extends InstrumentationTestCase {
- public static final String TAG = "JpegStreamTestCase";
-
- private static final String RES_ID_TITLE = "Resource ID: %x";
-
- private InputStream mImageInputStream;
- private final int mImageResourceId;
-
- public JpegStreamTestCase(int imageRes) {
- mImageResourceId = imageRes;
- }
-
- protected InputStream getImageInputStream() {
- return mImageInputStream;
- }
-
- @Override
- public void setUp() throws Exception {
- Log.d(TAG, "doing setUp...");
- mImageInputStream = reopenFileStream();
- }
-
- @Override
- public void tearDown() throws Exception {
- Log.d(TAG, "doing tearDown...");
- Utils.closeSilently(mImageInputStream);
- mImageInputStream = null;
- }
-
- protected String getImageTitle() {
- return String.format(RES_ID_TITLE, mImageResourceId);
- }
-
- protected InputStream reopenFileStream() throws Exception {
- return openResource(mImageResourceId);
- }
-
- protected InputStream openResource(int resourceID) throws Exception {
- try {
- Resources res = getInstrumentation().getContext().getResources();
- return res.openRawResource(resourceID);
- } catch (Exception e) {
- throw new Exception(getImageTitle(), e);
- }
- }
-}
diff --git a/tests/src/com/android/gallery3d/jpegstream/JpegStreamTestRunner.java b/tests/src/com/android/gallery3d/jpegstream/JpegStreamTestRunner.java
deleted file mode 100644
index 2afaf39eb..000000000
--- a/tests/src/com/android/gallery3d/jpegstream/JpegStreamTestRunner.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (C) 2013 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.jpegstream;
-
-import android.test.InstrumentationTestRunner;
-import android.test.InstrumentationTestSuite;
-import android.util.Log;
-
-import com.android.gallery3d.exif.ExifTestRunner;
-import com.android.gallery3d.tests.R;
-
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-public class JpegStreamTestRunner extends InstrumentationTestRunner {
- private static final String TAG = "JpegStreamTestRunner";
-
- private static final int[] IMG_RESOURCE = {
- R.raw.galaxy_nexus
- };
-
- @Override
- public TestSuite getAllTests() {
- TestSuite suite = new InstrumentationTestSuite(this);
- addAllTestsFromTestCase(JpegStreamReaderTest.class, suite);
- addAllTestsFromTestCase(JpegStreamWriterTest.class, suite);
- return suite;
- }
-
- private void addAllTestsFromTestCase(Class<? extends JpegStreamTestCase> testClass,
- TestSuite suite) {
- for (Method method : testClass.getDeclaredMethods()) {
- if (method.getName().startsWith("test") && method.getParameterTypes().length == 0) {
- for (int i = 0; i < IMG_RESOURCE.length; i++) {
- TestCase test;
- try {
- test = testClass.getDeclaredConstructor(int.class).
- newInstance(IMG_RESOURCE[i]);
- test.setName(method.getName());
- suite.addTest(test);
- } catch (IllegalArgumentException e) {
- Log.e(TAG, "Failed to create test case", e);
- } catch (InstantiationException e) {
- Log.e(TAG, "Failed to create test case", e);
- } catch (IllegalAccessException e) {
- Log.e(TAG, "Failed to create test case", e);
- } catch (InvocationTargetException e) {
- Log.e(TAG, "Failed to create test case", e);
- } catch (NoSuchMethodException e) {
- Log.e(TAG, "Failed to create test case", e);
- }
- }
- }
- }
- }
-
- @Override
- public ClassLoader getLoader() {
- return ExifTestRunner.class.getClassLoader();
- }
-}
diff --git a/tests/src/com/android/gallery3d/jpegstream/JpegStreamWriterTest.java b/tests/src/com/android/gallery3d/jpegstream/JpegStreamWriterTest.java
deleted file mode 100644
index befba4ccd..000000000
--- a/tests/src/com/android/gallery3d/jpegstream/JpegStreamWriterTest.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright (C) 2013 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.jpegstream;
-
-import android.graphics.Bitmap;
-import android.graphics.BitmapFactory;
-import android.os.Environment;
-import android.util.Log;
-
-import com.android.gallery3d.common.Utils;
-import com.android.gallery3d.tests.R;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.nio.ByteBuffer;
-
-public class JpegStreamWriterTest extends JpegStreamTestCase {
- public static final String TAG = "JpegStreamWriterTest";
- private JPEGOutputStream mStream;
- private ByteArrayOutputStream mWrappedStream;
- private Bitmap mBitmap;
- private Bitmap mControl;
-
- // galaxy_nexus.jpg image compressed with q=20
- private static final int CONTROL_RID = R.raw.jpeg_control;
-
- public JpegStreamWriterTest(int imageRes) {
- super(imageRes);
- }
-
- @Override
- public void setUp() throws Exception {
- super.setUp();
- mBitmap = BitmapFactory.decodeStream(getImageInputStream());
- mControl = BitmapFactory.decodeStream(openResource(CONTROL_RID));
- mWrappedStream = new ByteArrayOutputStream();
-
- }
-
- @Override
- public void tearDown() throws Exception {
- super.tearDown();
- Utils.closeSilently(mStream);
- Utils.closeSilently(mWrappedStream);
- mWrappedStream = null;
- mStream = null;
- if (mBitmap != null) {
- mBitmap.recycle();
- mBitmap = null;
- }
- if (mControl != null) {
- mControl.recycle();
- mControl = null;
- }
- }
-
- public void testBasicWrites() throws Exception {
- assertTrue(mBitmap != null);
- int width = mBitmap.getWidth();
- int height = mBitmap.getHeight();
- mStream = new JPEGOutputStream(mWrappedStream, width,
- height, 20, JpegConfig.FORMAT_RGBA);
-
- // Put bitmap pixels into a byte array (format is RGBA).
- int rowLength = width * StreamUtils.pixelSize(JpegConfig.FORMAT_RGBA);
- int size = height * rowLength;
- byte[] byteArray = new byte[size];
- ByteBuffer buf = ByteBuffer.wrap(byteArray);
- mBitmap.copyPixelsToBuffer(buf);
-
- // Write out whole array
- mStream.write(byteArray, 0, byteArray.length);
- mStream.close();
-
- // Get compressed jpeg output
- byte[] compressed = mWrappedStream.toByteArray();
-
- // Check jpeg
- ByteArrayInputStream inStream = new ByteArrayInputStream(compressed);
- Bitmap test = BitmapFactory.decodeStream(inStream);
- assertTrue(test != null);
- assertTrue(test.sameAs(mControl));
- }
-
- public void testStreamingWrites() throws Exception {
- assertTrue(mBitmap != null);
- int width = mBitmap.getWidth();
- int height = mBitmap.getHeight();
- mStream = new JPEGOutputStream(mWrappedStream, width,
- height, 20, JpegConfig.FORMAT_RGBA);
-
- // Put bitmap pixels into a byte array (format is RGBA).
- int rowLength = width * StreamUtils.pixelSize(JpegConfig.FORMAT_RGBA);
- int size = height * rowLength;
- byte[] byteArray = new byte[size];
- ByteBuffer buf = ByteBuffer.wrap(byteArray);
- mBitmap.copyPixelsToBuffer(buf);
-
- // Write array in chunks
- int chunkSize = rowLength / 3;
- int written = 0;
- while (written < size) {
- if (written + chunkSize > size) {
- chunkSize = size - written;
- }
- mStream.write(byteArray, written, chunkSize);
- written += chunkSize;
- }
- mStream.close();
-
- // Get compressed jpeg output
- byte[] compressed = mWrappedStream.toByteArray();
-
- // Check jpeg
- ByteArrayInputStream inStream = new ByteArrayInputStream(compressed);
- Bitmap test = BitmapFactory.decodeStream(inStream);
- assertTrue(test != null);
- assertTrue(test.sameAs(mControl));
- }
-
- // TODO : more tests
-}