diff options
Diffstat (limited to 'tests/src/com/android/gallery3d/jpegstream')
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 -} |