Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(655)

Unified Diff: tools/telemetry/third_party/rope/ropetest/contrib/changestacktest.py

Issue 1132103009: Example of refactoring using rope library. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tools/telemetry/third_party/rope/ropetest/contrib/changestacktest.py
diff --git a/tools/telemetry/third_party/rope/ropetest/contrib/changestacktest.py b/tools/telemetry/third_party/rope/ropetest/contrib/changestacktest.py
new file mode 100644
index 0000000000000000000000000000000000000000..ba16c470424a5e73460009fcd77b3abd0a5f86aa
--- /dev/null
+++ b/tools/telemetry/third_party/rope/ropetest/contrib/changestacktest.py
@@ -0,0 +1,35 @@
+import unittest
+
+import rope.base.history
+import rope.contrib.changestack
+import rope.base.change
+from ropetest import testutils
+
+
+class ChangeStackTest(unittest.TestCase):
+
+ def setUp(self):
+ super(ChangeStackTest, self).setUp()
+ self.project = testutils.sample_project()
+
+ def tearDown(self):
+ testutils.remove_project(self.project)
+ super(ChangeStackTest, self).tearDown()
+
+ def test_change_stack(self):
+ myfile = self.project.root.create_file('myfile.txt')
+ myfile.write('1')
+ stack = rope.contrib.changestack.ChangeStack(self.project)
+ stack.push(rope.base.change.ChangeContents(myfile, '2'))
+ self.assertEquals('2', myfile.read())
+ stack.push(rope.base.change.ChangeContents(myfile, '3'))
+ self.assertEquals('3', myfile.read())
+ stack.pop_all()
+ self.assertEquals('1', myfile.read())
+ changes = stack.merged()
+ self.project.do(changes)
+ self.assertEquals('3', myfile.read())
+
+
+if __name__ == '__main__':
+ unittest.main()

Powered by Google App Engine
This is Rietveld 408576698