node.getProperty("intProp").remove(); // transiently removed...
node.setProperty("intProp", 42); // ...and added again
PropertyIterator properties = node.getProperties();
assertEquals(4, properties.getSize());
while (properties.hasNext()) {
Property p = properties.nextProperty();
if (JcrConstants.JCR_PRIMARYTYPE.equals(p.getName())) {
continue;
}
assertTrue(propertyNames.remove(p.getName()));
if (p.isMultiple()) {
for (Value v : p.getValues()) {
assertTrue(values.remove(v.getString()));
}
} else {
assertTrue(values.remove(p.getString()));
}
}
assertTrue(propertyNames.isEmpty());
assertTrue(values.isEmpty());