PageRenderTime 47ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 0ms

/src/main/resources/com/onresolve/jira/groovy/test/CustomFieldBaseTests.groovy

https://bitbucket.org/sorin/jira-plugin-intellij
Groovy | 66 lines | 50 code | 15 blank | 1 comment | 2 complexity | 1655c3f1e9c7e401e49ca3e49be49479 MD5 | raw file
  1. package com.onresolve.jira.groovy.test
  2. import com.atlassian.jira.issue.fields.CustomField
  3. import com.atlassian.jira.issue.customfields.CustomFieldType
  4. import com.atlassian.jira.issue.customfields.CustomFieldSearcher
  5. import com.atlassian.core.util.collection.EasyList
  6. import com.atlassian.jira.issue.context.GlobalIssueContext
  7. import com.atlassian.jira.ComponentManager
  8. import com.atlassian.jira.issue.fields.config.manager.FieldConfigSchemeManager
  9. import com.atlassian.jira.component.ComponentAccessor
  10. import static junit.framework.Assert.assertNotNull
  11. import com.atlassian.jira.bc.project.component.ProjectComponentManager
  12. import com.atlassian.jira.project.version.VersionManager
  13. import com.atlassian.jira.issue.fields.screen.FieldScreenManager
  14. import com.atlassian.jira.issue.index.IssueIndexManager
  15. class CustomFieldBaseTests extends BaseSubTaskTest {
  16. def fieldConfigSchemeManager = ComponentManager.getComponentInstanceOfType(FieldConfigSchemeManager.class)
  17. def optionsManager = ComponentAccessor.getOptionsManager()
  18. def fieldScreenManager = ComponentManager.getComponentInstanceOfType(FieldScreenManager.class)
  19. CustomField createCustomField(String cfName, String cfKey, String searcherKey) {
  20. def customField = customFieldManager.getCustomFieldObjectByName(cfName)
  21. if (customField) {
  22. return customField
  23. }
  24. CustomFieldType customFieldType = customFieldManager.getCustomFieldType(cfKey)
  25. CustomFieldSearcher customFieldSearcher = customFieldManager.getCustomFieldSearcher(searcherKey)
  26. customField = customFieldManager.createCustomField(cfName,
  27. "an eg custom field",
  28. customFieldType,
  29. customFieldSearcher,
  30. EasyList.build(GlobalIssueContext.getInstance()),
  31. [null]);
  32. customFieldManager.clear()
  33. // add to default screen
  34. def screen = fieldScreenManager.getFieldScreens().find {it.name == "Default Screen"}
  35. screen.getTabs().first().addFieldScreenLayoutItem(customField.id)
  36. customField
  37. }
  38. public void createIssue() {
  39. log.debug ("setUp")
  40. log.debug ("issueType: ${issueType.getName()}")
  41. assertNotNull(project)
  42. issue = componentManager.getIssueFactory().getIssue()
  43. issue.setProject(project.getGenericValue())
  44. issue.setSummary "my summary"
  45. issue.setReporterId "admin"
  46. issue.setIssueType issueType.getGenericValue()
  47. issue.setPriorityId('2')
  48. issueManager.createIssue(adminUser, issue);
  49. log.debug ("Created issue: $issue")
  50. }
  51. }