[
https://issues.apache.org/jira/browse/METRON-539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16080673#comment-16080673
]
ASF GitHub Bot commented on METRON-539:
---------------------------------------
Github user mattf-horton commented on a diff in the pull request:
https://github.com/apache/metron/pull/641#discussion_r126473615
--- Diff:
metron-stellar/stellar-common/src/test/java/org/apache/metron/stellar/dsl/functions/HashFunctionsTest.java
---
@@ -0,0 +1,169 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.metron.stellar.dsl.functions;
+
+import com.google.common.io.BaseEncoding;
+import org.apache.commons.lang.SerializationUtils;
+import org.junit.Test;
+
+import java.io.Serializable;
+import java.nio.charset.StandardCharsets;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.security.Security;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+import static
org.apache.metron.stellar.common.utils.StellarProcessorUtils.run;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+public class HashFunctionsTest {
+ final HashFunctions.Hash hash = new HashFunctions.Hash();
+
+ @Test(expected = IllegalArgumentException.class)
+ public void nullArgumentListShouldThrowException() throws Exception {
+ hash.apply(null);
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void emptyArgumentListShouldThrowException() throws Exception {
+ hash.apply(Collections.emptyList());
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void singleArgumentListShouldThrowException() throws Exception {
+ hash.apply(Collections.singletonList("some value."));
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void argumentListWithMoreThanTwoValuesShouldThrowException3()
throws Exception {
+ hash.apply(Arrays.asList("1", "2", "3"));
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void argumentListWithMoreThanTwoValuesShouldThrowException4()
throws Exception {
+ hash.apply(Arrays.asList("1", "2", "3", "4"));
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void invalidAlgorithmArgumentShouldThrowException() throws
Exception {
+ hash.apply(Arrays.asList("value to hash", "invalidAlgorithm"));
+ }
+
+ @Test
+ public void invalidNullAlgorithmArgumentShouldThrowException() throws
Exception {
+ assertNull(hash.apply(Arrays.asList("value to hash", null)));
+ }
--- End diff --
Need "@Test(expected = IllegalArgumentException.class)" on this one too,
don't we?
> Add stellar keywords for hashing
> --------------------------------
>
> Key: METRON-539
> URL: https://issues.apache.org/jira/browse/METRON-539
> Project: Metron
> Issue Type: Improvement
> Reporter: Jon Zeolla
> Priority: Minor
>
> Stellar should have the ability to natively hash values using a prefix of TO
> or HASH, then the algorithm, and an optional length. For instance,
> "TO_SHA3_256" or "HASH_MD5."
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)