Skip to content

Commit 88f6868

Browse files
committed
Fix failing test, configure properties directly to allow for overriding
1 parent 106cc9f commit 88f6868

File tree

1 file changed

+46
-39
lines changed

1 file changed

+46
-39
lines changed

src/test/java/org/springframework/cloud/deployer/spi/kubernetes/KubernetesConfigurationPropertiesTests.java

Lines changed: 46 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -17,56 +17,63 @@
1717

1818
import io.fabric8.kubernetes.client.KubernetesClient;
1919
import org.junit.Test;
20-
import org.junit.experimental.runners.Enclosed;
21-
import org.junit.runner.RunWith;
22-
23-
import org.springframework.beans.factory.annotation.Autowired;
24-
import org.springframework.boot.test.context.SpringBootTest;
25-
import org.springframework.test.context.junit4.SpringRunner;
2620

2721
import static org.junit.Assert.assertEquals;
2822

2923
/**
3024
* @author Ilayaperumal Gopinathan
3125
* @author Chris Schaefer
3226
*/
33-
@RunWith(Enclosed.class)
3427
public class KubernetesConfigurationPropertiesTests {
35-
@RunWith(SpringRunner.class)
36-
@SpringBootTest(classes = {KubernetesAutoConfiguration.class}, properties = {
37-
"spring.cloud.deployer.kubernetes.fabric8.trustCerts=true",
38-
"spring.cloud.deployer.kubernetes.fabric8.masterUrl=http://localhost:8090",
39-
"spring.cloud.deployer.kubernetes.fabric8.namespace=testing"
40-
})
41-
public static class TestFabric8Properties {
42-
@Autowired
43-
private KubernetesClient kubernetesClient;
28+
@Test
29+
public void testFabric8Namespacing() {
30+
KubernetesDeployerProperties kubernetesDeployerProperties = new KubernetesDeployerProperties();
31+
kubernetesDeployerProperties.getFabric8().setTrustCerts(true);
32+
kubernetesDeployerProperties.getFabric8().setMasterUrl("http://localhost:8090");
33+
// this can be set programatically in properties as well as an environment variable
34+
// (ie: CI, cmd line, etc) so ensure we have a clean slate here
35+
kubernetesDeployerProperties.setNamespace(null);
36+
kubernetesDeployerProperties.getFabric8().setNamespace("testing");
37+
38+
KubernetesClient kubernetesClient = KubernetesClientFactory
39+
.getKubernetesClient(kubernetesDeployerProperties);
4440

45-
@Test
46-
public void testFabric8Properties() {
47-
assertEquals("http://localhost:8090", kubernetesClient.getMasterUrl().toString());
48-
assertEquals("testing", kubernetesClient.getNamespace());
49-
assertEquals("http://localhost:8090", kubernetesClient.getConfiguration().getMasterUrl());
50-
assertEquals(Boolean.TRUE, kubernetesClient.getConfiguration().isTrustCerts());
51-
}
41+
assertEquals("http://localhost:8090", kubernetesClient.getMasterUrl().toString());
42+
assertEquals("testing", kubernetesClient.getNamespace());
43+
assertEquals("http://localhost:8090", kubernetesClient.getConfiguration().getMasterUrl());
44+
assertEquals(Boolean.TRUE, kubernetesClient.getConfiguration().isTrustCerts());
5245
}
5346

54-
@RunWith(SpringRunner.class)
55-
@SpringBootTest(classes = {KubernetesAutoConfiguration.class}, properties = {
56-
"spring.cloud.deployer.kubernetes.fabric8.trustCerts=true",
57-
"spring.cloud.deployer.kubernetes.fabric8.masterUrl=http://localhost:8090",
58-
"spring.cloud.deployer.kubernetes.namespace=toplevel"
59-
})
60-
public static class TestDeployerNamespaceOverride {
61-
@Autowired
62-
private KubernetesClient kubernetesClient;
47+
@Test
48+
public void testTopLevelNamespacing() {
49+
KubernetesDeployerProperties kubernetesDeployerProperties = new KubernetesDeployerProperties();
50+
kubernetesDeployerProperties.getFabric8().setTrustCerts(true);
51+
kubernetesDeployerProperties.getFabric8().setMasterUrl("http://localhost:8090");
52+
kubernetesDeployerProperties.setNamespace("toplevel");
53+
54+
KubernetesClient kubernetesClient = KubernetesClientFactory
55+
.getKubernetesClient(kubernetesDeployerProperties);
56+
57+
assertEquals("http://localhost:8090", kubernetesClient.getMasterUrl().toString());
58+
assertEquals("toplevel", kubernetesClient.getNamespace());
59+
assertEquals("http://localhost:8090", kubernetesClient.getConfiguration().getMasterUrl());
60+
assertEquals(Boolean.TRUE, kubernetesClient.getConfiguration().isTrustCerts());
61+
}
62+
63+
@Test
64+
public void testTopLevelNamespacingOverride() {
65+
KubernetesDeployerProperties kubernetesDeployerProperties = new KubernetesDeployerProperties();
66+
kubernetesDeployerProperties.getFabric8().setTrustCerts(true);
67+
kubernetesDeployerProperties.getFabric8().setMasterUrl("http://localhost:8090");
68+
kubernetesDeployerProperties.getFabric8().setNamespace("toplevel");
69+
kubernetesDeployerProperties.setNamespace("toplevel");
70+
71+
KubernetesClient kubernetesClient = KubernetesClientFactory
72+
.getKubernetesClient(kubernetesDeployerProperties);
6373

64-
@Test
65-
public void testFabric8Properties() {
66-
assertEquals("http://localhost:8090", kubernetesClient.getMasterUrl().toString());
67-
assertEquals("toplevel", kubernetesClient.getNamespace());
68-
assertEquals("http://localhost:8090", kubernetesClient.getConfiguration().getMasterUrl());
69-
assertEquals(Boolean.TRUE, kubernetesClient.getConfiguration().isTrustCerts());
70-
}
74+
assertEquals("http://localhost:8090", kubernetesClient.getMasterUrl().toString());
75+
assertEquals("toplevel", kubernetesClient.getNamespace());
76+
assertEquals("http://localhost:8090", kubernetesClient.getConfiguration().getMasterUrl());
77+
assertEquals(Boolean.TRUE, kubernetesClient.getConfiguration().isTrustCerts());
7178
}
7279
}

0 commit comments

Comments
 (0)