### Question:
MongoDbPageTemplateRepository implements PageTemplateRepository { @Override public PageTemplate save(PageTemplate pageTemplate) { return template.save(pageTemplate); }  @Override List<PageTemplate> getAll(); @Override List<PageTemplate> getLimitedList(int offset, int limit); @Override int getCountAll(); @Override List<PageTemplate> getAll(String pageType); @Override PageTemplate getDefaultPage(String pageType); @Override Class<? extends PageTemplate> getType(); @Override PageTemplate get(String id); @Override PageTemplate save(PageTemplate pageTemplate); @Override void delete(PageTemplate item); void setTemplate(MongoPageTemplateOperations template);  }### Answer:
@Test public void save_Valid(){ PageTemplate pageTemplate = new PageTemplateImpl(); MongoDbPageTemplate converted = new MongoDbPageTemplate(); expect(template.save(eq(converted))).andReturn(converted); replay(template); PageTemplate saved = templateRepository.save(pageTemplate); assertThat(converted, is(sameInstance(saved))); }