-
-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathConfigurationAsCodeTest.java
More file actions
47 lines (41 loc) · 2.58 KB
/
ConfigurationAsCodeTest.java
File metadata and controls
47 lines (41 loc) · 2.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package org.marvelution.jji.casc;
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.jupiter.api.Test;
import static org.assertj.core.api.Assertions.*;
@WithJenkinsConfiguredWithCode
class ConfigurationAsCodeTest
{
@Test
@ConfiguredWithCode("configuration-as-code.yml")
void testSupportConfigurationAsCode(JenkinsConfiguredWithCodeRule jenkins)
{
JiraSitesConfiguration sitesConfiguration = (JiraSitesConfiguration) jenkins.getInstance()
.getDescriptorOrDie(JiraSitesConfiguration.class);
assertThat(sitesConfiguration).isNotNull()
.extracting(JiraSitesConfiguration::getSites)
.asInstanceOf(InstanceOfAssertFactories.iterable(JiraSite.class))
.hasSize(3)
.allSatisfy(site -> {
assertThat(site.getSharedSecret()).isNull();
assertThat(site.getSharedSecretId()).isNotBlank();
})
.extracting(JiraSite::getUri, JiraSite::getName, JiraSite::getIdentifier, JiraSite::isPostJson)
.containsOnly(tuple(URI.create("http://localhost:2990/jira/rest/jenkins/latest"),
"JIRA",
"97b100155db44e809096553ec4fe6a4d",
true),
tuple(URI.create("https://jjc.marvelution.com/rest/339b3e9a-2f18-4752-a978-a5ef9c17472e"),
"marveloud.atlassian.net",
"339b3e9a2f184752a978a5ef9c17472e",
false),
tuple(URI.create(
"https://jjc-staging.marvelution" + ".com/rest/b37cee05-e193-43d7-80bc-2bae9ef5f171"),
"marveling.atlassian.net",
"b37cee05e19343d780bc2bae9ef5f171",
false));
}
}