This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit bc16593bb17ad92512fbc224bd298d752095d89b Author: marius cornescu <marius_corne...@yahoo.com> AuthorDate: Thu Sep 19 22:07:06 2019 +0200 CAMEL-13998 - Unit tests --- .../hdfs/kerberos/KerberosConfigurationTest.java | 79 ++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/components/camel-hdfs/src/test/java/org/apache/camel/component/hdfs/kerberos/KerberosConfigurationTest.java b/components/camel-hdfs/src/test/java/org/apache/camel/component/hdfs/kerberos/KerberosConfigurationTest.java new file mode 100644 index 0000000..820dfba --- /dev/null +++ b/components/camel-hdfs/src/test/java/org/apache/camel/component/hdfs/kerberos/KerberosConfigurationTest.java @@ -0,0 +1,79 @@ +package org.apache.camel.component.hdfs.kerberos; + +import org.apache.hadoop.hdfs.DFSConfigKeys; +import org.junit.Test; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.Arrays; +import java.util.List; + +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.notNullValue; +import static org.junit.Assert.*; + +public class KerberosConfigurationTest { + + private KerberosConfiguration underTest; + + @Test + public void newKerberosConfiguration() throws IOException { + // given + List<String> namedNodes = Arrays.asList("kerb_node_01.example.com:8021", "kerb_node_02.example.com:8022"); + String kerberosConfigFileLocation = pwd() + "/src/test/resources/kerberos/test-kerb5.conf"; + int replicationFactor = 3; + + // when + underTest = new KerberosConfiguration(namedNodes, kerberosConfigFileLocation, replicationFactor); + + // then + assertThat(underTest, notNullValue()); + assertThat(underTest.get("hadoop.security.authentication"), is("kerberos")); + assertThat(underTest.get(DFSConfigKeys.DFS_REPLICATION_KEY), is("3")); + assertThat(underTest.get(DFSConfigKeys.DFS_NAMESERVICES), is("hfdsNamedService")); + assertThat(underTest.get("dfs.ha.namenodes.hfdsNamedService"), is("kerb_node_01_example_com,kerb_node_02_example_com")); + assertThat(underTest.get("dfs.namenode.rpc-address.hfdsNamedService.kerb_node_01_example_com"), is("kerb_node_01.example.com:8021")); + assertThat(underTest.get("dfs.namenode.rpc-address.hfdsNamedService.kerb_node_02_example_com"), is("kerb_node_02.example.com:8022")); + assertThat(underTest.get("dfs.client.failover.proxy.provider.hfdsNamedService"), is("org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider")); + assertThat(underTest.get("fs.defaultFS"), is("hdfs://hfdsNamedService")); + } + + @Test(expected = FileNotFoundException.class) + public void newKerberosConfigurationWithMissingKerberosConfigFile() throws IOException { + // given + List<String> namedNodes = Arrays.asList("kerb_node_01.example.com:8021", "kerb_node_02.example.com:8022"); + String kerberosConfigFileLocation = pwd() + "/src/test/resources/kerberos/missing.conf"; + int replicationFactor = 3; + + // when + underTest = new KerberosConfiguration(namedNodes, kerberosConfigFileLocation, replicationFactor); + + // then + /* exception was thrown */ + } + +// @Test +// public void loginWithKeytab() { +// // given +// List<String> namedNodes; +// String kerberosConfigFileLocation; +// int replicationFactor; +// +// String username; +// String keyTabFileLocation; +// +// underTest = new KerberosConfiguration(namedNodes, kerberosConfigFileLocation, replicationFactor); +// +// // when +// underTest.loginWithKeytab(username, keyTabFileLocation); +// +// // then +// +// } + + private String pwd() { + return new File(".").getAbsolutePath(); + } + +} \ No newline at end of file