public void testAttributeWithNamespace() throws Exception {
QName personName = factory.createQName("person", "t", "urn://testing");
QName ageName = factory.createQName("age", "t", "urn://testing");
Element person = factory.createElement(personName);
person.addAttribute(ageName, "10");
Attribute age = person.attribute(ageName);
assertTrue("Created DatatypeAttribute not correct",
age instanceof DatatypeAttribute);
log("Found attribute: " + age);
Object data = age.getData();
Object expected = new BigInteger("10");
assertEquals("Data is correct type", BigInteger.class, data.getClass());
assertEquals("Set age correctly", expected, data);
age.setValue("32");
data = age.getData();
expected = new BigInteger("32");
assertEquals("Set age correctly", expected, data);
try {
age.setValue("abc");
fail("Appeared to set an invalid value");
} catch (IllegalArgumentException e) {
}
}
|