Anonymous avatar Anonymous committed a3d4dc7

Previewing changes that are not done yet

Comments (0)

Files changed (2)

rope/base/change.py

         return 'Change <%s>' % self.resource.path
 
     def get_description(self):
+        new = self.new_contents
+        old = self.old_contents
+        if old is None:
+            if self.resource.exists():
+                old = self.resource.read()
+            else:
+                old = ''
         result = difflib.unified_diff(
-            self.old_contents.splitlines(True),
-            self.new_contents.splitlines(True),
+            old.splitlines(True), new.splitlines(True),
             'a/' + self.resource.path, 'b/' + self.resource.path)
         return ''.join(list(result))
 

ropetest/historytest.py

     @testutils.assert_raises(exceptions.HistoryError)
     def test_undoing_a_not_yet_performed_change(self):
         change = ChangeContents(self.file1, '1')
+        str(change)
         change.undo()
 
 
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.