Index: tests/gclient_test.py |
diff --git a/tests/gclient_test.py b/tests/gclient_test.py |
index 8d9295cd209313580cc63d7d760adce8c61bb13d..a6a270a218a81cfaaa4f1ceaaf8689a38e7e9e99 100644 |
--- a/tests/gclient_test.py |
+++ b/tests/gclient_test.py |
@@ -70,12 +70,12 @@ class GClientBaseTestCase(BaseTestCase): |
self.mox.StubOutWithMock(gclient_scm, 'RunSVNAndGetFileList') |
self._gclient_gclient = gclient.GClient |
gclient.GClient = self.mox.CreateMockAnything() |
- self._scm_wrapper = gclient_scm.SCMWrapper |
- gclient_scm.SCMWrapper = self.mox.CreateMockAnything() |
+ self._scm_wrapper = gclient_scm.CreateSCM |
+ gclient_scm.CreateSCM = self.mox.CreateMockAnything() |
def tearDown(self): |
gclient.GClient = self._gclient_gclient |
- gclient_scm.SCMWrapper = self._scm_wrapper |
+ gclient_scm.CreateSCM = self._scm_wrapper |
BaseTestCase.tearDown(self) |
@@ -408,7 +408,7 @@ class GClientClassTestCase(GclientTestCase): |
# An scm will be requested for the solution. |
scm_wrapper_sol = self.mox.CreateMockAnything() |
- gclient_scm.SCMWrapper(self.url, self.root_dir, solution_name |
+ gclient_scm.CreateSCM(self.url, self.root_dir, solution_name |
).AndReturn(scm_wrapper_sol) |
# Then an update will be performed. |
scm_wrapper_sol.RunCommand('update', options, self.args, []) |
@@ -465,7 +465,7 @@ class GClientClassTestCase(GclientTestCase): |
).AndReturn(False) |
# An scm will be requested for the solution. |
- gclient_scm.SCMWrapper(self.url, self.root_dir, solution_name |
+ gclient_scm.CreateSCM(self.url, self.root_dir, solution_name |
).AndReturn(scm_wrapper_sol) |
# Then an update will be performed. |
scm_wrapper_sol.RunCommand('update', options, self.args, []) |
@@ -477,7 +477,7 @@ class GClientClassTestCase(GclientTestCase): |
# Next we expect an scm to be request for dep src/t but it should |
# use the url specified in deps and the relative path should now |
# be relative to the DEPS file. |
- gclient_scm.SCMWrapper( |
+ gclient_scm.CreateSCM( |
'svn://scm.t/trunk', |
self.root_dir, |
os.path.join(solution_name, "src", "t")).AndReturn(scm_wrapper_t) |
@@ -539,7 +539,7 @@ class GClientClassTestCase(GclientTestCase): |
).AndReturn(False) |
# An scm will be requested for the solution. |
- gclient_scm.SCMWrapper(self.url, self.root_dir, solution_name |
+ gclient_scm.CreateSCM(self.url, self.root_dir, solution_name |
).AndReturn(scm_wrapper_sol) |
# Then an update will be performed. |
scm_wrapper_sol.RunCommand('update', options, self.args, []) |
@@ -549,13 +549,13 @@ class GClientClassTestCase(GclientTestCase): |
# Next we expect an scm to be request for dep src/n even though it does not |
# exist in the DEPS file. |
- gclient_scm.SCMWrapper('svn://custom.n/trunk', |
- self.root_dir, |
- "src/n").AndReturn(scm_wrapper_n) |
+ gclient_scm.CreateSCM('svn://custom.n/trunk', |
+ self.root_dir, |
+ "src/n").AndReturn(scm_wrapper_n) |
# Next we expect an scm to be request for dep src/t but it should |
# use the url specified in custom_deps. |
- gclient_scm.SCMWrapper('svn://custom.t/trunk', |
+ gclient_scm.CreateSCM('svn://custom.t/trunk', |
self.root_dir, |
"src/t").AndReturn(scm_wrapper_t) |
@@ -625,7 +625,7 @@ class GClientClassTestCase(GclientTestCase): |
).AndReturn(False) |
# An scm will be requested for the first solution. |
- gclient_scm.SCMWrapper(url_a, self.root_dir, name_a).AndReturn( |
+ gclient_scm.CreateSCM(url_a, self.root_dir, name_a).AndReturn( |
scm_wrapper_a) |
# Then an attempt will be made to read it's DEPS file. |
gclient.FileRead(os.path.join(self.root_dir, name_a, options.deps_file) |
@@ -634,7 +634,7 @@ class GClientClassTestCase(GclientTestCase): |
scm_wrapper_a.RunCommand('update', options, self.args, []) |
# An scm will be requested for the second solution. |
- gclient_scm.SCMWrapper(url_b, self.root_dir, name_b).AndReturn( |
+ gclient_scm.CreateSCM(url_b, self.root_dir, name_b).AndReturn( |
scm_wrapper_b) |
# Then an attempt will be made to read its DEPS file. |
gclient.FileRead(os.path.join(self.root_dir, name_b, options.deps_file) |
@@ -643,7 +643,7 @@ class GClientClassTestCase(GclientTestCase): |
scm_wrapper_b.RunCommand('update', options, self.args, []) |
# Finally, an scm is requested for the shared dep. |
- gclient_scm.SCMWrapper('http://svn.t/trunk', self.root_dir, 'src/t' |
+ gclient_scm.CreateSCM('http://svn.t/trunk', self.root_dir, 'src/t' |
).AndReturn(scm_wrapper_dep) |
# And an update is run on it. |
scm_wrapper_dep.RunCommand('update', options, self.args, []) |
@@ -671,9 +671,9 @@ class GClientClassTestCase(GclientTestCase): |
).AndReturn(False) |
gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
).AndReturn(False) |
- gclient_scm.SCMWrapper(self.url, self.root_dir, name).AndReturn( |
- gclient_scm.SCMWrapper) |
- gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
+ gclient_scm.CreateSCM(self.url, self.root_dir, name).AndReturn( |
+ gclient_scm.CreateSCM) |
+ gclient_scm.CreateSCM.RunCommand('update', options, self.args, []) |
gclient.FileRead(os.path.join(self.root_dir, name, options.deps_file) |
).AndReturn("Boo = 'a'") |
gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), |
@@ -765,36 +765,36 @@ deps_os = { |
gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
).AndReturn(False) |
- gclient_scm.SCMWrapper(self.url, self.root_dir, 'src').AndReturn( |
+ gclient_scm.CreateSCM(self.url, self.root_dir, 'src').AndReturn( |
scm_wrapper_src) |
scm_wrapper_src.RunCommand('update', mox.Func(OptIsRev123), self.args, []) |
- gclient_scm.SCMWrapper(self.url, self.root_dir, |
+ gclient_scm.CreateSCM(self.url, self.root_dir, |
None).AndReturn(scm_wrapper_src2) |
scm_wrapper_src2.FullUrlForRelativeUrl('/trunk/deps/third_party/cygwin@3248' |
).AndReturn(cygwin_path) |
- gclient_scm.SCMWrapper(self.url, self.root_dir, |
+ gclient_scm.CreateSCM(self.url, self.root_dir, |
None).AndReturn(scm_wrapper_src2) |
scm_wrapper_src2.FullUrlForRelativeUrl('/trunk/deps/third_party/WebKit' |
).AndReturn(webkit_path) |
- gclient_scm.SCMWrapper(webkit_path, self.root_dir, |
+ gclient_scm.CreateSCM(webkit_path, self.root_dir, |
'foo/third_party/WebKit').AndReturn(scm_wrapper_webkit) |
scm_wrapper_webkit.RunCommand('update', mox.Func(OptIsRev42), self.args, []) |
- gclient_scm.SCMWrapper( |
+ gclient_scm.CreateSCM( |
'http://google-breakpad.googlecode.com/svn/trunk/src@285', |
self.root_dir, 'src/breakpad/bar').AndReturn(scm_wrapper_breakpad) |
scm_wrapper_breakpad.RunCommand('update', mox.Func(OptIsRevNone), |
self.args, []) |
- gclient_scm.SCMWrapper(cygwin_path, self.root_dir, |
+ gclient_scm.CreateSCM(cygwin_path, self.root_dir, |
'src/third_party/cygwin').AndReturn(scm_wrapper_cygwin) |
scm_wrapper_cygwin.RunCommand('update', mox.Func(OptIsRev333), self.args, |
[]) |
- gclient_scm.SCMWrapper('svn://random_server:123/trunk/python_24@5580', |
+ gclient_scm.CreateSCM('svn://random_server:123/trunk/python_24@5580', |
self.root_dir, |
'src/third_party/python_24').AndReturn( |
scm_wrapper_python) |
@@ -870,18 +870,18 @@ deps = { |
).AndReturn(False) |
gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
).AndReturn(False) |
- gclient_scm.SCMWrapper(self.url, self.root_dir, name).AndReturn( |
- gclient_scm.SCMWrapper) |
- gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
+ gclient_scm.CreateSCM(self.url, self.root_dir, name).AndReturn( |
+ gclient_scm.CreateSCM) |
+ gclient_scm.CreateSCM.RunCommand('update', options, self.args, []) |
- gclient_scm.SCMWrapper(self.url, self.root_dir, |
+ gclient_scm.CreateSCM(self.url, self.root_dir, |
None).AndReturn(scm_wrapper_src) |
scm_wrapper_src.FullUrlForRelativeUrl('/trunk/bar/WebKit' |
).AndReturn(webkit_path) |
- gclient_scm.SCMWrapper(webkit_path, self.root_dir, |
- 'foo/third_party/WebKit').AndReturn(gclient_scm.SCMWrapper) |
- gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
+ gclient_scm.CreateSCM(webkit_path, self.root_dir, |
+ 'foo/third_party/WebKit').AndReturn(gclient_scm.CreateSCM) |
+ gclient_scm.CreateSCM.RunCommand('update', options, self.args, []) |
self.mox.ReplayAll() |
client = self._gclient_gclient(self.root_dir, options) |
@@ -926,18 +926,18 @@ deps = { |
).AndReturn(False) |
gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
).AndReturn(False) |
- gclient_scm.SCMWrapper(self.url, self.root_dir, name).AndReturn( |
- gclient_scm.SCMWrapper) |
- gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
+ gclient_scm.CreateSCM(self.url, self.root_dir, name).AndReturn( |
+ gclient_scm.CreateSCM) |
+ gclient_scm.CreateSCM.RunCommand('update', options, self.args, []) |
- gclient_scm.SCMWrapper(self.url, self.root_dir, |
+ gclient_scm.CreateSCM(self.url, self.root_dir, |
None).AndReturn(scm_wrapper_src) |
scm_wrapper_src.FullUrlForRelativeUrl('/trunk/bar_custom/WebKit' |
).AndReturn(webkit_path) |
- gclient_scm.SCMWrapper(webkit_path, self.root_dir, |
- 'foo/third_party/WebKit').AndReturn(gclient_scm.SCMWrapper) |
- gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
+ gclient_scm.CreateSCM(webkit_path, self.root_dir, |
+ 'foo/third_party/WebKit').AndReturn(gclient_scm.CreateSCM) |
+ gclient_scm.CreateSCM.RunCommand('update', options, self.args, []) |
self.mox.ReplayAll() |
client = self._gclient_gclient(self.root_dir, options) |
@@ -961,9 +961,9 @@ deps = { |
options = self.Options() |
gclient.FileRead(os.path.join(self.root_dir, name, options.deps_file) |
).AndReturn(deps_content) |
- gclient_scm.SCMWrapper(self.url, self.root_dir, name).AndReturn( |
- gclient_scm.SCMWrapper) |
- gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
+ gclient_scm.CreateSCM(self.url, self.root_dir, name).AndReturn( |
+ gclient_scm.CreateSCM) |
+ gclient_scm.CreateSCM.RunCommand('update', options, self.args, []) |
self.mox.ReplayAll() |
client = self._gclient_gclient(self.root_dir, options) |
@@ -1038,12 +1038,19 @@ class SCMWrapperTestCase(GClientBaseTestCase): |
def testDir(self): |
members = [ |
'FullUrlForRelativeUrl', 'RunCommand', 'cleanup', 'diff', 'export', |
- 'pack', 'relpath', 'revert', 'scm_name', 'status', 'update', 'url', |
+ 'pack', 'relpath', 'revert', 'runhooks', 'scm_name', 'status', |
+ 'update', 'url', |
] |
# If you add a member, be sure to add the relevant test! |
self.compareMembers(self._scm_wrapper(), members) |
+ def testUnsupportedSCM(self): |
+ args = [self.url, self.root_dir, self.relpath] |
+ kwargs = {'scm_name' : 'foo'} |
+ exception_msg = 'Unsupported scm %(scm_name)s' % kwargs |
+ self.assertRaisesError(exception_msg, self._scm_wrapper, *args, **kwargs) |
+ |
def testFullUrlForRelativeUrl(self): |
self.url = 'svn://a/b/c/d' |
@@ -1061,8 +1068,8 @@ class SCMWrapperTestCase(GClientBaseTestCase): |
scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
relpath=self.relpath) |
exception = "Unsupported argument(s): %s" % ','.join(self.args) |
- self.assertRaisesError(exception, self._scm_wrapper.RunCommand, |
- scm, 'update', options, self.args) |
+ self.assertRaisesError(exception, scm.RunCommand, |
+ 'update', options, self.args) |
def testRunCommandUnknown(self): |
# TODO(maruel): if ever used. |