BasicMetaDataItem<Object> item1 = new BasicMetaDataItem<Object>(loader, Object.class.getName(), object1);
BasicMetaDataItem<String> item2 = new BasicMetaDataItem<String>(loader, String.class.getName(), object2);
MetaDataItem<?>[] items = { item1, item2 };
BasicMetaDatasItem item = new BasicMetaDatasItem(loader, items);
MetaDataItem<?>[] result = item.getMetaDatas();
assertUnorderedArrayEquals(items, result);
Object[] expected = { object1, object2 };
Object[] objects = item.getValue();
assertUnorderedArrayEquals(expected, objects);
assertTrue(item.isCachable());
assertTrue(item.isValid());
loader.setCachable(false);
assertFalse(item.isCachable());
assertTrue(item.isValid());
item.invalidate();
assertFalse(item.isCachable());
assertFalse(item.isValid());
}