Anonymous avatar Anonymous committed 973360c

fixmodnamestest: changed the fixer to work on case-insensitive fs

Comments (0)

Files changed (1)

ropetest/contrib/fixmodnamestest.py

 from rope.contrib.generate import create_module, create_package
 
 
+# HACK: for making this test work on case-insensitive file-systems, it
+# uses a name.replace('x', '_') fixer.
 class FixModuleNamesTest(unittest.TestCase):
 
     def setUp(self):
         super(FixModuleNamesTest, self).tearDown()
 
     def test_simple_module_renaming(self):
-        mod = create_module(self.project, 'Mod')
-        self.project.do(FixModuleNames(self.project).get_changes())
+        mod = create_module(self.project, 'xod')
+        self.project.do(FixModuleNames(self.project).get_changes(_fixer))
         self.assertFalse(mod.exists())
-        self.assertTrue(self.project.get_resource('mod.py').exists())
+        self.assertTrue(self.project.get_resource('_od.py').exists())
 
     def test_packages_module_renaming(self):
-        pkg = create_package(self.project, 'Pkg')
-        self.project.do(FixModuleNames(self.project).get_changes())
+        pkg = create_package(self.project, 'xkg')
+        self.project.do(FixModuleNames(self.project).get_changes(_fixer))
         self.assertFalse(pkg.exists())
-        self.assertTrue(self.project.get_resource('pkg/__init__.py').exists())
+        self.assertTrue(self.project.get_resource('_kg/__init__.py').exists())
 
     def test_fixing_contents(self):
-        mod1 = create_module(self.project, 'Mod1')
-        mod2 = create_module(self.project, 'Mod2')
-        mod1.write('import Mod2\n')
-        mod2.write('import Mod1\n')
-        self.project.do(FixModuleNames(self.project).get_changes())
-        newmod1 = self.project.get_resource('mod1.py')
-        newmod2 = self.project.get_resource('mod2.py')
-        self.assertEquals('import mod2\n', newmod1.read())
-        self.assertEquals('import mod1\n', newmod2.read())
+        mod1 = create_module(self.project, 'xod1')
+        mod2 = create_module(self.project, 'xod2')
+        mod1.write('import xod2\n')
+        mod2.write('import xod1\n')
+        self.project.do(FixModuleNames(self.project).get_changes(_fixer))
+        newmod1 = self.project.get_resource('_od1.py')
+        newmod2 = self.project.get_resource('_od2.py')
+        self.assertEquals('import _od2\n', newmod1.read())
+        self.assertEquals('import _od1\n', newmod2.read())
 
     def test_handling_nested_modules(self):
-        pkg = create_package(self.project, 'Pkg')
-        mod = create_module(self.project, 'Pkg.Mod')
-        self.project.do(FixModuleNames(self.project).get_changes())
+        pkg = create_package(self.project, 'xkg')
+        mod = create_module(self.project, 'xkg.xod')
+        self.project.do(FixModuleNames(self.project).get_changes(_fixer))
         self.assertFalse(pkg.exists())
-        self.assertTrue(self.project.get_resource('pkg/__init__.py').exists())
-        self.assertTrue(self.project.get_resource('pkg/mod.py').exists())
+        self.assertTrue(self.project.get_resource('_kg/__init__.py').exists())
+        self.assertTrue(self.project.get_resource('_kg/_od.py').exists())
 
 
+def _fixer(name):
+    return name.replace('x', '_')
+
 if __name__ == '__main__':
     unittest.main()
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.