AI 144801: am: CL 144799 CTS: add test cases for RasterizerSpan and QuoteSpan
Original author: sus
Merged from: //branches/cupcake/...
Automated import of CL 144801
diff --git a/tests/tests/text/src/android/text/style/cts/QuoteSpanTest.java b/tests/tests/text/src/android/text/style/cts/QuoteSpanTest.java
new file mode 100644
index 0000000..793b2b7
--- /dev/null
+++ b/tests/tests/text/src/android/text/style/cts/QuoteSpanTest.java
@@ -0,0 +1,170 @@
+/*
+ * Copyright (C) 2008 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 android.text.style.cts;
+
+import dalvik.annotation.TestLevel;
+import dalvik.annotation.TestTargetClass;
+import dalvik.annotation.TestTargetNew;
+import dalvik.annotation.TestTargets;
+import dalvik.annotation.ToBeFixed;
+
+import android.graphics.Canvas;
+import android.graphics.Color;
+import android.graphics.Paint;
+import android.os.Parcel;
+import android.text.style.QuoteSpan;
+
+import junit.framework.TestCase;
+
+@TestTargetClass(QuoteSpan.class)
+public class QuoteSpanTest extends TestCase {
+ @TestTargets({
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test constructor(s) of QuoteSpan.",
+ method = "QuoteSpan",
+ args = {}
+ ),
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test constructor(s) of QuoteSpan.",
+ method = "QuoteSpan",
+ args = {int.class}
+ ),
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test constructor(s) of QuoteSpan.",
+ method = "QuoteSpan",
+ args = {android.os.Parcel.class}
+ )
+ })
+ @ToBeFixed(bug = "1695243", explanation = "miss javadoc")
+ public void testConstructor() {
+ new QuoteSpan();
+ QuoteSpan q = new QuoteSpan(Color.RED);
+
+ final Parcel p = Parcel.obtain();
+ q.writeToParcel(p, 0);
+ p.setDataPosition(0);
+ new QuoteSpan(p);
+ p.recycle();
+ }
+
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test getLeadingMargin(boolean first).",
+ method = "getLeadingMargin",
+ args = {boolean.class}
+ )
+ @ToBeFixed(bug = "1695243", explanation = "miss javadoc")
+ public void testGetLeadingMargin() {
+ QuoteSpan quoteSpan = new QuoteSpan();
+
+ quoteSpan.getLeadingMargin(true);
+ quoteSpan.getLeadingMargin(false);
+ }
+
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test getColor().",
+ method = "getColor",
+ args = {}
+ )
+ @ToBeFixed(bug = "1695243", explanation = "miss javadoc")
+ public void testGetColor() {
+ QuoteSpan quoteSpan = new QuoteSpan(Color.BLACK);
+ assertEquals(Color.BLACK, quoteSpan.getColor());
+
+ quoteSpan = new QuoteSpan(Color.BLUE);
+ assertEquals(Color.BLUE, quoteSpan.getColor());
+ }
+
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test drawLeadingMargin(Canvas c, Paint p, int x, int dir, int top," +
+ " int baseline, int bottom, CharSequence text, int start, int end," +
+ " boolean first, Layout layout).",
+ method = "drawLeadingMargin",
+ args = {android.graphics.Canvas.class, android.graphics.Paint.class, int.class,
+ int.class, int.class, int.class, int.class, java.lang.CharSequence.class,
+ int.class, int.class, boolean.class, android.text.Layout.class}
+ )
+ @ToBeFixed(bug = "1695243", explanation = "miss javadoc, and have not found a reasonable" +
+ " way to test it automatically.")
+ public void testDrawLeadingMargin() {
+ QuoteSpan quoteSpan = new QuoteSpan();
+
+ Canvas c = new Canvas();
+ Paint p = new Paint();
+ quoteSpan.drawLeadingMargin(c, p, 0, 0, 0, 0, 0, null, 0, 0, true, null);
+
+ try {
+ quoteSpan.drawLeadingMargin(null, null, 0, 0, 0, 0, 0, null, 0, 0, true, null);
+ fail("should throw NullPointerException.");
+ } catch (NullPointerException e) {
+ // expected, test success.
+ }
+ }
+
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test describeContents().",
+ method = "describeContents",
+ args = {}
+ )
+ @ToBeFixed(bug = "1695243", explanation = "miss javadoc")
+ public void testDescribeContents() {
+ QuoteSpan quoteSpan = new QuoteSpan(Color.RED);
+ quoteSpan.describeContents();
+ }
+
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test getSpanTypeId().",
+ method = "getSpanTypeId",
+ args = {}
+ )
+ @ToBeFixed(bug = "1695243", explanation = "miss javadoc")
+ public void testGetSpanTypeId() {
+ QuoteSpan quoteSpan = new QuoteSpan(Color.RED);
+ quoteSpan.getSpanTypeId();
+ }
+
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test writeToParcel(Parcel dest, int flags).",
+ method = "writeToParcel",
+ args = {Parcel.class, int.class}
+ )
+ public void testWriteToParcel() {
+ Parcel p = Parcel.obtain();
+ QuoteSpan quoteSpan = new QuoteSpan(Color.RED);
+ quoteSpan.writeToParcel(p, 0);
+ p.setDataPosition(0);
+ QuoteSpan q = new QuoteSpan(p);
+ assertEquals(Color.RED, q.getColor());
+ p.recycle();
+
+ p = Parcel.obtain();
+ quoteSpan = new QuoteSpan(Color.MAGENTA);
+ quoteSpan.writeToParcel(p, 0);
+ p.setDataPosition(0);
+ q = new QuoteSpan(p);
+ assertEquals(Color.MAGENTA, q.getColor());
+ p.recycle();
+ }
+}
diff --git a/tests/tests/text/src/android/text/style/cts/RasterizerSpanTest.java b/tests/tests/text/src/android/text/style/cts/RasterizerSpanTest.java
new file mode 100644
index 0000000..614abaa
--- /dev/null
+++ b/tests/tests/text/src/android/text/style/cts/RasterizerSpanTest.java
@@ -0,0 +1,87 @@
+/*
+ * Copyright (C) 2008 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 android.text.style.cts;
+
+import dalvik.annotation.TestLevel;
+import dalvik.annotation.TestTargetClass;
+import dalvik.annotation.TestTargetNew;
+import dalvik.annotation.ToBeFixed;
+
+import android.graphics.Rasterizer;
+import android.text.TextPaint;
+import android.text.style.RasterizerSpan;
+
+import junit.framework.TestCase;
+
+@TestTargetClass(RasterizerSpan.class)
+public class RasterizerSpanTest extends TestCase {
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test constructor(s) of {@link RasterizerSpan}",
+ method = "RasterizerSpan",
+ args = {android.graphics.Rasterizer.class}
+ )
+ @ToBeFixed(bug = "1695243", explanation = "miss javadoc")
+ public void testConstructor() {
+ Rasterizer r = new Rasterizer();
+
+ new RasterizerSpan(r);
+ new RasterizerSpan(null);
+ }
+
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test {@link RasterizerSpan#getRasterizer()}",
+ method = "getRasterizer",
+ args = {}
+ )
+ @ToBeFixed(bug = "1695243", explanation = "miss javadoc")
+ public void testGetRasterizer() {
+ Rasterizer expected = new Rasterizer();
+
+ RasterizerSpan rasterizerSpan = new RasterizerSpan(expected);
+ assertSame(expected, rasterizerSpan.getRasterizer());
+
+ rasterizerSpan = new RasterizerSpan(null);
+ assertNull(rasterizerSpan.getRasterizer());
+ }
+
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
+ notes = "Test {@link RasterizerSpan#updateDrawState(TextPaint)}",
+ method = "updateDrawState",
+ args = {android.text.TextPaint.class}
+ )
+ @ToBeFixed(bug = "1695243", explanation = "miss javadoc")
+ public void testUpdateDrawState() {
+ Rasterizer rasterizer = new Rasterizer();
+ RasterizerSpan rasterizerSpan = new RasterizerSpan(rasterizer);
+
+ TextPaint tp = new TextPaint();
+ assertNull(tp.getRasterizer());
+
+ rasterizerSpan.updateDrawState(tp);
+ assertSame(rasterizer, tp.getRasterizer());
+
+ try {
+ rasterizerSpan.updateDrawState(null);
+ fail("should throw NullPointerException.");
+ } catch (NullPointerException e) {
+ // expected, test success.
+ }
+ }
+}