Unset diff.ignoreSubmodules=all when running gclient sync.

Bug: 1470195
Change-Id: I1317e5f12d6cc7fae44b2a463ddf6d0f85629759
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/4767516
Reviewed-by: Josip Sokcevic <sokcevic@chromium.org>
Commit-Queue: Joanna Wang <jojwang@chromium.org>
diff --git a/tests/gclient_scm_test.py b/tests/gclient_scm_test.py
index 8a8f911..dc6dfc0 100755
--- a/tests/gclient_scm_test.py
+++ b/tests/gclient_scm_test.py
@@ -407,16 +407,31 @@
     scm = gclient_scm.GitWrapper(self.url, self.root_dir,
                                  self.relpath)
     file_list = []
+    scm._Capture(['config', 'diff.ignoreSubmodules', 'all'])
+
     scm.update(options, (), file_list)
     self.assertEqual(file_list, expected_file_list)
     self.assertEqual(scm.revinfo(options, (), None),
                       'a7142dc9f0009350b96a11f372b6ea658592aa95')
-    self.assertEqual(scm._Capture(['config', '--get', 'diff.ignoreSubmodules']),
-                     'all')
+    with self.assertRaises(Exception):
+      scm._Capture(['config', '--get', 'diff.ignoreSubmodules'])
     self.assertEqual(
         scm._Capture(['config', '--get', 'fetch.recurseSubmodules']), 'off')
     sys.stdout.close()
 
+  def testUpdateUpdate_only_unset_ignoresubmodules_all(self):
+    if not self.enabled:
+      return
+    options = self.Options()
+    scm = gclient_scm.GitWrapper(self.url, self.root_dir, self.relpath)
+    file_list = []
+    scm._Capture(['config', 'diff.ignoreSubmodules', 'none'])
+
+    scm.update(options, (), file_list)
+    self.assertEqual(scm._Capture(['config', '--get', 'diff.ignoreSubmodules']),
+                     'none')
+    sys.stdout.close()
+
   def testUpdateMerge(self):
     if not self.enabled:
       return