1213141516171819202122
CommandStack cs = new CommandStack(); cs.setLimit(3); cs.setUseLimit(true); assertTrue(!cs.canRedo()); assertTrue(!cs.canUndo()); cs.put(new C()); assertTrue(!cs.canRedo()); assertTrue(cs.canUndo());
1617181920212223242526
assertTrue(!cs.canRedo()); assertTrue(!cs.canUndo()); cs.put(new C()); assertTrue(!cs.canRedo()); assertTrue(cs.canUndo()); cs.put(new C()); cs.put(new C()); assertTrue(!cs.canRedo()); assertTrue(cs.canUndo());
2122232425262728293031
assertTrue(cs.canUndo()); cs.put(new C()); cs.put(new C()); assertTrue(!cs.canRedo()); assertTrue(cs.canUndo()); cs.undo(); assertTrue(cs.canRedo()); assertTrue(cs.canUndo()); cs.undo();
2526272829303132333435
assertTrue(!cs.canRedo()); assertTrue(cs.canUndo()); cs.undo(); assertTrue(cs.canRedo()); assertTrue(cs.canUndo()); cs.undo(); assertTrue(cs.canRedo()); assertTrue(cs.canUndo()); cs.undo(); assertTrue(cs.canRedo());
2829303132333435363738
cs.undo(); assertTrue(cs.canRedo()); assertTrue(cs.canUndo()); cs.undo(); assertTrue(cs.canRedo()); assertTrue(cs.canUndo()); cs.undo(); assertTrue(cs.canRedo()); assertTrue(!cs.canUndo()); }
3132333435363738394041
cs.undo(); assertTrue(cs.canRedo()); assertTrue(cs.canUndo()); cs.undo(); assertTrue(cs.canRedo()); assertTrue(!cs.canUndo()); } public void testLimit() throws Exception { CommandStack cs = new CommandStack(); cs.setLimit(2);
4546474849505152535455
cs.put(new C(2)); cs.put(new C(3)); assertTrue(cs.undo().equals(new C(3))); assertTrue(cs.undo().equals(new C(2))); assertTrue(cs.canRedo()); assertTrue(!cs.canUndo()); } public void testPutUndoPut() throws Exception { CommandStack cs = new CommandStack(); cs.setUseLimit(false);
6364656667686970717273
assertTrue(cs.undo().equals(new C(2))); assertTrue(cs.redo().equals(new C(2))); assertTrue(cs.canRedo()); cs.put(new C(3)); assertTrue(!cs.canRedo()); assertTrue(cs.canUndo()); } public class C implements Command { private int id;