Simplify GIT.Capture() code to always redirect stderr by default and always throw an exception on failure.

Make gclient_scm_test silent.

Replace raise Exception() with raise gclient_utils.Error().

BUG=54084
TEST=none

Review URL: http://codereview.chromium.org/3353018

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@58936 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/tests/gclient_scm_test.py b/tests/gclient_scm_test.py
index 43cae2b..f32b39a 100755
--- a/tests/gclient_scm_test.py
+++ b/tests/gclient_scm_test.py
@@ -630,7 +630,9 @@
     scm.diff(options, self.args, file_list)
     self.assertEquals(file_list, [])
     self.checkstdout(
-        ('\n_____ . at refs/heads/master\n\n\n'
+        ('\n_____ . at refs/heads/master\nUpdating 069c602..a7142dc\n'
+         'Fast-forward\n a |    1 +\n b |    1 +\n'
+         ' 2 files changed, 2 insertions(+), 0 deletions(-)\n\n\n'
          '________ running \'git reset --hard origin/master\' in \'%s\'\n'
          'HEAD is now at a7142dc Personalized\n') %
             gclient_scm.os.path.join(self.root_dir, '.'))
@@ -649,7 +651,9 @@
     self.assertEquals(scm.revinfo(options, self.args, None),
                       'a7142dc9f0009350b96a11f372b6ea658592aa95')
     self.checkstdout(
-      ('\n_____ . at refs/heads/master\n\n\n'
+      ('\n_____ . at refs/heads/master\nUpdating 069c602..a7142dc\n'
+       'Fast-forward\n a |    1 +\n b |    1 +\n'
+       ' 2 files changed, 2 insertions(+), 0 deletions(-)\n\n\n'
        '________ running \'git reset --hard origin/master\' in \'%s\'\n'
        'HEAD is now at a7142dc Personalized\n') %
             gclient_scm.os.path.join(self.root_dir, '.'))
@@ -673,7 +677,9 @@
     self.assertEquals(scm.revinfo(options, self.args, None),
                       'a7142dc9f0009350b96a11f372b6ea658592aa95')
     self.checkstdout(
-      ('\n_____ . at refs/heads/master\n\n\n'
+      ('\n_____ . at refs/heads/master\nUpdating 069c602..a7142dc\n'
+       'Fast-forward\n a |    1 +\n b |    1 +\n'
+       ' 2 files changed, 2 insertions(+), 0 deletions(-)\n\n\n'
        '________ running \'git reset --hard origin/master\' in \'%s\'\n'
        'HEAD is now at a7142dc Personalized\n') %
             gclient_scm.os.path.join(self.root_dir, '.'))
@@ -701,7 +707,9 @@
     self.assertEquals(scm.revinfo(options, self.args, None),
                       'a7142dc9f0009350b96a11f372b6ea658592aa95')
     self.checkstdout(
-      ('\n_____ . at refs/heads/master\n\n\n'
+      ('\n_____ . at refs/heads/master\nUpdating 069c602..a7142dc\n'
+       'Fast-forward\n a |    1 +\n b |    1 +\n'
+       ' 2 files changed, 2 insertions(+), 0 deletions(-)\n\n\n'
        '________ running \'git reset --hard origin/master\' in \'%s\'\n'
        'HEAD is now at a7142dc Personalized\n') %
             gclient_scm.os.path.join(self.root_dir, '.'))
@@ -784,7 +792,10 @@
     self.assertEquals(file_list, expected_file_list)
     self.assertEquals(scm.revinfo(options, (), None),
                       'a7142dc9f0009350b96a11f372b6ea658592aa95')
-    self.checkstdout('\n_____ . at refs/heads/master\n\n')
+    self.checkstdout(
+        '\n_____ . at refs/heads/master\n'
+        'Updating 069c602..a7142dc\nFast-forward\n a |    1 +\n b |    1 +\n'
+        ' 2 files changed, 2 insertions(+), 0 deletions(-)\n\n')
 
   def testUpdateUnstagedConflict(self):
     if not self.enabled: