full.py 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. # Copyright 2014 The Chromium Authors. All rights reserved.
  2. # Use of this source code is governed by a BSD-style license that can be
  3. # found in the LICENSE file.
  4. PYTHON_VERSION_COMPATIBILITY = 'PY2+3'
  5. DEPS = [
  6. 'gerrit',
  7. 'recipe_engine/step',
  8. ]
  9. def RunSteps(api):
  10. host = 'https://chromium-review.googlesource.com'
  11. project = 'v8/v8'
  12. branch = 'test'
  13. commit = '67ebf73496383c6777035e374d2d664009e2aa5c'
  14. data = api.gerrit.create_gerrit_branch(host, project, branch, commit)
  15. assert data == 'refs/heads/test'
  16. data = api.gerrit.get_gerrit_branch(host, project, 'main')
  17. assert data == '67ebf73496383c6777035e374d2d664009e2aa5c'
  18. data = api.gerrit.create_gerrit_tag(host, project, '1.0', commit)
  19. assert data == 'refs/tags/1.0'
  20. api.gerrit.move_changes(host, project, 'master', 'main')
  21. change_info = api.gerrit.update_files(host,
  22. project,
  23. 'main',
  24. {'chrome/VERSION': '99.99.99.99'},
  25. 'Dummy CL.',
  26. submit=True)
  27. assert int(change_info['_number']) == 91827, change_info
  28. assert change_info['status'] == 'MERGED'
  29. # Query for changes in Chromium's CQ.
  30. api.gerrit.get_changes(
  31. host,
  32. query_params=[
  33. ('project', 'chromium/src'),
  34. ('status', 'open'),
  35. ('label', 'Commit-Queue>0'),
  36. ],
  37. start=1,
  38. limit=1,
  39. )
  40. related_changes = api.gerrit.get_related_changes(host,
  41. change='58478',
  42. revision='2')
  43. assert len(related_changes["changes"]) == 1
  44. # Query which returns no changes is still successful query.
  45. empty_list = api.gerrit.get_changes(
  46. host,
  47. query_params=[
  48. ('project', 'chromium/src'),
  49. ('status', 'open'),
  50. ('label', 'Commit-Queue>2'),
  51. ],
  52. name='changes empty query',
  53. )
  54. assert len(empty_list) == 0
  55. api.gerrit.get_change_description(
  56. host, change=123, patchset=1)
  57. api.gerrit.set_change_label(host, 123, 'code-review', -1)
  58. api.gerrit.set_change_label(host, 123, 'commit-queue', 1)
  59. api.gerrit.abandon_change(host, 123, 'bad roll')
  60. with api.step.defer_results():
  61. api.gerrit.get_change_description(
  62. host,
  63. change=122,
  64. patchset=3,
  65. step_test_data=api.gerrit.test_api.get_empty_changes_response_data)
  66. def GenTests(api):
  67. yield (api.test('basic') +
  68. api.step_data('gerrit create_gerrit_branch (v8/v8 test)',
  69. api.gerrit.make_gerrit_create_branch_response_data()) +
  70. api.step_data('gerrit create_gerrit_tag (v8/v8 1.0)',
  71. api.gerrit.make_gerrit_create_tag_response_data()) +
  72. api.step_data('gerrit create change at (v8/v8 main)',
  73. api.gerrit.update_files_response_data()) +
  74. api.step_data('gerrit submit change 91827',
  75. api.gerrit.update_files_response_data(status='MERGED')) +
  76. api.step_data('gerrit get_gerrit_branch (v8/v8 main)',
  77. api.gerrit.make_gerrit_get_branch_response_data()) +
  78. api.step_data('gerrit move changes',
  79. api.gerrit.get_move_change_response_data(branch='main'))
  80. + api.step_data('gerrit relatedchanges',
  81. api.gerrit.get_related_changes_response_data()) +
  82. api.step_data('gerrit changes empty query',
  83. api.gerrit.get_empty_changes_response_data()))