public void testContentDaoUpdateContent() throws Exception { User user = getUser(userDao, "testuser"); CollectionItem root = (CollectionItem) contentDao.getRootItem(user); FileItem item = generateTestContent(); ContentItem newItem = contentDao.createContent(root, item); Date newItemModifyDate = newItem.getModifiedDate(); clearSession(); FileItem queryItem = (FileItem) contentDao.findContentByUid(newItem.getUid()); helper.verifyItem(newItem, queryItem); Assert.assertEquals(0, queryItem.getVersion().intValue()); queryItem.setName("test2"); queryItem.setDisplayName("this is a test item2"); queryItem.removeAttribute("customattribute"); queryItem.setContentLanguage("es"); queryItem.setContent(helper.getBytes("testdata2.txt")); // Make sure modified date changes Thread.sleep(1000); queryItem = (FileItem) contentDao.updateContent(queryItem); clearSession(); ContentItem queryItem2 = contentDao.findContentByUid(newItem.getUid()); Assert.assertTrue(queryItem2.getVersion().intValue() > 0); helper.verifyItem(queryItem, queryItem2); Assert.assertTrue(newItemModifyDate.before(queryItem2.getModifiedDate())); }
private FileItem generateTestContent(String name, String owner) throws Exception { FileItem content = new HibFileItem(); content.setName(name); content.setDisplayName(name); content.setContent(helper.getBytes("testdata1.txt")); content.setContentLanguage("en"); content.setContentEncoding("UTF8"); content.setContentType("text/text"); content.setOwner(getUser(userDao, owner)); content.addAttribute( new HibStringAttribute(new HibQName("customattribute"), "customattributevalue")); return content; }