Skip to content

Commit

Permalink
Merge pull request #14 from IntershopCommunicationsAG/gradle49
Browse files Browse the repository at this point in the history
Gradle49
  • Loading branch information
m-raab authored Jul 30, 2018
2 parents 54cd87d + a7bbff4 commit 4d3b38c
Show file tree
Hide file tree
Showing 8 changed files with 57 additions and 30 deletions.
2 changes: 1 addition & 1 deletion README.asciidoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
= Gradle Plugin for Editing Atlassian Jira Issues
:latestRevision: 3.1.0
:latestRevision: 3.2.0

NOTE: Version 3.1 of this plugin will only work with Gradle 4.4 and JDK 8.

Expand Down
24 changes: 12 additions & 12 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,16 @@ plugins {
id 'maven-publish'

// intershop version plugin
id 'com.intershop.gradle.scmversion' version '3.4.0'
id 'com.intershop.gradle.scmversion' version '3.6.0'

// plugin for documentation
id 'org.asciidoctor.convert' version '1.5.3'
id 'org.asciidoctor.convert' version '1.5.8.1'

// plugin for publishing to Gradle Portal
id 'com.gradle.plugin-publish' version '0.9.9'
id 'com.gradle.plugin-publish' version '0.9.10'

// plugin for publishing to jcenter
id 'com.jfrog.bintray' version '1.8.0'
id 'com.jfrog.bintray' version '1.8.4'
}

scm {
Expand Down Expand Up @@ -86,7 +86,7 @@ test {
}

// Gradle versions for test
systemProperty 'intershop.gradle.versions', '4.3'
systemProperty 'intershop.gradle.versions', '4.4,4.9'
}

task copyAsciiDoc {
Expand Down Expand Up @@ -243,17 +243,17 @@ pluginBundle {

dependencies {
compile('com.google.guava:guava:20.0')
compile 'com.intershop.gradle.version:extended-version:2.0.0'
compile 'com.intershop.gradle.version:extended-version:2.0.1'

compileOnly 'com.atlassian.jira:jira-rest-java-client-core:4.0.0'
compileOnly 'com.atlassian.jira:jira-rest-java-client-api:4.0.0'
compileOnly 'com.atlassian.jira:jira-rest-java-client-core:5.0.4'
compileOnly 'com.atlassian.jira:jira-rest-java-client-api:5.0.4'
compileOnly 'com.atlassian.fugue:fugue:2.6.1'


unittestCompile('com.atlassian.jira:jira-rest-java-client-core:4.0.0') {
unittestCompile('com.atlassian.jira:jira-rest-java-client-core:5.0.4') {
exclude group: 'joda-time'
}
unittestCompile('com.atlassian.jira:jira-rest-java-client-api:4.0.0') {
unittestCompile('com.atlassian.jira:jira-rest-java-client-api:5.0.4') {
exclude group: 'joda-time'
}
unittestCompile 'com.atlassian.fugue:fugue:2.6.1'
Expand All @@ -263,8 +263,8 @@ dependencies {
testCompile gradleTestKit()

// mock webserver
testCompile 'com.squareup.okhttp:okhttp:2.7.5'
testCompile 'com.squareup.okhttp:mockwebserver:2.7.5'
testCompile 'com.squareup.okhttp3:okhttp:3.11.0'
testCompile 'com.squareup.okhttp3:mockwebserver:3.11.0'
}

repositories {
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-4.9-all.zip
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import org.gradle.api.GradleException
import org.gradle.api.provider.Property
import org.gradle.api.provider.Provider
import org.gradle.api.tasks.Input
import org.gradle.api.tasks.Internal
import org.gradle.api.tasks.Optional
import org.gradle.api.tasks.TaskAction
import org.gradle.workers.IsolationMode
Expand All @@ -36,7 +37,9 @@ import javax.inject.Inject
@CompileStatic
class CorrectVersionList extends JiraConnectTask {

@Internal
final WorkerExecutor workerExecutor

final Property<Map> replacements = project.objects.property(Map)

@Optional
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ import org.gradle.api.provider.Property
import org.gradle.api.provider.Provider
import org.gradle.api.tasks.Input
import org.gradle.api.tasks.InputFile
import org.gradle.api.tasks.Internal
import org.gradle.api.tasks.TaskAction
import org.gradle.workers.IsolationMode
import org.gradle.workers.WorkerConfiguration
Expand All @@ -37,6 +38,7 @@ import javax.inject.Inject
@CompileStatic
class SetIssueField extends JiraConnectTask {

@Internal
final WorkerExecutor workerExecutor

final RegularFileProperty issueFile = project.layout.fileProperty()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ import com.intershop.gradle.jiraconnector.util.JiraField
import com.intershop.gradle.jiraconnector.util.JiraTestValues
import com.intershop.gradle.jiraconnector.util.TestDispatcher
import com.intershop.gradle.test.AbstractIntegrationSpec
import com.squareup.okhttp.mockwebserver.MockWebServer
import okhttp3.mockwebserver.MockWebServer
import groovy.json.JsonSlurper
import groovy.util.logging.Slf4j
import org.junit.Rule
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@
*/
package com.intershop.gradle.jiraconnector.util

import com.squareup.okhttp.mockwebserver.Dispatcher
import com.squareup.okhttp.mockwebserver.MockResponse
import com.squareup.okhttp.mockwebserver.RecordedRequest
import okhttp3.mockwebserver.Dispatcher
import okhttp3.mockwebserver.MockResponse
import okhttp3.mockwebserver.RecordedRequest

class TestDispatcher {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import com.intershop.gradle.jiraconnector.util.InvalidFieldnameException
import com.intershop.gradle.jiraconnector.util.JiraConnector
import com.intershop.gradle.jiraconnector.util.JiraTestValues
import com.intershop.gradle.jiraconnector.util.TestDispatcher
import com.squareup.okhttp.mockwebserver.MockWebServer
import okhttp3.mockwebserver.MockWebServer
import groovy.json.JsonSlurper
import org.joda.time.DateTime
import org.junit.Rule
Expand All @@ -46,16 +46,19 @@ class JiraConnectorMockSpec extends Specification {
when:
server.setDispatcher(TestDispatcher.getProcessLabelTestDispatcher(requestsBodys, 'emptyLabels.response'))
jiraConnector.processIssues([JiraTestValues.issueKey], JiraTestValues.LABELSNAME, JiraTestValues.versionStr, JiraTestValues.message, true, DateTime.now())
def request = jsonSlurper.parseText(requestsBodys.get('onebody'))

then:
jsonSlurper.parseText(requestsBodys.get('onebody')).equals(jsonSlurper.parseText('{"fields":{"project":{"key":"ISTOOLS"},"issuetype":{"id":"10001"},"labels":["platform\\/10.0.6"]}}'))
request.fields.issuetype.id == "10001"
request.fields.project.key == "ISTOOLS"
request.fields.labels == [ "platform/10.0.6" ]

when:
server.setDispatcher(TestDispatcher.getProcessLabelTestDispatcher(requestsBodys, 'oneversionLabels.response'))
jiraConnector.processIssues([JiraTestValues.issueKey], JiraTestValues.LABELSNAME, JiraTestValues.addVersionStr, JiraTestValues.message, true, DateTime.now())
def result = jsonSlurper.parseText(requestsBodys.get('onebody'))

then:
Map result = jsonSlurper.parseText(requestsBodys.get('onebody'))
result.fields.get('labels').sort() == (['platform/10.0.7', 'platform/10.0.6'] as Object[]).sort()
}

Expand All @@ -70,16 +73,19 @@ class JiraConnectorMockSpec extends Specification {
when:
server.setDispatcher(TestDispatcher.getProcessLabelTestDispatcher(requestsBodys, 'emptyCustomLabels.response'))
jiraConnector.processIssues([JiraTestValues.issueKey], JiraTestValues.BUILDVERSIONSNAME, JiraTestValues.versionStr, JiraTestValues.message, true, DateTime.now())
def request = jsonSlurper.parseText(requestsBodys.get('onebody'))

then:
jsonSlurper.parseText(requestsBodys.get('onebody')).equals(jsonSlurper.parseText('{"fields":{"project":{"key":"ISTOOLS"},"issuetype":{"id":"10001"},"customfield_12190":["platform\\/10.0.6"]}}'))
request.fields.issuetype.id == "10001"
request.fields.project.key == "ISTOOLS"
request.fields.customfield_12190 == [ "platform/10.0.6" ]

when:
server.setDispatcher(TestDispatcher.getProcessLabelTestDispatcher(requestsBodys, 'oneversionCustomLabels.response'))
jiraConnector.processIssues([JiraTestValues.issueKey], JiraTestValues.BUILDVERSIONSNAME, JiraTestValues.addVersionStr, JiraTestValues.message, true, DateTime.now())
def result = jsonSlurper.parseText(requestsBodys.get('onebody'))

then:
Map result = jsonSlurper.parseText(requestsBodys.get('onebody'))
result.fields.get('customfield_12190').sort() == (['platform/10.0.7', 'platform/10.0.6'] as Object[]).sort()
}

Expand All @@ -94,9 +100,13 @@ class JiraConnectorMockSpec extends Specification {
when:
server.setDispatcher(TestDispatcher.getProcessVersionTestDispatcher(requestsBodys, 'emptyFixVersion.response'))
jiraConnector.processIssues([JiraTestValues.issueKey], JiraTestValues.FIXVERSIONNAME, JiraTestValues.versionStr, JiraTestValues.message, true, DateTime.now())
def request = jsonSlurper.parseText(requestsBodys.get('onebody'))

then:
jsonSlurper.parseText(requestsBodys.get('onebody')).equals(jsonSlurper.parseText('{"fields":{"project":{"key":"ISTOOLS"},"issuetype":{"id":"10001"},"fixVersions":[{"name":"platform\\/10.0.6"}]}}'))
request.fields.issuetype.id == "10001"
request.fields.project.key == "ISTOOLS"
request.fields.fixVersions.size == 1
request.fields.fixVersions.get(0).name == "platform/10.0.6"

when:
server.setDispatcher(TestDispatcher.getProcessVersionTestDispatcher(requestsBodys, 'oneFixVersion.response'))
Expand All @@ -118,9 +128,13 @@ class JiraConnectorMockSpec extends Specification {
when:
server.setDispatcher(TestDispatcher.getProcessVersionTestDispatcher(requestsBodys, 'emptyAffectedVersion.response'))
jiraConnector.processIssues([JiraTestValues.issueKey], JiraTestValues.AFFECTEDVERSIONAME, JiraTestValues.versionStr, JiraTestValues.message, true, DateTime.now())
def request = jsonSlurper.parseText(requestsBodys.get('onebody'))

then:
jsonSlurper.parseText(requestsBodys.get('onebody')).equals(jsonSlurper.parseText('{"fields":{"versions":[{"name":"platform\\/10.0.6"}],"project":{"key":"ISTOOLS"},"issuetype":{"id":"10001"}}}'))
request.fields.issuetype.id == "10001"
request.fields.project.key == "ISTOOLS"
request.fields.versions.size == 1
request.fields.versions.get(0).name == "platform/10.0.6"

when:
server.setDispatcher(TestDispatcher.getProcessVersionTestDispatcher(requestsBodys, 'oneAffectedVersion.response'))
Expand All @@ -142,9 +156,13 @@ class JiraConnectorMockSpec extends Specification {
when:
server.setDispatcher(TestDispatcher.getProcessVersionTestDispatcher(requestsBodys, 'emptyVersionArrayCustomField.response'))
jiraConnector.processIssues([JiraTestValues.issueKey], JiraTestValues.MULTITESTVERSIONAME, JiraTestValues.versionStr, JiraTestValues.message, true, DateTime.now())
def request = jsonSlurper.parseText(requestsBodys.get('onebody'))

then:
jsonSlurper.parseText(requestsBodys.get('onebody')).equals(jsonSlurper.parseText('{"fields":{"project":{"key":"ISTOOLS"},"issuetype":{"id":"10001"},"customfield_12290":[{"name":"platform\\/10.0.6"}]}}'))
request.fields.issuetype.id == "10001"
request.fields.project.key == "ISTOOLS"
request.fields.customfield_12290.size == 1
request.fields.customfield_12290.get(0).name == "platform/10.0.6"

when:
server.setDispatcher(TestDispatcher.getProcessVersionTestDispatcher(requestsBodys, 'oneVersionArrayCustomField.response'))
Expand All @@ -166,18 +184,22 @@ class JiraConnectorMockSpec extends Specification {
when:
server.setDispatcher(TestDispatcher.getProcessVersionTestDispatcher(requestsBodys, 'emptyVersionCustomField.response'))
jiraConnector.processIssues([JiraTestValues.issueKey], JiraTestValues.TESTEDVERSIONNAME, JiraTestValues.versionStr, JiraTestValues.message, true, DateTime.now())
def request1 = jsonSlurper.parseText(requestsBodys.get('onebody'))

then:
jsonSlurper.parseText(requestsBodys.get('onebody')).equals(jsonSlurper.parseText('{"fields":{"project":{"key":"ISTOOLS"},"customfield_10891":{"name":"platform\\/10.0.6"},"issuetype":{"id":"10001"}}}'))
request1.fields.issuetype.id == "10001"
request1.fields.project.key == "ISTOOLS"
request1.fields.customfield_10891.name == "platform/10.0.6"

when:
server.setDispatcher(TestDispatcher.getProcessVersionTestDispatcher(requestsBodys, 'firstOneVersionCustomField.response'))
jiraConnector.processIssues([JiraTestValues.issueKey], JiraTestValues.TESTEDVERSIONNAME, JiraTestValues.addVersionStr, JiraTestValues.message, true, DateTime.now())
def request2 = jsonSlurper.parseText(requestsBodys.get('onebody'))

then:
Map result = jsonSlurper.parseText(requestsBodys.get('onebody'))
jsonSlurper.parseText(requestsBodys.get('onebody')).equals(jsonSlurper.parseText('{"fields":{"project":{"key":"ISTOOLS"},"customfield_10891":{"name":"platform\\/10.0.7"},"issuetype":{"id":"10001"}}}'))

request2.fields.issuetype.id == "10001"
request2.fields.project.key == "ISTOOLS"
request2.fields.customfield_10891.name == "platform/10.0.7"
}

def 'fieldname does not exists'() {
Expand Down

0 comments on commit 4d3b38c

Please sign in to comment.