diff options
Diffstat (limited to 'tests')
5 files changed, 180 insertions, 33 deletions
diff --git a/tests/CoreTests/android/core/MiscRegressionTest.java b/tests/CoreTests/android/core/MiscRegressionTest.java index 8281db0..7734397 100644 --- a/tests/CoreTests/android/core/MiscRegressionTest.java +++ b/tests/CoreTests/android/core/MiscRegressionTest.java @@ -66,37 +66,6 @@ public class MiscRegressionTest extends TestCase { } } - // Regression test for #1061945: negative Shorts do not - // serialize/deserialize correctly - @SmallTest - public void testShortSerialization() throws Exception { - // create an instance of ObjectInputStream - String x = new String("serialize_foobar"); - java.io.ByteArrayOutputStream baos = new java.io.ByteArrayOutputStream(); - (new java.io.ObjectOutputStream(baos)).writeObject(x); - ObjectInputStream ois = new java.io.ObjectInputStream( - new java.io.ByteArrayInputStream(baos.toByteArray())); - - // get the setField(...,, short val) method in question - Class<ObjectInputStream> oClass = ObjectInputStream.class; - Method m = oClass.getDeclaredMethod("setField", new Class[] { Object.class, Class.class, String.class, short.class}); - // compose args - short start = 123; - short origval = -1; // 0xffff - Short obj = new Short(start); - Class<Short> declaringClass = Short.class; - String fieldDescName = "value"; - - // test the initial value - assertEquals(obj.shortValue(), start); - // invoke native method to set the field "value" of type short to the newval - m.setAccessible(true); // since the method is private - m.invoke(ois, new Object[]{ obj, declaringClass, fieldDescName, new Short(origval)} ); - // test the set value - short res = obj.shortValue(); - assertEquals("Read and written values must be equal", origval, res); - } - // Regression test for #951285: Suitable LogHandler should be chosen // depending on the environment. @MediumTest diff --git a/tests/HwAccelerationTest/src/com/android/test/hwui/GradientsActivity.java b/tests/HwAccelerationTest/src/com/android/test/hwui/GradientsActivity.java index b70f3a9..8fa626b 100644 --- a/tests/HwAccelerationTest/src/com/android/test/hwui/GradientsActivity.java +++ b/tests/HwAccelerationTest/src/com/android/test/hwui/GradientsActivity.java @@ -18,13 +18,21 @@ package com.android.test.hwui; import android.app.Activity; import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.BitmapShader; import android.graphics.Canvas; import android.graphics.LinearGradient; +import android.graphics.RadialGradient; import android.graphics.Matrix; import android.graphics.Paint; import android.graphics.Shader; +import android.graphics.SweepGradient; import android.os.Bundle; +import android.view.Gravity; import android.view.View; +import android.widget.FrameLayout; +import android.widget.SeekBar; @SuppressWarnings({"UnusedDeclaration"}) public class GradientsActivity extends Activity { @@ -32,9 +40,157 @@ public class GradientsActivity extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(new ShadersView(this)); + final FrameLayout layout = new FrameLayout(this); + + final ShadersView shadersView = new ShadersView(this); + final GradientView gradientView = new GradientView(this); + final RadialGradientView radialGradientView = new RadialGradientView(this); + final SweepGradientView sweepGradientView = new SweepGradientView(this); + final BitmapView bitmapView = new BitmapView(this); + + final SeekBar rotateView = new SeekBar(this); + rotateView.setMax(360); + rotateView.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { + @Override + public void onStopTrackingTouch(SeekBar seekBar) { + } + + @Override + public void onStartTrackingTouch(SeekBar seekBar) { + } + + @Override + public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { + gradientView.setRotationY((float) progress); + radialGradientView.setRotationX((float) progress); + sweepGradientView.setRotationY((float) progress); + bitmapView.setRotationX((float) progress); + } + }); + + layout.addView(shadersView); + layout.addView(gradientView, new FrameLayout.LayoutParams( + 200, 200, Gravity.CENTER)); + + FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(200, 200, Gravity.CENTER); + lp.setMargins(220, 0, 0, 0); + layout.addView(radialGradientView, lp); + + lp = new FrameLayout.LayoutParams(200, 200, Gravity.CENTER); + lp.setMargins(440, 0, 0, 0); + layout.addView(sweepGradientView, lp); + + lp = new FrameLayout.LayoutParams(200, 200, Gravity.CENTER); + lp.setMargins(220, -220, 0, 0); + layout.addView(bitmapView, lp); + + layout.addView(rotateView, new FrameLayout.LayoutParams( + 300, FrameLayout.LayoutParams.WRAP_CONTENT, + Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM)); + + setContentView(layout); } + + static class BitmapView extends View { + private final Paint mPaint; + + BitmapView(Context c) { + super(c); + + Bitmap texture = BitmapFactory.decodeResource(c.getResources(), R.drawable.sunset1); + BitmapShader shader = new BitmapShader(texture, Shader.TileMode.REPEAT, + Shader.TileMode.REPEAT); + mPaint = new Paint(); + mPaint.setShader(shader); + } + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec); + setMeasuredDimension(200, 200); + } + @Override + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + canvas.drawRect(0.0f, 0.0f, getWidth(), getHeight(), mPaint); + } + } + + static class GradientView extends View { + private final Paint mPaint; + + GradientView(Context c) { + super(c); + + LinearGradient gradient = new LinearGradient(0, 0, 200, 0, 0xFF000000, 0, + Shader.TileMode.CLAMP); + mPaint = new Paint(); + mPaint.setShader(gradient); + } + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec); + setMeasuredDimension(200, 200); + } + + @Override + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + canvas.drawRect(0.0f, 0.0f, getWidth(), getHeight(), mPaint); + } + } + + static class RadialGradientView extends View { + private final Paint mPaint; + + RadialGradientView(Context c) { + super(c); + + RadialGradient gradient = new RadialGradient(0.0f, 0.0f, 100.0f, 0xff000000, 0xffffffff, + Shader.TileMode.MIRROR); + mPaint = new Paint(); + mPaint.setShader(gradient); + } + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec); + setMeasuredDimension(200, 200); + } + + @Override + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + canvas.drawRect(0.0f, 0.0f, getWidth(), getHeight(), mPaint); + } + } + + static class SweepGradientView extends View { + private final Paint mPaint; + + SweepGradientView(Context c) { + super(c); + + SweepGradient gradient = new SweepGradient(100.0f, 100.0f, 0xff000000, 0xffffffff); + mPaint = new Paint(); + mPaint.setShader(gradient); + } + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec); + setMeasuredDimension(200, 200); + } + + @Override + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + canvas.drawRect(0.0f, 0.0f, getWidth(), getHeight(), mPaint); + } + } + static class ShadersView extends View { private final Paint mPaint; private final float mDrawWidth; diff --git a/tests/HwAccelerationTest/src/com/android/test/hwui/LinesActivity.java b/tests/HwAccelerationTest/src/com/android/test/hwui/LinesActivity.java index 4430533..0dc836d 100644 --- a/tests/HwAccelerationTest/src/com/android/test/hwui/LinesActivity.java +++ b/tests/HwAccelerationTest/src/com/android/test/hwui/LinesActivity.java @@ -101,6 +101,8 @@ public class LinesActivity extends Activity { mSmallPaint.setAntiAlias(false); canvas.drawLine(0.0f, 0.0f, 400.0f, 0.0f, mSmallPaint); mSmallPaint.setAntiAlias(true); + canvas.drawLine(0.0f, 0.0f, 0.0f, 400.0f, mSmallPaint); + canvas.drawLine(0.0f, 400.0f, 400.0f, 400.0f, mSmallPaint); canvas.translate(120.0f, 0.0f); mAlphaPaint.setShader(mShader); diff --git a/tests/StatusBar/src/com/android/statusbartest/NotificationTestList.java b/tests/StatusBar/src/com/android/statusbartest/NotificationTestList.java index 2d7ee13..e30cf4a 100644 --- a/tests/StatusBar/src/com/android/statusbartest/NotificationTestList.java +++ b/tests/StatusBar/src/com/android/statusbartest/NotificationTestList.java @@ -727,7 +727,7 @@ public class NotificationTestList extends TestActivity } }, - new Test("Persistent with numbers 222") { + new Test("Persistent with numbers 22") { public void run() { mNM.notify(1, notificationWithNumbers(22)); } diff --git a/tests/StatusBar/src/com/android/statusbartest/PowerTest.java b/tests/StatusBar/src/com/android/statusbartest/PowerTest.java index f778cab..178fa92 100644 --- a/tests/StatusBar/src/com/android/statusbartest/PowerTest.java +++ b/tests/StatusBar/src/com/android/statusbartest/PowerTest.java @@ -49,6 +49,8 @@ public class PowerTest extends TestActivity int mPokeState = 0; IBinder mPokeToken = new Binder(); Handler mHandler = new Handler(); + PowerManager mPm; + PowerManager.WakeLock mProx; @Override protected String tag() { @@ -58,10 +60,27 @@ public class PowerTest extends TestActivity @Override protected Test[] tests() { mPowerManager = IPowerManager.Stub.asInterface(ServiceManager.getService("power")); + mPm = (PowerManager)getSystemService("power"); + mProx = mPm.newWakeLock(PowerManager.PROXIMITY_SCREEN_OFF_WAKE_LOCK, "PowerTest-prox"); return mTests; } private Test[] mTests = new Test[] { + new Test("Enable proximity") { + public void run() { + mProx.acquire(); + } + }, + new Test("Disable proximity") { + public void run() { + mProx.release(); + } + }, + new Test("Disable proximity (WAIT_FOR_PROXIMITY_NEGATIVE)") { + public void run() { + mProx.release(PowerManager.WAIT_FOR_PROXIMITY_NEGATIVE); + } + }, new Test("Cheek events don't poke") { public void run() { mPokeState |= LocalPowerManager.POKE_LOCK_IGNORE_CHEEK_EVENTS; @@ -72,6 +91,7 @@ public class PowerTest extends TestActivity } } }, + new Test("Cheek events poke") { public void run() { mPokeState &= ~LocalPowerManager.POKE_LOCK_IGNORE_CHEEK_EVENTS; |