You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
1.2 KiB

  1. import groovy.util.GroovyTestCase
  2. import org.wikimedia.integration.GerritReview
  3. import org.wikimedia.integration.GerritPipelineComment
  4. class GerritReviewTestCase extends GroovyTestCase {
  5. private class Env {
  6. String ZUUL_PATCHSET = '8'
  7. String ZUUL_CHANGE = '486851'
  8. String ZUUL_PROJECT = 'mediawiki/services/citoid'
  9. }
  10. private class WorkflowScript {
  11. Env env
  12. WorkflowScript(env) { this.env = env }
  13. }
  14. void testReviewURL() {
  15. def gr = new GerritReview(new WorkflowScript(new Env()), new GerritPipelineComment())
  16. assert gr.getProject() == 'mediawiki%2Fservices%2Fcitoid'
  17. assert gr.getRequestURL() == 'https://gerrit.wikimedia.org/r/a/changes/mediawiki%2Fservices%2Fcitoid~486851/revisions/8/review'
  18. }
  19. void testReviewBody() {
  20. def expected = '{"message":"pipeline-dashboard: service-pipeline-test-and-publish\\n'
  21. expected += 'pipeline-build-result: SUCCESS '
  22. expected += '(job: service-pipeline-test-and-publish, build: 25)\\n"}'
  23. def gerritComment = new GerritPipelineComment(
  24. jobName: 'service-pipeline-test-and-publish',
  25. jobStatus: 'SUCCESS',
  26. buildNumber: '25',
  27. )
  28. def gr = new GerritReview(new WorkflowScript(new Env()), gerritComment)
  29. assert gr.getBody() == expected
  30. }
  31. }