Skip to content

Commit d312a31

Browse files
Added test case to verify UTF8 encoded file parsing
1 parent 87df844 commit d312a31

3 files changed

Lines changed: 25 additions & 1 deletion

File tree

util/src/main/java/io/kubernetes/client/util/ClientBuilder.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,12 @@
2727
import io.kubernetes.client.util.credentials.AccessTokenAuthentication;
2828
import io.kubernetes.client.util.credentials.Authentication;
2929
import io.kubernetes.client.util.credentials.KubeconfigAuthentication;
30-
import java.io.*;
30+
import java.io.BufferedReader;
31+
import java.io.ByteArrayInputStream;
32+
import java.io.File;
33+
import java.io.FileInputStream;
34+
import java.io.IOException;
35+
import java.io.InputStreamReader;
3136
import java.nio.charset.Charset;
3237
import java.nio.charset.StandardCharsets;
3338
import java.nio.file.Files;

util/src/test/java/io/kubernetes/client/util/ClientBuilderTest.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@
3636
public class ClientBuilderTest {
3737
private static final String HOME_PATH = Resources.getResource("").getPath();
3838
private static final String KUBECONFIG_FILE_PATH = Resources.getResource("kubeconfig").getPath();
39+
private static final String KUBECONFIG_UTF8_FILE_PATH =
40+
Resources.getResource("kubeconfig-utf8").getPath();
3941
private static final String KUBECONFIG_HTTP_FILE_PATH =
4042
Resources.getResource("kubeconfig-http").getPath();
4143
private static final String KUBECONFIG_HTTPS_FILE_PATH =
@@ -81,6 +83,13 @@ public void testDefaultClientReadsKubeConfig() throws Exception {
8183
assertEquals("http://kubeconfig.dir.com", client.getBasePath());
8284
}
8385

86+
@Test
87+
public void testDefaultClientUTF8EncodedConfig() throws Exception {
88+
environmentVariables.set("KUBECONFIG", KUBECONFIG_UTF8_FILE_PATH);
89+
final ApiClient client = ClientBuilder.defaultClient();
90+
assertEquals("http://kubeconfig.dir.com", client.getBasePath());
91+
}
92+
8493
@Test
8594
public void testDefaultClientReadsKubeConfigMultiple() throws Exception {
8695
final String kubeConfigEnv = KUBECONFIG_FILE_PATH + File.pathSeparator + "/non-existent";
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
apiVersion: v1
2+
clusters:
3+
- cluster:
4+
server: http://kubeconfig.dir.com
5+
name: façade
6+
contexts:
7+
- context:
8+
cluster: façade
9+
name: foo-context
10+
current-context: foo-context

0 commit comments

Comments
 (0)