package fitnesse.revisioncontrol.responders;
import fitnesse.revisioncontrol.NewRevisionResults;
import fitnesse.revisioncontrol.RevisionControlException;
import static util.RegexTestCase.assertSubString;
import static org.easymock.EasyMock.*;
public class UpdateResponderTest extends RevisionControlTestCase {
@Override
protected void setUp() throws Exception {
super.setUp();
responder = new UpdateResponder();
}
@Override
protected void tearDown() throws Exception {
super.tearDown();
verify(revisionController);
}
public void testShouldAskRevisionControllerToUpdatePage() throws Exception {
expect(revisionController.update(filePathFor(FS_PARENT_PAGE))).andReturn(new NewRevisionResults());
replay(revisionController);
createPage(FS_PARENT_PAGE);
request.setResource(FS_PARENT_PAGE);
invokeResponderAndCheckSuccessStatus();
}
public void testShouldReportErrorMsgIfUpdateOperationFails() throws Exception {
final String errorMsg = "Cannot update files to Revision Control";
revisionController.update(filePathFor(FS_PARENT_PAGE));
expectLastCall().andThrow(new RevisionControlException(errorMsg));
replay(revisionController);
createPage(FS_PARENT_PAGE);
request.setResource(FS_PARENT_PAGE);
invokeResponderAndCheckSuccessStatus();
assertSubString(errorMsg, response.getContent());
}
}