| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 """Smoke tests for gclient.py. | 6 """Smoke tests for gclient.py. |
| 7 | 7 |
| 8 Shell out 'gclient' and run basic conformance tests. | 8 Shell out 'gclient' and run basic conformance tests. |
| 9 | 9 |
| 10 This test assumes GClientSmokeBase.URL_BASE is valid. | 10 This test assumes GClientSmokeBase.URL_BASE is valid. |
| (...skipping 821 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 832 def setUp(self): | 832 def setUp(self): |
| 833 super(GClientSmokeGIT, self).setUp() | 833 super(GClientSmokeGIT, self).setUp() |
| 834 self.enabled = self.FAKE_REPOS.set_up_git() | 834 self.enabled = self.FAKE_REPOS.set_up_git() |
| 835 | 835 |
| 836 def testSync(self): | 836 def testSync(self): |
| 837 if not self.enabled: | 837 if not self.enabled: |
| 838 return | 838 return |
| 839 # TODO(maruel): safesync. | 839 # TODO(maruel): safesync. |
| 840 self.gclient(['config', self.git_base + 'repo_1', '--name', 'src']) | 840 self.gclient(['config', self.git_base + 'repo_1', '--name', 'src']) |
| 841 # Test unversioned checkout. | 841 # Test unversioned checkout. |
| 842 self.parseGclient(['sync', '--deps', 'mac', '--jobs', '1'], | 842 self.parseGclient( |
| 843 ['running', 'running', 'running', 'running', 'running']) | 843 ['sync', '--deps', 'mac', '--jobs', '1'], |
| 844 ['running', ('running', self.root_dir + '/src'), |
| 845 'running', ('running', self.root_dir + '/src/repo2'), |
| 846 'running', ('running', self.root_dir + '/src/repo2/repo_renamed'), |
| 847 'running', 'running']) |
| 844 # TODO(maruel): http://crosbug.com/3582 hooks run even if not matching, must | 848 # TODO(maruel): http://crosbug.com/3582 hooks run even if not matching, must |
| 845 # add sync parsing to get the list of updated files. | 849 # add sync parsing to get the list of updated files. |
| 846 tree = self.mangle_git_tree(('repo_1@2', 'src'), | 850 tree = self.mangle_git_tree(('repo_1@2', 'src'), |
| 847 ('repo_2@1', 'src/repo2'), | 851 ('repo_2@1', 'src/repo2'), |
| 848 ('repo_3@2', 'src/repo2/repo_renamed')) | 852 ('repo_3@2', 'src/repo2/repo_renamed')) |
| 849 tree['src/git_hooked1'] = 'git_hooked1' | 853 tree['src/git_hooked1'] = 'git_hooked1' |
| 850 tree['src/git_hooked2'] = 'git_hooked2' | 854 tree['src/git_hooked2'] = 'git_hooked2' |
| 851 self.assertTree(tree) | 855 self.assertTree(tree) |
| 852 | 856 |
| 853 # Manually remove git_hooked1 before synching to make sure it's not | 857 # Manually remove git_hooked1 before synching to make sure it's not |
| 854 # recreated. | 858 # recreated. |
| 855 os.remove(join(self.root_dir, 'src', 'git_hooked1')) | 859 os.remove(join(self.root_dir, 'src', 'git_hooked1')) |
| 856 | 860 |
| 857 # Test incremental versioned sync: sync backward. | 861 # Test incremental versioned sync: sync backward. |
| 858 diffdir = os.path.join(self.root_dir, 'src', 'repo2', 'repo_renamed') | 862 diffdir = os.path.join(self.root_dir, 'src', 'repo2', 'repo_renamed') |
| 859 self.parseGclient(['sync', '--jobs', '1', '--revision', | 863 self.parseGclient( |
| 860 'src@' + self.githash('repo_1', 1), | 864 ['sync', '--jobs', '1', '--revision', |
| 861 '--deps', 'mac', '--delete_unversioned_trees'], | 865 'src@' + self.githash('repo_1', 1), |
| 862 ['running', 'running', ('running', diffdir), 'deleting']) | 866 '--deps', 'mac', '--delete_unversioned_trees'], |
| 867 ['running', ('running', self.root_dir + '/src/repo2/repo3'), |
| 868 'running', ('running', self.root_dir + '/src/repo4'), |
| 869 ('running', diffdir), 'deleting']) |
| 863 tree = self.mangle_git_tree(('repo_1@1', 'src'), | 870 tree = self.mangle_git_tree(('repo_1@1', 'src'), |
| 864 ('repo_2@2', 'src/repo2'), | 871 ('repo_2@2', 'src/repo2'), |
| 865 ('repo_3@1', 'src/repo2/repo3'), | 872 ('repo_3@1', 'src/repo2/repo3'), |
| 866 ('repo_4@2', 'src/repo4')) | 873 ('repo_4@2', 'src/repo4')) |
| 867 tree['src/git_hooked2'] = 'git_hooked2' | 874 tree['src/git_hooked2'] = 'git_hooked2' |
| 868 self.assertTree(tree) | 875 self.assertTree(tree) |
| 869 # Test incremental sync: delete-unversioned_trees isn't there. | 876 # Test incremental sync: delete-unversioned_trees isn't there. |
| 870 expect3 = ('running', os.path.join(self.root_dir, 'src', 'repo2', 'repo3')) | 877 expect3 = ('running', os.path.join(self.root_dir, 'src', 'repo2', 'repo3')) |
| 871 expect4 = ('running', os.path.join(self.root_dir, 'src', 'repo4')) | 878 expect4 = ('running', os.path.join(self.root_dir, 'src', 'repo4')) |
| 872 self.parseGclient(['sync', '--deps', 'mac', '--jobs', '1'], | 879 self.parseGclient( |
| 873 ['running', 'running', 'running', expect3, expect4]) | 880 ['sync', '--deps', 'mac', '--jobs', '1'], |
| 881 ['running', ('running', self.root_dir + '/src/repo2/repo_renamed'), |
| 882 'running', 'running', expect3, expect4]) |
| 874 tree = self.mangle_git_tree(('repo_1@2', 'src'), | 883 tree = self.mangle_git_tree(('repo_1@2', 'src'), |
| 875 ('repo_2@1', 'src/repo2'), | 884 ('repo_2@1', 'src/repo2'), |
| 876 ('repo_3@1', 'src/repo2/repo3'), | 885 ('repo_3@1', 'src/repo2/repo3'), |
| 877 ('repo_3@2', 'src/repo2/repo_renamed'), | 886 ('repo_3@2', 'src/repo2/repo_renamed'), |
| 878 ('repo_4@2', 'src/repo4')) | 887 ('repo_4@2', 'src/repo4')) |
| 879 tree['src/git_hooked1'] = 'git_hooked1' | 888 tree['src/git_hooked1'] = 'git_hooked1' |
| 880 tree['src/git_hooked2'] = 'git_hooked2' | 889 tree['src/git_hooked2'] = 'git_hooked2' |
| 881 self.assertTree(tree) | 890 self.assertTree(tree) |
| 882 | 891 |
| 883 def testSyncIgnoredSolutionName(self): | 892 def testSyncIgnoredSolutionName(self): |
| 884 """TODO(maruel): This will become an error soon.""" | 893 """TODO(maruel): This will become an error soon.""" |
| 885 if not self.enabled: | 894 if not self.enabled: |
| 886 return | 895 return |
| 887 self.gclient(['config', self.git_base + 'repo_1', '--name', 'src']) | 896 self.gclient(['config', self.git_base + 'repo_1', '--name', 'src']) |
| 888 self.parseGclient( | 897 self.parseGclient( |
| 889 ['sync', '--deps', 'mac', '--jobs', '1', | 898 ['sync', '--deps', 'mac', '--jobs', '1', |
| 890 '--revision', 'invalid@' + self.githash('repo_1', 1)], | 899 '--revision', 'invalid@' + self.githash('repo_1', 1)], |
| 891 ['running', 'running', 'running', 'running', 'running'], | 900 ['running', ('running', self.root_dir + '/src'), |
| 901 'running', ('running', self.root_dir + '/src/repo2'), |
| 902 'running', ('running', self.root_dir + '/src/repo2/repo_renamed'), |
| 903 'running', 'running'], |
| 892 'Please fix your script, having invalid --revision flags ' | 904 'Please fix your script, having invalid --revision flags ' |
| 893 'will soon considered an error.\n') | 905 'will soon considered an error.\n') |
| 894 tree = self.mangle_git_tree(('repo_1@2', 'src'), | 906 tree = self.mangle_git_tree(('repo_1@2', 'src'), |
| 895 ('repo_2@1', 'src/repo2'), | 907 ('repo_2@1', 'src/repo2'), |
| 896 ('repo_3@2', 'src/repo2/repo_renamed')) | 908 ('repo_3@2', 'src/repo2/repo_renamed')) |
| 897 tree['src/git_hooked1'] = 'git_hooked1' | 909 tree['src/git_hooked1'] = 'git_hooked1' |
| 898 tree['src/git_hooked2'] = 'git_hooked2' | 910 tree['src/git_hooked2'] = 'git_hooked2' |
| 899 self.assertTree(tree) | 911 self.assertTree(tree) |
| 900 | 912 |
| 901 def testSyncNoSolutionName(self): | 913 def testSyncNoSolutionName(self): |
| 902 if not self.enabled: | 914 if not self.enabled: |
| 903 return | 915 return |
| 904 # When no solution name is provided, gclient uses the first solution listed. | 916 # When no solution name is provided, gclient uses the first solution listed. |
| 905 self.gclient(['config', self.git_base + 'repo_1', '--name', 'src']) | 917 self.gclient(['config', self.git_base + 'repo_1', '--name', 'src']) |
| 906 self.parseGclient(['sync', '--deps', 'mac', '--jobs', '1', | 918 self.parseGclient( |
| 907 '--revision', self.githash('repo_1', 1)], | 919 ['sync', '--deps', 'mac', '--jobs', '1', |
| 908 ['running', 'running', 'running', 'running']) | 920 '--revision', self.githash('repo_1', 1)], |
| 921 ['running', ('running', self.root_dir + '/src'), |
| 922 'running', ('running', self.root_dir + '/src/repo2'), |
| 923 'running', ('running', self.root_dir + '/src/repo2/repo3'), |
| 924 'running', ('running', self.root_dir + '/src/repo4')]) |
| 909 tree = self.mangle_git_tree(('repo_1@1', 'src'), | 925 tree = self.mangle_git_tree(('repo_1@1', 'src'), |
| 910 ('repo_2@2', 'src/repo2'), | 926 ('repo_2@2', 'src/repo2'), |
| 911 ('repo_3@1', 'src/repo2/repo3'), | 927 ('repo_3@1', 'src/repo2/repo3'), |
| 912 ('repo_4@2', 'src/repo4')) | 928 ('repo_4@2', 'src/repo4')) |
| 913 self.assertTree(tree) | 929 self.assertTree(tree) |
| 914 | 930 |
| 915 def testSyncJobs(self): | 931 def testSyncJobs(self): |
| 916 if not self.enabled: | 932 if not self.enabled: |
| 917 return | 933 return |
| 918 # TODO(maruel): safesync. | 934 # TODO(maruel): safesync. |
| 919 self.gclient(['config', self.git_base + 'repo_1', '--name', 'src']) | 935 self.gclient(['config', self.git_base + 'repo_1', '--name', 'src']) |
| 920 # Test unversioned checkout. | 936 # Test unversioned checkout. |
| 921 self.parseGclient(['sync', '--deps', 'mac', '--jobs', '8'], | 937 self.parseGclient( |
| 922 ['running', 'running', 'running', 'running', 'running'], | 938 ['sync', '--deps', 'mac', '--jobs', '8'], |
| 923 untangle=True) | 939 ['running', ('running', self.root_dir + '/src'), |
| 940 'running', ('running', self.root_dir + '/src/repo2'), |
| 941 'running', ('running', self.root_dir + '/src/repo2/repo_renamed'), |
| 942 'running', 'running'], |
| 943 untangle=True) |
| 924 # TODO(maruel): http://crosbug.com/3582 hooks run even if not matching, must | 944 # TODO(maruel): http://crosbug.com/3582 hooks run even if not matching, must |
| 925 # add sync parsing to get the list of updated files. | 945 # add sync parsing to get the list of updated files. |
| 926 tree = self.mangle_git_tree(('repo_1@2', 'src'), | 946 tree = self.mangle_git_tree(('repo_1@2', 'src'), |
| 927 ('repo_2@1', 'src/repo2'), | 947 ('repo_2@1', 'src/repo2'), |
| 928 ('repo_3@2', 'src/repo2/repo_renamed')) | 948 ('repo_3@2', 'src/repo2/repo_renamed')) |
| 929 tree['src/git_hooked1'] = 'git_hooked1' | 949 tree['src/git_hooked1'] = 'git_hooked1' |
| 930 tree['src/git_hooked2'] = 'git_hooked2' | 950 tree['src/git_hooked2'] = 'git_hooked2' |
| 931 self.assertTree(tree) | 951 self.assertTree(tree) |
| 932 | 952 |
| 933 # Manually remove git_hooked1 before synching to make sure it's not | 953 # Manually remove git_hooked1 before synching to make sure it's not |
| 934 # recreated. | 954 # recreated. |
| 935 os.remove(join(self.root_dir, 'src', 'git_hooked1')) | 955 os.remove(join(self.root_dir, 'src', 'git_hooked1')) |
| 936 | 956 |
| 937 # Test incremental versioned sync: sync backward. | 957 # Test incremental versioned sync: sync backward. |
| 938 expect3 = ('running', | 958 expect3 = ('running', |
| 939 os.path.join(self.root_dir, 'src', 'repo2', 'repo_renamed')) | 959 os.path.join(self.root_dir, 'src', 'repo2', 'repo_renamed')) |
| 940 self.parseGclient( | 960 self.parseGclient( |
| 941 ['sync', '--revision', 'src@' + self.githash('repo_1', 1), | 961 ['sync', '--revision', 'src@' + self.githash('repo_1', 1), |
| 942 '--deps', 'mac', '--delete_unversioned_trees', '--jobs', '8'], | 962 '--deps', 'mac', '--delete_unversioned_trees', '--jobs', '8'], |
| 943 ['running', 'running', expect3, 'deleting'], | 963 ['running', ('running', self.root_dir + '/src/repo4'), |
| 964 'running', ('running', self.root_dir + '/src/repo2/repo3'), |
| 965 expect3, 'deleting'], |
| 944 untangle=True) | 966 untangle=True) |
| 945 tree = self.mangle_git_tree(('repo_1@1', 'src'), | 967 tree = self.mangle_git_tree(('repo_1@1', 'src'), |
| 946 ('repo_2@2', 'src/repo2'), | 968 ('repo_2@2', 'src/repo2'), |
| 947 ('repo_3@1', 'src/repo2/repo3'), | 969 ('repo_3@1', 'src/repo2/repo3'), |
| 948 ('repo_4@2', 'src/repo4')) | 970 ('repo_4@2', 'src/repo4')) |
| 949 tree['src/git_hooked2'] = 'git_hooked2' | 971 tree['src/git_hooked2'] = 'git_hooked2' |
| 950 self.assertTree(tree) | 972 self.assertTree(tree) |
| 951 # Test incremental sync: delete-unversioned_trees isn't there. | 973 # Test incremental sync: delete-unversioned_trees isn't there. |
| 952 expect4 = os.path.join(self.root_dir, 'src', 'repo2', 'repo3') | 974 expect4 = os.path.join(self.root_dir, 'src', 'repo2', 'repo3') |
| 953 expect5 = os.path.join(self.root_dir, 'src', 'repo4') | 975 expect5 = os.path.join(self.root_dir, 'src', 'repo4') |
| 954 self.parseGclient(['sync', '--deps', 'mac', '--jobs', '8'], | 976 self.parseGclient( |
| 955 ['running', 'running', 'running', | 977 ['sync', '--deps', 'mac', '--jobs', '8'], |
| 956 ('running', expect4), | 978 ['running', ('running', self.root_dir + '/src/repo2/repo_renamed'), |
| 957 ('running', expect5)], | 979 'running', 'running', ('running', expect4), ('running', expect5)], |
| 958 untangle=True) | 980 untangle=True) |
| 959 tree = self.mangle_git_tree(('repo_1@2', 'src'), | 981 tree = self.mangle_git_tree(('repo_1@2', 'src'), |
| 960 ('repo_2@1', 'src/repo2'), | 982 ('repo_2@1', 'src/repo2'), |
| 961 ('repo_3@1', 'src/repo2/repo3'), | 983 ('repo_3@1', 'src/repo2/repo3'), |
| 962 ('repo_3@2', 'src/repo2/repo_renamed'), | 984 ('repo_3@2', 'src/repo2/repo_renamed'), |
| 963 ('repo_4@2', 'src/repo4')) | 985 ('repo_4@2', 'src/repo4')) |
| 964 tree['src/git_hooked1'] = 'git_hooked1' | 986 tree['src/git_hooked1'] = 'git_hooked1' |
| 965 tree['src/git_hooked2'] = 'git_hooked2' | 987 tree['src/git_hooked2'] = 'git_hooked2' |
| 966 self.assertTree(tree) | 988 self.assertTree(tree) |
| 967 | 989 |
| 968 def testRevertAndStatus(self): | 990 def testRevertAndStatus(self): |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1067 def testMultiSolutions(self): | 1089 def testMultiSolutions(self): |
| 1068 if not self.enabled: | 1090 if not self.enabled: |
| 1069 return | 1091 return |
| 1070 self.gclient(['config', '--spec', | 1092 self.gclient(['config', '--spec', |
| 1071 'solutions=[' | 1093 'solutions=[' |
| 1072 '{"name": "src",' | 1094 '{"name": "src",' |
| 1073 ' "url": "' + self.svn_base + 'trunk/src/"},' | 1095 ' "url": "' + self.svn_base + 'trunk/src/"},' |
| 1074 '{"name": "src-git",' | 1096 '{"name": "src-git",' |
| 1075 '"url": "' + self.git_base + 'repo_1"}]']) | 1097 '"url": "' + self.git_base + 'repo_1"}]']) |
| 1076 self.parseGclient(['sync', '--deps', 'mac', '--jobs', '1'], | 1098 self.parseGclient(['sync', '--deps', 'mac', '--jobs', '1'], |
| 1077 ['running', 'running', 'running', | 1099 ['running', |
| 1100 'running', ('running', self.root_dir + '/src-git'), |
| 1101 'running', |
| 1078 # This is due to the way svn update is called for a single | 1102 # This is due to the way svn update is called for a single |
| 1079 # file when File() is used in a DEPS file. | 1103 # file when File() is used in a DEPS file. |
| 1080 ('running', self.root_dir + '/src/file/other'), | 1104 ('running', self.root_dir + '/src/file/other'), |
| 1081 'running', 'running', 'running', 'running', 'running', 'running', | 1105 'running', 'running', 'running', |
| 1082 'running', 'running']) | 1106 'running', ('running', self.root_dir + '/src/repo2'), |
| 1107 'running', ('running', self.root_dir + '/src/repo2/repo_renamed'), |
| 1108 'running', 'running', 'running']) |
| 1083 tree = self.mangle_git_tree(('repo_1@2', 'src-git'), | 1109 tree = self.mangle_git_tree(('repo_1@2', 'src-git'), |
| 1084 ('repo_2@1', 'src/repo2'), | 1110 ('repo_2@1', 'src/repo2'), |
| 1085 ('repo_3@2', 'src/repo2/repo_renamed')) | 1111 ('repo_3@2', 'src/repo2/repo_renamed')) |
| 1086 tree.update(self.mangle_svn_tree( | 1112 tree.update(self.mangle_svn_tree( |
| 1087 ('trunk/src@2', 'src'), | 1113 ('trunk/src@2', 'src'), |
| 1088 ('trunk/third_party/foo@1', 'src/third_party/foo'), | 1114 ('trunk/third_party/foo@1', 'src/third_party/foo'), |
| 1089 ('trunk/other@2', 'src/other'))) | 1115 ('trunk/other@2', 'src/other'))) |
| 1090 tree['src/file/other/DEPS'] = ( | 1116 tree['src/file/other/DEPS'] = ( |
| 1091 self.FAKE_REPOS.svn_revs[2]['trunk/other/DEPS']) | 1117 self.FAKE_REPOS.svn_revs[2]['trunk/other/DEPS']) |
| 1092 tree['src/git_hooked1'] = 'git_hooked1' | 1118 tree['src/git_hooked1'] = 'git_hooked1' |
| (...skipping 10 matching lines...) Expand all Loading... |
| 1103 ' "url": "' + self.svn_base + 'trunk/src/"},' | 1129 ' "url": "' + self.svn_base + 'trunk/src/"},' |
| 1104 '{"name": "src-git",' | 1130 '{"name": "src-git",' |
| 1105 '"url": "' + self.git_base + 'repo_1"}]']) | 1131 '"url": "' + self.git_base + 'repo_1"}]']) |
| 1106 # There is no guarantee that the ordering will be consistent. | 1132 # There is no guarantee that the ordering will be consistent. |
| 1107 (stdout, stderr, returncode) = self.gclient( | 1133 (stdout, stderr, returncode) = self.gclient( |
| 1108 ['sync', '--deps', 'mac', '--jobs', '8']) | 1134 ['sync', '--deps', 'mac', '--jobs', '8']) |
| 1109 stdout = self.untangle(stdout) | 1135 stdout = self.untangle(stdout) |
| 1110 self.checkString('', stderr) | 1136 self.checkString('', stderr) |
| 1111 self.assertEquals(0, returncode) | 1137 self.assertEquals(0, returncode) |
| 1112 results = self.splitBlock(stdout) | 1138 results = self.splitBlock(stdout) |
| 1113 self.assertEquals(12, len(results)) | 1139 self.assertEquals(15, len(results)) |
| 1114 tree = self.mangle_git_tree(('repo_1@2', 'src-git'), | 1140 tree = self.mangle_git_tree(('repo_1@2', 'src-git'), |
| 1115 ('repo_2@1', 'src/repo2'), | 1141 ('repo_2@1', 'src/repo2'), |
| 1116 ('repo_3@2', 'src/repo2/repo_renamed')) | 1142 ('repo_3@2', 'src/repo2/repo_renamed')) |
| 1117 tree.update(self.mangle_svn_tree( | 1143 tree.update(self.mangle_svn_tree( |
| 1118 ('trunk/src@2', 'src'), | 1144 ('trunk/src@2', 'src'), |
| 1119 ('trunk/third_party/foo@1', 'src/third_party/foo'), | 1145 ('trunk/third_party/foo@1', 'src/third_party/foo'), |
| 1120 ('trunk/other@2', 'src/other'))) | 1146 ('trunk/other@2', 'src/other'))) |
| 1121 tree['src/file/other/DEPS'] = ( | 1147 tree['src/file/other/DEPS'] = ( |
| 1122 self.FAKE_REPOS.svn_revs[2]['trunk/other/DEPS']) | 1148 self.FAKE_REPOS.svn_revs[2]['trunk/other/DEPS']) |
| 1123 tree['src/git_hooked1'] = 'git_hooked1' | 1149 tree['src/git_hooked1'] = 'git_hooked1' |
| 1124 tree['src/git_hooked2'] = 'git_hooked2' | 1150 tree['src/git_hooked2'] = 'git_hooked2' |
| 1125 tree['src/svn_hooked1'] = 'svn_hooked1' | 1151 tree['src/svn_hooked1'] = 'svn_hooked1' |
| 1126 self.assertTree(tree) | 1152 self.assertTree(tree) |
| 1127 | 1153 |
| 1128 def testMultiSolutionsMultiRev(self): | 1154 def testMultiSolutionsMultiRev(self): |
| 1129 if not self.enabled: | 1155 if not self.enabled: |
| 1130 return | 1156 return |
| 1131 self.gclient(['config', '--spec', | 1157 self.gclient(['config', '--spec', |
| 1132 'solutions=[' | 1158 'solutions=[' |
| 1133 '{"name": "src",' | 1159 '{"name": "src",' |
| 1134 ' "url": "' + self.svn_base + 'trunk/src/"},' | 1160 ' "url": "' + self.svn_base + 'trunk/src/"},' |
| 1135 '{"name": "src-git",' | 1161 '{"name": "src-git",' |
| 1136 '"url": "' + self.git_base + 'repo_1"}]']) | 1162 '"url": "' + self.git_base + 'repo_1"}]']) |
| 1137 self.parseGclient( | 1163 self.parseGclient( |
| 1138 ['sync', '--deps', 'mac', '--jobs', '1', '--revision', '1', | 1164 ['sync', '--deps', 'mac', '--jobs', '1', '--revision', '1', |
| 1139 '-r', 'src-git@' + self.githash('repo_1', 1)], | 1165 '-r', 'src-git@' + self.githash('repo_1', 1)], |
| 1140 ['running', 'running', 'running', 'running', | 1166 ['running', |
| 1141 'running', 'running', 'running', 'running'], | 1167 'running', ('running', self.root_dir + '/src-git'), |
| 1168 'running', 'running', 'running', |
| 1169 'running', ('running', self.root_dir + '/src/repo2'), |
| 1170 'running', ('running', self.root_dir + '/src/repo2/repo3'), |
| 1171 'running', ('running', self.root_dir + '/src/repo4')], |
| 1142 expected_stderr= | 1172 expected_stderr= |
| 1143 'You must specify the full solution name like --revision src@1\n' | 1173 'You must specify the full solution name like --revision src@1\n' |
| 1144 'when you have multiple solutions setup in your .gclient file.\n' | 1174 'when you have multiple solutions setup in your .gclient file.\n' |
| 1145 'Other solutions present are: src-git.\n') | 1175 'Other solutions present are: src-git.\n') |
| 1146 tree = self.mangle_git_tree(('repo_1@1', 'src-git'), | 1176 tree = self.mangle_git_tree(('repo_1@1', 'src-git'), |
| 1147 ('repo_2@2', 'src/repo2'), | 1177 ('repo_2@2', 'src/repo2'), |
| 1148 ('repo_3@1', 'src/repo2/repo3'), | 1178 ('repo_3@1', 'src/repo2/repo3'), |
| 1149 ('repo_4@2', 'src/repo4')) | 1179 ('repo_4@2', 'src/repo4')) |
| 1150 tree.update(self.mangle_svn_tree( | 1180 tree.update(self.mangle_svn_tree( |
| 1151 ('trunk/src@1', 'src'), | 1181 ('trunk/src@1', 'src'), |
| (...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1325 | 1355 |
| 1326 if '-c' in sys.argv: | 1356 if '-c' in sys.argv: |
| 1327 COVERAGE = True | 1357 COVERAGE = True |
| 1328 sys.argv.remove('-c') | 1358 sys.argv.remove('-c') |
| 1329 if os.path.exists('.coverage'): | 1359 if os.path.exists('.coverage'): |
| 1330 os.remove('.coverage') | 1360 os.remove('.coverage') |
| 1331 os.environ['COVERAGE_FILE'] = os.path.join( | 1361 os.environ['COVERAGE_FILE'] = os.path.join( |
| 1332 os.path.dirname(os.path.dirname(os.path.abspath(__file__))), | 1362 os.path.dirname(os.path.dirname(os.path.abspath(__file__))), |
| 1333 '.coverage') | 1363 '.coverage') |
| 1334 unittest.main() | 1364 unittest.main() |
| OLD | NEW |