Skip to content

Commit f94b490

Browse files
committed
Updated the mergeready script to check if the 'test:unittest' property has been set to 'passed' on a changeset marked 'ready for merge'.
- Legacy-Id: 9247
1 parent 09c08a9 commit f94b490

1 file changed

Lines changed: 19 additions & 1 deletion

File tree

bin/mergeready

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,8 +247,10 @@ ready += get_ready_commits(repo, 'personal')
247247
ready += get_ready_commits(repo, 'branch/amsl')
248248

249249
ready_commits = {}
250+
not_passed = {}
250251
for entry in ready:
251252
rev, repo, branch = entry
253+
# Get the time, committer, and commit message
252254
cmd = 'svn log -v -r %s %s/%s/' % (rev, repo, branch)
253255
if opt_verbose > 1:
254256
note("Running '%s' ..." % cmd)
@@ -261,9 +263,25 @@ for entry in ready:
261263
type, path = line[:4], line[5:]
262264
if 'M' in type or 'A' in type or 'D' in type:
263265
break
266+
# Get the test status
267+
cmd = 'svn propget --revprop -r %s "test:unittest"' % rev
268+
unittest = pipe(cmd).strip()
269+
#
264270
merge_path = os.path.join(*path.split(os.path.sep)[:4])
265271
if not (rev, repo, merge_path) in hold:
266-
ready_commits[when] = "%s %-24s %s@%s" % (when, who+":", merge_path, rev)
272+
output_line = "%s %-24s %s@%s" % (when, who+":", merge_path, rev)
273+
if unittest == 'passed':
274+
ready_commits[when] = output_line
275+
else:
276+
not_passed[when] = output_line
277+
278+
keys = not_passed.keys()
279+
keys.sort()
280+
if len(keys) > 0:
281+
sys.stderr.write("Commits marked ready which haven't passed the test suite:\n")
282+
for key in keys:
283+
sys.stderr.write(not_passed[key]+'\n')
284+
sys.stderr.write('\n')
267285

268286
keys = ready_commits.keys()
269287
keys.sort()

0 commit comments

Comments
 (0)