blob: 235c4325320b948201279113b607f8c2da1038fe [file] [log] [blame]
/*
* Copyright (C) 2007 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 tests.api.org.xml.sax;
import junit.framework.TestCase;
import org.xml.sax.Locator;
import org.xml.sax.SAXParseException;
import org.xml.sax.helpers.LocatorImpl;
import dalvik.annotation.TestLevel;
import dalvik.annotation.TestTargetClass;
import dalvik.annotation.TestTargetNew;
import dalvik.annotation.TestTargets;
@TestTargetClass(SAXParseException.class)
public class SAXParseExceptionTest extends TestCase {
public static final String ERR = "Houston, we have a problem";
public static final String SYS = "mySystemID";
public static final String PUB = "myPublicID";
public static final int ROW = 1;
public static final int COL = 2;
@TestTargets({
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "SAXParseException",
args = { String.class, Locator.class, Exception.class }
),
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "getMessage",
args = { }
),
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "getException",
args = { }
),
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "getPublicId",
args = { }
),
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "getSystemId",
args = { }
),
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "getLineNumber",
args = { }
),
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "getColumnNumber",
args = { }
)
})
public void testSAXParseException_String_Locator_Exception() {
LocatorImpl l = new LocatorImpl();
l.setPublicId(PUB);
l.setSystemId(SYS);
l.setLineNumber(ROW);
l.setColumnNumber(COL);
Exception c = new Exception();
// Ordinary case
SAXParseException e = new SAXParseException(ERR, l, c);
assertEquals(ERR, e.getMessage());
assertEquals(c, e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
// No message
e = new SAXParseException(null, l, c);
assertNull(e.getMessage());
assertEquals(c, e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
// No locator
e = new SAXParseException(ERR, null, c);
assertEquals(ERR, e.getMessage());
assertEquals(c, e.getException());
assertNull(e.getPublicId());
assertNull(e.getSystemId());
assertEquals(-1, e.getLineNumber());
assertEquals(-1, e.getColumnNumber());
// No cause
e = new SAXParseException(ERR, l, null);
assertEquals(ERR, e.getMessage());
assertNull(e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
}
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "SAXParseException",
args = { String.class, Locator.class }
)
public void testSAXParseException_String_Locator() {
LocatorImpl l = new LocatorImpl();
l.setPublicId(PUB);
l.setSystemId(SYS);
l.setLineNumber(ROW);
l.setColumnNumber(COL);
// Ordinary case
SAXParseException e = new SAXParseException(ERR, l);
assertEquals(ERR, e.getMessage());
assertNull(e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
// No message
e = new SAXParseException(null, l);
assertNull(e.getMessage());
assertNull(e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
// No locator
e = new SAXParseException(ERR, null);
assertEquals(ERR, e.getMessage());
assertNull(e.getException());
assertNull(e.getPublicId());
assertNull(e.getSystemId());
assertEquals(-1, e.getLineNumber());
assertEquals(-1, e.getColumnNumber());
}
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "SAXParseException",
args = { String.class, String.class, String.class, int.class, int.class,
Exception.class }
)
public void testSAXParseException_String_String_String_int_int_Exception() {
Exception c = new Exception();
// Ordinary case
SAXParseException e = new SAXParseException(ERR, PUB, SYS, ROW, COL, c);
assertEquals(ERR, e.getMessage());
assertEquals(c, e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
// No message
e = new SAXParseException(null, PUB, SYS, ROW, COL, c);
assertNull(e.getMessage());
assertEquals(c, e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
// No locator
e = new SAXParseException(ERR, null, null, -1, -1, c);
assertEquals(ERR, e.getMessage());
assertEquals(c, e.getException());
assertNull(e.getPublicId());
assertNull(e.getSystemId());
assertEquals(-1, e.getLineNumber());
assertEquals(-1, e.getColumnNumber());
// No cause
e = new SAXParseException(ERR, PUB, SYS, ROW, COL, null);
assertEquals(ERR, e.getMessage());
assertNull(e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
}
@TestTargetNew(
level = TestLevel.COMPLETE,
method = "SAXParseException",
args = { String.class, String.class, String.class, int.class,
int.class }
)
public void testSAXParseException_String_String_String_int_int() {
// Ordinary case
SAXParseException e = new SAXParseException(ERR, PUB, SYS, ROW, COL);
assertEquals(ERR, e.getMessage());
assertNull(e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
// No message
e = new SAXParseException(null, PUB, SYS, ROW, COL);
assertNull(e.getMessage());
assertNull(e.getException());
assertEquals(PUB, e.getPublicId());
assertEquals(SYS, e.getSystemId());
assertEquals(ROW, e.getLineNumber());
assertEquals(COL, e.getColumnNumber());
// No locator
e = new SAXParseException(ERR, null, null, -1, -1);
assertEquals(ERR, e.getMessage());
assertNull(e.getException());
assertNull(e.getPublicId());
assertNull(e.getSystemId());
assertEquals(-1, e.getLineNumber());
assertEquals(-1, e.getColumnNumber());
}
}