Example #1
0
 public static void save(Long id, String title, String content, String tags) {
   Post post;
   if (id == null) {
     // Create post
     User author = User.find("byEmail", Security.connected()).first();
     post = new Post(author, title, content);
   } else {
     // Retrieve post
     post = Post.findById(id);
     // Edit
     post.title = title;
     post.content = content;
     post.tags.clear();
   }
   // Set tags list
   for (String tag : tags.split("\\s+")) {
     if (tag.trim().length() > 0) {
       post.tags.add(Tag.findOrCreateByName(tag));
     }
   }
   // Validate
   validation.valid(post);
   if (validation.hasErrors()) {
     render("@form", post);
   }
   // Save
   post.save();
   index();
 }
Example #2
0
 @Test
 public void testUpdatePost() {
   Post post = getPostWithTags(null);
   Post.create(post);
   Long id = post.id;
   Post retrievedPost = Post.get(id);
   assertNotNull("You should have got an post back", retrievedPost);
   assertEquals("Title should have been same as when created", title, retrievedPost.title);
   String newTitle = "Changed the title";
   retrievedPost.title = newTitle;
   Post.update(retrievedPost);
   Post updatedPost = Post.get(id);
   assertNotNull("You should have got an post back", updatedPost);
   // This is failing on juint while using inmemory db.. need to check.. the update seems not
   // working
   // assertEquals("Title should have been same as when created", newTitle, updated.title);
 }