package jp.mixi.compatibility.android.view; import android.content.Context; import android.graphics.Paint; import android.os.Build; import android.test.AndroidTestCase; import android.view.View; /** * Created by Hideyuki.Kikuma on 2014/10/03. * * @author Hideyuki.Kikuma */ public class ViewCompatTest extends AndroidTestCase { public void testSetLayerType() { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) return; MockView view = new MockView(getContext()); Paint paint = new Paint(); ViewCompat.setLayerType(view, View.LAYER_TYPE_HARDWARE, paint); assertEquals(View.LAYER_TYPE_HARDWARE, view.mLayerType); assertEquals(paint, view.mPaint); assertTrue(view.mCalled); } public void testCallSetLayerType() { MockView view = new MockView(getContext()); ViewCompat.setLayerType(view, View.LAYER_TYPE_HARDWARE, null); if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) { assertFalse(view.mCalled); } else { assertTrue(view.mCalled); } } private class MockView extends View { int mLayerType; Paint mPaint; boolean mCalled = false; public MockView(Context context) { super(context); } @Override public void setLayerType(int layerType, Paint paint) { mCalled = true; mLayerType = layerType; mPaint = paint; } } }