Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>plugin</artifactId>
<version>5.2</version>
<version>5.7</version>
</parent>
<groupId>io.jenkins.plugins</groupId>
<artifactId>jira-integration</artifactId>
Expand All @@ -19,7 +19,7 @@
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
Expand Down Expand Up @@ -56,7 +56,7 @@
<dependency>
<groupId>io.jenkins.tools.bom</groupId>
<artifactId>bom-${jenkins.baseline}.x</artifactId>
<version>3613.v584fca_12cf5c</version>
<version>4136.vca_c3202a_7fd1</version>
<scope>import</scope>
<type>pom</type>
</dependency>
Expand Down
15 changes: 9 additions & 6 deletions src/test/java/org/marvelution/jji/AbstractTechnicalTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import java.util.Optional;

import org.jvnet.hudson.test.junit.jupiter.WithJenkins;
import org.marvelution.jji.configuration.JiraSite;
import org.marvelution.jji.configuration.JiraSitesConfiguration;
import org.marvelution.jji.rest.HttpClientProvider;
Expand All @@ -12,25 +13,27 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import org.junit.Before;
import org.junit.Rule;
import org.junit.jupiter.api.BeforeEach;
import org.jvnet.hudson.test.JenkinsRule;
import org.jvnet.hudson.test.MockAuthorizationStrategy;

@WithJenkins
public abstract class AbstractTechnicalTest
{

public static final String ALICE = "alice";
protected final MockAuthorizationStrategy authorizationStrategy = new MockAuthorizationStrategy();
@Rule
public JenkinsRule jenkins = new JenkinsRule();

protected JenkinsRule jenkins;
protected JiraSitesConfiguration sitesConfiguration;
protected OkHttpClient httpClient;
protected ObjectMapper objectMapper;

@Before
public void setUpCommonBits()
@BeforeEach
void setUp(JenkinsRule jenkins)
{
this.jenkins = jenkins;

jenkins.getInstance()
.setSecurityRealm(jenkins.createDummySecurityRealm());
jenkins.getInstance()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,22 @@

import java.net.*;

import io.jenkins.plugins.casc.misc.junit.jupiter.WithJenkinsConfiguredWithCode;
import org.marvelution.jji.configuration.*;

import io.jenkins.plugins.casc.misc.*;
import org.assertj.core.api.*;
import org.junit.*;
import org.junit.jupiter.api.Test;

import static org.assertj.core.api.Assertions.*;

public class ConfigurationAsCodeTest
@WithJenkinsConfiguredWithCode
class ConfigurationAsCodeTest
{

@Rule
public JenkinsConfiguredWithCodeRule jenkins = new JenkinsConfiguredWithCodeRule();

@Test
@ConfiguredWithCode("configuration-as-code.yml")
public void testSupportConfigurationAsCode()
void testSupportConfigurationAsCode(JenkinsConfiguredWithCodeRule jenkins)
{
JiraSitesConfiguration sitesConfiguration = (JiraSitesConfiguration) jenkins.getInstance()
.getDescriptorOrDie(JiraSitesConfiguration.class);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import java.net.*;
import java.util.*;

import org.jvnet.hudson.test.junit.jupiter.WithJenkins;
import org.marvelution.jji.synctoken.utils.*;

import com.cloudbees.plugins.credentials.*;
Expand All @@ -15,21 +16,20 @@
import jenkins.model.*;
import org.assertj.core.groups.*;
import org.jenkinsci.plugins.plaincredentials.*;
import org.junit.*;
import org.junit.jupiter.api.Test;
import org.jvnet.hudson.test.*;
import org.jvnet.hudson.test.recipes.*;

import static org.assertj.core.api.Assertions.*;
import static org.marvelution.jji.configuration.JiraSitesConfiguration.*;

public class JiraSitesConfigurationTest
@WithJenkins
class JiraSitesConfigurationTest
{
@Rule
public JenkinsRule jenkins = new JenkinsRule();

@Test
@LocalData
public void testMigrateSharedSecretAsCredentials()
void testMigrateSharedSecretAsCredentials(JenkinsRule jenkins)
throws IOException
{
URL resource = getClass().getResource(getClass().getSimpleName() + "/" + jenkins.getTestDescription()
Expand All @@ -41,7 +41,7 @@ public void testMigrateSharedSecretAsCredentials()
.map(site -> tuple(site.getName(), site.getSharedSecret()))
.toArray(Tuple[]::new);

JiraSitesConfiguration config = getJiraSitesConfiguration();
JiraSitesConfiguration config = getJiraSitesConfiguration(jenkins);

assertThat(config.getSites()).hasSize(2)
.allSatisfy(site -> {
Expand All @@ -59,11 +59,11 @@ public void testMigrateSharedSecretAsCredentials()
}

@Test
public void testRegisterSiteStoresSharedSecretAsCredential()
void testRegisterSiteStoresSharedSecretAsCredential(JenkinsRule jenkins)
{
String sharedSecret = SharedSecretGenerator.generate();

JiraSitesConfiguration configuration = getJiraSitesConfiguration();
JiraSitesConfiguration configuration = getJiraSitesConfiguration(jenkins);

configuration.registerSite(new JiraSite(URI.create("http://jira.local/rest/jenkins/latest")).withName("Jira")
.withIdentifier("site-1")
Expand All @@ -84,9 +84,9 @@ public void testRegisterSiteStoresSharedSecretAsCredential()
}

@Test
public void testUnRegisterSiteRemovedSharedSecretCredential()
void testUnRegisterSiteRemovedSharedSecretCredential(JenkinsRule jenkins)
{
JiraSitesConfiguration configuration = getJiraSitesConfiguration();
JiraSitesConfiguration configuration = getJiraSitesConfiguration(jenkins);

String sharedSecret = SharedSecretGenerator.generate();
configuration.registerSite(new JiraSite(URI.create("http://jira.local/rest/jenkins/latest")).withName("Jira")
Expand All @@ -104,9 +104,9 @@ public void testUnRegisterSiteRemovedSharedSecretCredential()
String sharedSecretId = registeredSite.get()
.getSharedSecretId();

List<StringCredentials> credentials = CredentialsProvider.lookupCredentials(StringCredentials.class,
List<StringCredentials> credentials = CredentialsProvider.lookupCredentialsInItemGroup(StringCredentials.class,
Jenkins.get(),
ACL.SYSTEM,
ACL.SYSTEM2,
List.of(new SchemeRequirement(uri.getScheme()), new HostnameRequirement(uri.getHost())));
assertThat(CredentialsMatchers.firstOrNull(credentials, CredentialsMatchers.withId(sharedSecretId))).isNotNull()
.extracting(StringCredentials::getSecret)
Expand All @@ -116,19 +116,19 @@ public void testUnRegisterSiteRemovedSharedSecretCredential()
configuration.unregisterSite(registeredSite.get());

assertThat(configuration.findSite("site-1")).isEmpty();
credentials = CredentialsProvider.lookupCredentials(StringCredentials.class,
credentials = CredentialsProvider.lookupCredentialsInItemGroup(StringCredentials.class,
Jenkins.get(),
ACL.SYSTEM,
ACL.SYSTEM2,
List.of(new SchemeRequirement(uri.getScheme()), new HostnameRequirement(uri.getHost())));
assertThat(CredentialsMatchers.firstOrNull(credentials, CredentialsMatchers.withId(sharedSecretId))).isNull();
}

@Test
public void testRegisterUpdatedSiteUpdatesSharedSecretCredential()
void testRegisterUpdatedSiteUpdatesSharedSecretCredential(JenkinsRule jenkins)
{
String sharedSecret = SharedSecretGenerator.generate();

JiraSitesConfiguration configuration = getJiraSitesConfiguration();
JiraSitesConfiguration configuration = getJiraSitesConfiguration(jenkins);

configuration.registerSite(new JiraSite(URI.create("http://jira.local/rest/jenkins/latest")).withName("Jira")
.withIdentifier("site-1")
Expand Down Expand Up @@ -169,7 +169,7 @@ public void testRegisterUpdatedSiteUpdatesSharedSecretCredential()
}

@Nonnull
private JiraSitesConfiguration getJiraSitesConfiguration()
private JiraSitesConfiguration getJiraSitesConfiguration(JenkinsRule jenkins)
{
return (JiraSitesConfiguration) jenkins.getInstance()
.getDescriptorOrDie(JiraSitesConfiguration.class);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

import java.net.URI;
import java.util.*;
import java.util.stream.Collectors;
import javax.annotation.Nonnull;

import org.jvnet.hudson.test.junit.jupiter.WithJenkins;
import org.marvelution.jji.JiraUtils;
import org.marvelution.jji.configuration.JiraSite;
import org.marvelution.jji.configuration.JiraSitesConfiguration;
Expand All @@ -22,32 +22,31 @@
import okhttp3.mockwebserver.RecordedRequest;
import org.assertj.core.api.InstanceOfAssertFactories;
import org.jenkinsci.plugins.plaincredentials.StringCredentials;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.rules.TestName;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.jvnet.hudson.test.JenkinsRule;

import static java.util.Optional.empty;
import static java.util.Optional.of;
import static org.assertj.core.api.Assertions.assertThat;
import static org.marvelution.jji.Headers.SYNC_TOKEN;

public class AbstractListenerTest
@WithJenkins
class AbstractListenerTest
{
static final String REST_BASE_PATH = "/rest/jenkins/latest/integration/";
@Rule
public TestName testName = new TestName();
@Rule
public JenkinsRule jenkins = new JenkinsRule();

protected JenkinsRule jenkins;
protected MockWebServer jira;
protected MockWebServer jira2;
FreeStyleProject project;

@Before
public void setup()
@BeforeEach
void setup(JenkinsRule jenkins)
throws Exception
{
this.jenkins = jenkins;

jira = new MockWebServer();
jira.setDispatcher(new MemorizingQueueDispatcher());
jira.start();
Expand All @@ -60,8 +59,8 @@ public void setup()
registerJiraSite(jira2, of("Jira 2"), true);
}

@After
public void tearDown()
@AfterEach
void tearDown()
throws Exception
{
jira.shutdown();
Expand Down Expand Up @@ -197,7 +196,7 @@ public List<RecordedRequest> findRequest(
{
return requests.stream()
.filter(request -> Objects.equals(method, request.getMethod()) && Objects.equals(path, request.getPath()))
.collect(Collectors.toList());
.toList();
}

@Nonnull
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,24 @@

import java.util.concurrent.*;

import org.jvnet.hudson.test.junit.jupiter.WithJenkins;
import org.marvelution.jji.*;
import org.marvelution.jji.model.parsers.*;

import hudson.model.*;
import okhttp3.mockwebserver.*;
import org.junit.*;
import org.junit.jupiter.api.Test;
import org.jvnet.hudson.test.*;

import static org.assertj.core.api.Assertions.*;
import static org.marvelution.jji.JiraUtils.*;

public class BuildListenerTest
@WithJenkins
class BuildListenerTest
extends AbstractListenerTest
{
@Test
public void testNotifyAndDelete()
void testNotifyAndDelete()
throws Exception
{
jira.enqueue(new MockResponse().setResponseCode(500));
Expand All @@ -42,7 +44,7 @@ public void testNotifyAndDelete()
}

@Test
public void testNotify_WithParents()
void testNotify_WithParents()
throws Exception
{
jira.enqueue(new MockResponse().setResponseCode(202));
Expand Down Expand Up @@ -81,7 +83,7 @@ public void testNotify_WithParents()
}

@Test
public void testNotify_WithData()
void testNotify_WithData()
throws Exception
{
jira.enqueue(new MockResponse().setResponseCode(202));
Expand Down
Loading
Loading