/platform/libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLWarningTest.java
https://github.com/lems111/Intercept-CM6-Kernel · Java · 474 lines · 360 code · 66 blank · 48 comment · 33 complexity · cc0030d36cf25753adeffea7e6d19b02 MD5 · raw file
- /*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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 org.apache.harmony.sql.tests.java.sql;
- import dalvik.annotation.TestTargetClass;
- import dalvik.annotation.TestTargets;
- import dalvik.annotation.TestLevel;
- import dalvik.annotation.TestTargetNew;
- import java.io.Serializable;
- import java.sql.SQLException;
- import java.sql.SQLWarning;
- import org.apache.harmony.testframework.serialization.SerializationTest;
- import org.apache.harmony.testframework.serialization.SerializationTest.SerializableAssert;
- import junit.framework.TestCase;
- @TestTargetClass(SQLWarning.class)
- public class SQLWarningTest extends TestCase {
- /*
- * ConstructorTest
- */
- @TestTargetNew(
- level = TestLevel.PARTIAL_COMPLETE,
- notes = "",
- method = "SQLWarning",
- args = {}
- )
- public void testSQLWarning() {
- String[] theFinalStates1 = { null };
- String[] theFinalStates2 = { null };
- int[] theFinalStates3 = { 0 };
- SQLWarning[] theFinalStates4 = { null };
- Exception[] theExceptions = { null };
- SQLWarning aSQLWarning;
- int loopCount = 1;
- for (int i = 0; i < loopCount; i++) {
- try {
- aSQLWarning = new SQLWarning();
- if (theExceptions[i] != null) {
- fail();
- }
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getMessage(), theFinalStates1[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getSQLState(), theFinalStates2[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getErrorCode(), theFinalStates3[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getNextWarning(), theFinalStates4[i]);
- } catch (Exception e) {
- if (theExceptions[i] == null) {
- fail(i + "Unexpected exception");
- }
- assertEquals(i + "Exception mismatch", e.getClass(),
- theExceptions[i].getClass());
- assertEquals(i + "Exception mismatch", e.getMessage(),
- theExceptions[i].getMessage());
- } // end try
- } // end for
- } // end method testSQLWarning
- /*
- * ConstructorTest
- */
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- notes = "",
- method = "SQLWarning",
- args = {java.lang.String.class}
- )
- public void testSQLWarningString() {
- String[] init1 = { "a", "1", "valid1", "----", "&valid*", null,
- "", "\u0000" };
- String[] theFinalStates1 = init1;
- String[] theFinalStates2 = { null, null, null, null, null, null, null,
- null };
- int[] theFinalStates3 = { 0, 0, 0, 0, 0, 0, 0, 0 };
- SQLWarning[] theFinalStates4 = { null, null, null, null, null, null,
- null, null };
- Exception[] theExceptions = { null, null, null, null, null, null, null,
- null };
- SQLWarning aSQLWarning;
- int loopCount = init1.length;
- for (int i = 0; i < loopCount; i++) {
- try {
- aSQLWarning = new SQLWarning(init1[i]);
- if (theExceptions[i] != null) {
- fail();
- }
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getMessage(), theFinalStates1[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getSQLState(), theFinalStates2[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getErrorCode(), theFinalStates3[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getNextWarning(), theFinalStates4[i]);
- } catch (Exception e) {
- if (theExceptions[i] == null) {
- fail(i + "Unexpected exception");
- }
- assertEquals(i + "Exception mismatch", e.getClass(),
- theExceptions[i].getClass());
- assertEquals(i + "Exception mismatch", e.getMessage(),
- theExceptions[i].getMessage());
- } // end try
- } // end for
- } // end method testSQLWarningString
- /*
- * ConstructorTest
- */
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- notes = "",
- method = "SQLWarning",
- args = {java.lang.String.class, java.lang.String.class}
- )
- public void testSQLWarningStringString() {
- String[] init1 = { "a", "1", "valid1", "----", "&valid*", null, "",
- "\u0000", "a", "a", "a" };
- String[] init2 = { "a", "1", "valid1", "----", "&valid*", "a", "a",
- "a", null, "", "\u0000" };
- String[] theFinalStates1 = init1;
- String[] theFinalStates2 = init2;
- int[] theFinalStates3 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
- SQLWarning[] theFinalStates4 = { null, null, null, null, null, null,
- null, null, null, null, null };
- Exception[] theExceptions = { null, null, null, null, null, null, null,
- null, null, null, null };
- SQLWarning aSQLWarning;
- int loopCount = init1.length;
- for (int i = 0; i < loopCount; i++) {
- try {
- aSQLWarning = new SQLWarning(init1[i], init2[i]);
- if (theExceptions[i] != null) {
- fail();
- }
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getMessage(), theFinalStates1[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getSQLState(), theFinalStates2[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getErrorCode(), theFinalStates3[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getNextWarning(), theFinalStates4[i]);
- } catch (Exception e) {
- if (theExceptions[i] == null) {
- fail(i + "Unexpected exception");
- }
- assertEquals(i + "Exception mismatch", e.getClass(),
- theExceptions[i].getClass());
- assertEquals(i + "Exception mismatch", e.getMessage(),
- theExceptions[i].getMessage());
- } // end try
- } // end for
- } // end method testSQLWarningStringString
- /*
- * ConstructorTest
- */
- @TestTargetNew(
- level = TestLevel.PARTIAL_COMPLETE,
- notes = "",
- method = "SQLWarning",
- args = {java.lang.String.class, java.lang.String.class, int.class}
- )
- public void testSQLWarningStringStringint() {
- String[] init1 = { "a", "1", "valid1", "----", "&valid*", "----",
- "----", null, "", "\u0000", "a", "a", "a" };
- String[] init2 = { "a", "1", "valid1", "----", "&valid*", "valid1",
- "----", "a", "a", "a", null, "", "\u0000" };
- int[] init3 = { -2147483648, 2147483647, 0, 1412862821, -733923487,
- 488067774, -1529953616, -2147483648, -2147483648, -2147483648,
- -2147483648, -2147483648, -2147483648 };
- String[] theFinalStates1 = init1;
- String[] theFinalStates2 = init2;
- int[] theFinalStates3 = init3;
- SQLWarning[] theFinalStates4 = { null, null, null, null, null, null,
- null, null, null, null, null, null, null };
- Exception[] theExceptions = { null, null, null, null, null, null, null,
- null, null, null, null, null, null };
- SQLWarning aSQLWarning;
- int loopCount = init1.length;
- for (int i = 0; i < loopCount; i++) {
- try {
- aSQLWarning = new SQLWarning(init1[i], init2[i], init3[i]);
- if (theExceptions[i] != null) {
- fail();
- }
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getMessage(), theFinalStates1[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getSQLState(), theFinalStates2[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getErrorCode(), theFinalStates3[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getNextWarning(), theFinalStates4[i]);
- } catch (Exception e) {
- if (theExceptions[i] == null) {
- fail(i + "Unexpected exception");
- }
- assertEquals(i + "Exception mismatch", e.getClass(),
- theExceptions[i].getClass());
- assertEquals(i + "Exception mismatch", e.getMessage(),
- theExceptions[i].getMessage());
- } // end try
- } // end for
- } // end method testSQLWarningStringStringint
- /*
- * Method test for getNextWarning
- */
- @TestTargetNew(
- level = TestLevel.PARTIAL_COMPLETE,
- notes = "",
- method = "getNextWarning",
- args = {}
- )
- public void testGetNextWarning() {
- SQLWarning aSQLWarning;
- String[] init1 = { "a", "1", "valid1", "----", "&valid*" };
- SQLWarning theReturn;
- SQLWarning[] theReturns = { null };
- String[] theFinalStates1 = init1;
- String[] theFinalStates2 = { null };
- int[] theFinalStates3 = { 0 };
- SQLWarning[] theFinalStates4 = { null };
- Exception[] theExceptions = { null };
- int loopCount = 1;
- for (int i = 0; i < loopCount; i++) {
- try {
- aSQLWarning = new SQLWarning(init1[i]);
- theReturn = aSQLWarning.getNextWarning();
- if (theExceptions[i] != null) {
- fail(i + "Exception missed");
- }
- assertEquals(i + "Return value mismatch", theReturn,
- theReturns[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getMessage(), theFinalStates1[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getSQLState(), theFinalStates2[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getErrorCode(), theFinalStates3[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getNextWarning(), theFinalStates4[i]);
- } catch (Exception e) {
- if (theExceptions[i] == null) {
- fail(i + "Unexpected exception");
- }
- assertEquals(i + "Exception mismatch", e.getClass(),
- theExceptions[i].getClass());
- assertEquals(i + "Exception mismatch", e.getMessage(),
- theExceptions[i].getMessage());
- } // end try
- } // end for
- } // end method testGetNextWarning
- /*
- * Method test for setNextWarning
- */
- @TestTargets({
- @TestTargetNew(
- level = TestLevel.PARTIAL_COMPLETE,
- notes = "",
- method = "setNextWarning",
- args = {java.sql.SQLWarning.class}
- ),
- @TestTargetNew(
- level = TestLevel.PARTIAL_COMPLETE,
- notes = "",
- method = "getNextWarning",
- args = {}
- )
- })
- public void testSetNextWarningSQLWarning() {
- SQLWarning[] parm1 = { new SQLWarning(), null };
- SQLWarning aSQLWarning;
- String[] init1 = { "a", "1" };
- String[] theFinalStates1 = init1;
- String[] theFinalStates2 = { null, null };
- int[] theFinalStates3 = { 0, 0 };
- SQLWarning[] theFinalStates4 = parm1;
- Exception[] theExceptions = { null, null };
- int loopCount = parm1.length;
- for (int i = 0; i < loopCount; i++) {
- try {
- aSQLWarning = new SQLWarning(init1[i]);
- aSQLWarning.setNextWarning(parm1[i]);
- if (theExceptions[i] != null) {
- fail(i + "Exception missed");
- }
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getMessage(), theFinalStates1[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getSQLState(), theFinalStates2[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getErrorCode(), theFinalStates3[i]);
- assertEquals(i + " Final state mismatch", aSQLWarning
- .getNextWarning(), theFinalStates4[i]);
- } catch (Exception e) {
- if (theExceptions[i] == null) {
- fail(i + "Unexpected exception");
- }
- assertEquals(i + "Exception mismatch", e.getClass(),
- theExceptions[i].getClass());
- assertEquals(i + "Exception mismatch", e.getMessage(),
- theExceptions[i].getMessage());
- } // end try
- } // end for
- } // end method testSetNextWarningSQLWarning
-
- /**
- * @tests java.sql.SQLWarning#setNextWarning(java.sql.SQLWarning)
- */
- @TestTargets({
- @TestTargetNew(
- level = TestLevel.PARTIAL_COMPLETE,
- notes = "",
- method = "setNextWarning",
- args = {java.sql.SQLWarning.class}
- ),
- @TestTargetNew(
- level = TestLevel.PARTIAL_COMPLETE,
- notes = "",
- method = "getNextWarning",
- args = {}
- )
- })
- public void test_setNextWarning_SQLWarning() {
- SQLWarning sw = new SQLWarning("reason", "SQLState", 0);
- SQLWarning sw1 = new SQLWarning("reason", "SQLState", 1);
- SQLWarning sw2 = new SQLWarning("reason", "SQLState", 2);
- SQLWarning sw3 = new SQLWarning("reason", "SQLState", 3);
-
- SQLException se = new SQLException("reason", "SQLState", 4);
-
- sw.setNextWarning(sw1);
- assertSame(sw1, sw.getNextException());
- assertSame(sw1, sw.getNextWarning());
-
-
- sw.setNextWarning(sw2);
- assertSame(sw2, sw1.getNextException());
- assertSame(sw2, sw1.getNextWarning());
-
- sw.setNextException(sw3);
- assertSame(sw3, sw2.getNextException());
- assertSame(sw3, sw2.getNextWarning());
-
- sw.setNextException(se);
- assertSame(se, sw3.getNextException());
- try {
- sw3.getNextWarning();
- fail("should throw Error");
- } catch (Error e) {
- //expected
- }
- }
-
- /**
- * @tests serialization/deserialization compatibility.
- */
- @TestTargetNew(
- level = TestLevel.PARTIAL_COMPLETE,
- notes = "Serialization test",
- method = "SQLWarning",
- args = {}
- )
- public void testSerializationSelf() throws Exception {
- SQLWarning object = new SQLWarning();
- SerializationTest.verifySelf(object, SQLWARNING_COMPARATOR);
- }
- /**
- * @tests serialization/deserialization compatibility with RI.
- */
- @TestTargetNew(
- level = TestLevel.PARTIAL_COMPLETE,
- notes = "Serialization test",
- method = "SQLWarning",
- args = {java.lang.String.class, java.lang.String.class, int.class}
- )
- public void testSerializationCompatibility() throws Exception {
- SQLWarning object = new SQLWarning();
-
- SQLWarning nextSQLWarning = new SQLWarning("nextReason",
- "nextSQLState", 10);
-
- object.setNextWarning(nextSQLWarning);
- SerializationTest.verifyGolden(this, object, SQLWARNING_COMPARATOR);
- }
- // comparator for SQLWarning objects
- private static final SerializableAssert SQLWARNING_COMPARATOR = new SerializableAssert() {
- public void assertDeserialized(Serializable initial,
- Serializable deserialized) {
- // do common checks for all throwable objects
- SerializationTest.THROWABLE_COMPARATOR.assertDeserialized(initial,
- deserialized);
- SQLWarning initThr = (SQLWarning) initial;
- SQLWarning dserThr = (SQLWarning) deserialized;
- // verify getNextWarning() method
- if (initThr.getNextWarning() == null) {
- assertNull(dserThr.getNextWarning());
- } else {
- // use the same comparator
- SQLWARNING_COMPARATOR.assertDeserialized(initThr
- .getNextWarning(), dserThr.getNextWarning());
- }
- }
- };
- } // end class SQLWarningTest