Bug 39324 TextEdits: Moved positions removed
20030625 See TextBufferTest.testMoveWithRangeMarker2 The RangeMarker is inside the MoveSource, and the MoveSource inside a delete: The resulting range of the Range Marker is deleted, not moved (TextBufferTest.testMoveWithRangeMarker shows that is works if there is no surrounding delete)
org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/TextBufferTest.java
assertEquals(t1.getTextRange(), 3, 2);
		assertEquals(s1.getTextRange(), 6, 0);		
		doUndoRedo(undo, "0124536789");		
	}
	
	public void testMoveDownWithParentMark() throws Exception {
		RangeMarker m= new RangeMarker(2, 6);
		MoveSourceEdit s1= new MoveSourceEdit(2, 2);
		MoveTargetEdit t1= new MoveTargetEdit(5, s1);
		m.add(s1);
		m.add(t1);
		fEditor.add(m);
		assertTrue(fEditor.canPerformEdits());
		UndoMemento undo= fEditor.performEdits(null);
		assertEquals("Buffer content", "0142356789", fBuffer.getContent());
		assertEquals(m.getTextRange(), 2, 6);
		assertEquals(t1.getTextRange(), 3, 2);
		assertEquals(s1.getTextRange(), 2, 0);		
		doUndoRedo(undo, "0142356789");		
	}
	
	public void testCopyDown() throws Exception {
		CopySourceEdit s1= new CopySourceEdit(2, 3);
		CopyTargetEdit t1= new CopyTargetEdit(8, s1);
		
		fEditor.add(s1);
		fEditor.add(t1);
		assertTrue("Can perform edits", fEditor.canPerformEdits());
		UndoMemento undo= fEditor.performEdits(null);
		assertEquals(s1.getTextRange(), 2, 3);