You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@storm.apache.org by ka...@apache.org on 2016/06/30 14:04:37 UTC

[1/5] storm git commit: STORM-1228: port fields_test to java

Repository: storm
Updated Branches:
  refs/heads/master 743bafbaf -> ca45d46ca


STORM-1228: port fields_test to java


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/7ad548e3
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/7ad548e3
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/7ad548e3

Branch: refs/heads/master
Commit: 7ad548e353a83a77b6ed489f324f4cd0ac575056
Parents: b778936
Author: Alessandro Bellina <ab...@yahoo-inc.com>
Authored: Fri Feb 26 22:42:59 2016 -0600
Committer: Alessandro Bellina <ab...@yahoo-inc.com>
Committed: Sat Feb 27 15:53:10 2016 -0600

----------------------------------------------------------------------
 .../src/jvm/org/apache/storm/tuple/Fields.java  |   9 ++
 .../test/clj/org/apache/storm/fields_test.clj   |  59 ---------
 .../jvm/org/apache/storm/tuple/FieldsTest.java  | 122 +++++++++++++++++++
 3 files changed, 131 insertions(+), 59 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/storm/blob/7ad548e3/storm-core/src/jvm/org/apache/storm/tuple/Fields.java
----------------------------------------------------------------------
diff --git a/storm-core/src/jvm/org/apache/storm/tuple/Fields.java b/storm-core/src/jvm/org/apache/storm/tuple/Fields.java
index bfa22cb..1c6bd5c 100644
--- a/storm-core/src/jvm/org/apache/storm/tuple/Fields.java
+++ b/storm-core/src/jvm/org/apache/storm/tuple/Fields.java
@@ -48,6 +48,15 @@ public class Fields implements Iterable<String>, Serializable {
         index();
     }
     
+    /**
+     * Select values out of tuple given a Fields selector
+     * Note that this function can throw a NullPointerException if the 
+     * fields in selector are not found in the _index
+     *  
+     * @param selector Fields to select
+     * @param tuple tuple to select from
+     *
+     */
     public List<Object> select(Fields selector, List<Object> tuple) {
         List<Object> ret = new ArrayList<>(selector.size());
         for(String s: selector) {

http://git-wip-us.apache.org/repos/asf/storm/blob/7ad548e3/storm-core/test/clj/org/apache/storm/fields_test.clj
----------------------------------------------------------------------
diff --git a/storm-core/test/clj/org/apache/storm/fields_test.clj b/storm-core/test/clj/org/apache/storm/fields_test.clj
deleted file mode 100644
index 66a9b6c..0000000
--- a/storm-core/test/clj/org/apache/storm/fields_test.clj
+++ /dev/null
@@ -1,59 +0,0 @@
-;; 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.
-(ns org.apache.storm.fields-test
-  (:use [clojure test])
-  (:import [org.apache.storm.tuple Fields])
-  (:import [java.util List])
-  (:import [java.util Iterator]))
-
-(deftest test-fields-constructor
-  (testing "constructor"
-    (testing "with (String... fields)"
-      (is (instance? Fields (Fields. (into-array String '("foo" "bar")))))
-      (is (thrown? IllegalArgumentException (Fields. (into-array String '("foo" "bar" "foo"))))))
-    (testing "with (List<String> fields)"
-      (is (instance? Fields (Fields. '("foo" "bar"))))
-      (is (thrown? IllegalArgumentException (Fields. '("foo" "bar" "foo")))))))
-
-(deftest test-fields-methods
-  (let [fields (Fields. '("foo" "bar"))]
-    (testing "method"
-      (testing ".size"
-        (is (= (.size fields) 2)))
-      (testing ".get"
-        (is (= (.get fields 0) "foo"))
-        (is (= (.get fields 1) "bar"))
-        (is (thrown? IndexOutOfBoundsException (.get fields 2))))
-      (testing ".fieldIndex"
-        (is (= (.fieldIndex fields "foo") 0))
-        (is (= (.fieldIndex fields "bar") 1))
-        (is (thrown? IllegalArgumentException (.fieldIndex fields "baz"))))
-      (testing ".contains"
-        (is (= (.contains fields "foo") true))
-        (is (= (.contains fields "bar") true))
-        (is (= (.contains fields "baz") false)))
-      (testing ".toList"
-        (is (instance? List (.toList fields)))
-        (is (= (count (.toList fields)) 2))
-        (is (not-any? false? (map = (.toList fields) '("foo" "bar")))))
-      (testing ".iterator"
-        (is (instance? Iterator (.iterator fields)))
-        (is (= (count (iterator-seq (.iterator fields))) 2))
-        (is (not-any? false? (map = (iterator-seq (.iterator fields)) '("foo" "bar")))))
-      (testing ".select"
-        (is (instance? List (.select fields (Fields. '("bar")) '("a" "b" "c"))))
-        (is (= (.select fields (Fields. '("bar")) '("a" "b" "c")) '("b")))))))
-

http://git-wip-us.apache.org/repos/asf/storm/blob/7ad548e3/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
----------------------------------------------------------------------
diff --git a/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java b/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
new file mode 100644
index 0000000..a4abd4b
--- /dev/null
+++ b/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
@@ -0,0 +1,122 @@
+/**
+ * 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.storm.tuple;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Iterator;
+import java.util.List;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+public class FieldsTest {
+
+    @Test
+    public void fieldsConstructorDoesNotThrowWithValidArgsTest() {
+        Assert.assertEquals(new Fields("foo", "bar").size(), 2);
+        Assert.assertEquals(new Fields(new String[] {"foo", "bar"}).size(), 2);
+    }
+
+    @Test(expected = IllegalArgumentException.class)
+    public void duplicateFieldsNotAllowedWhenConstructingWithVarArgsTest() {
+        new Fields("foo", "bar", "foo");
+    }
+
+    @Test(expected = IllegalArgumentException.class)
+    public void duplicateFieldsNotAllowedTestWhenConstructingFromListTest() {
+        new Fields(new String[] {"foo", "bar", "foo"});
+    }
+
+    private Fields getFields() {
+        return new Fields("foo", "bar");
+    }
+
+    @Test
+    public void getDoesNotThrowWithValidIndexTest() {
+        Assert.assertEquals(getFields().get(0), "foo");
+        Assert.assertEquals(getFields().get(1), "bar");
+    }
+
+    @Test(expected = IndexOutOfBoundsException.class)
+    public void getThrowsWhenOutOfBoundsTest() {
+        getFields().get(3);
+    }
+
+    @Test
+    public void fieldIndexTest() {
+        Assert.assertEquals(getFields().fieldIndex("foo"), 0);
+        Assert.assertEquals(getFields().fieldIndex("bar"), 1);
+    }
+
+    @Test(expected = IllegalArgumentException.class)
+    public void fieldIndexThrowsWhenOutOfBoundsTest() {
+        getFields().fieldIndex("baz");
+    }
+
+    @Test
+    public void containsTest() {
+        Assert.assertTrue(getFields().contains("foo"));
+        Assert.assertTrue(getFields().contains("bar"));
+        Assert.assertFalse(getFields().contains("baz"));
+    }
+
+    @Test
+    public void toListTest() {
+        List<String> fieldList = getFields().toList();
+        Assert.assertEquals(fieldList.size(), 2);
+        Assert.assertEquals(fieldList.get(0), "foo");
+        Assert.assertEquals(fieldList.get(1), "bar");
+    }
+
+    @Test
+    public void toIteratorTest() {
+        Iterator<String> fieldIter = getFields().iterator();
+
+        Assert.assertTrue(
+            "First item is foo",
+            fieldIter.hasNext());
+        Assert.assertEquals(fieldIter.next(), "foo");
+
+        Assert.assertTrue(
+            "Second item is bar",
+            fieldIter.hasNext());
+        Assert.assertEquals(fieldIter.next(), "bar");
+
+        Assert.assertFalse(
+            "At end. hasNext should return false",
+            fieldIter.hasNext());
+    }
+
+    @Test
+    public void selectTest() {
+        List<Object> second = Arrays.asList(new Object[]{"b"});
+        List<Object> tuple = Arrays.asList(new Object[]{"a", "b", "c"});
+        List<Object> pickSecond = getFields().select(new Fields("bar"), tuple);
+        Assert.assertTrue(pickSecond.equals(second));
+
+        List<Object> secondAndFirst = Arrays.asList(new Object[]{"b", "a"});
+        List<Object> pickSecondAndFirst = getFields().select(new Fields("bar", "foo"), tuple);
+        Assert.assertTrue(pickSecondAndFirst.equals(secondAndFirst));
+    }
+
+    @Test(expected = NullPointerException.class)
+    public void selectingUnknownFieldThrowsTest() {
+        getFields().select(new Fields("bar", "baz"), Arrays.asList(new Object[]{"a", "b", "c"}));
+    }
+}


[5/5] storm git commit: add STORM-1228 to CHANGELOG

Posted by ka...@apache.org.
add STORM-1228 to CHANGELOG


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/ca45d46c
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/ca45d46c
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/ca45d46c

Branch: refs/heads/master
Commit: ca45d46ca48245c56fd647d7067f1f08aa77e5d1
Parents: a6d438c
Author: Jungtaek Lim <ka...@gmail.com>
Authored: Thu Jun 30 23:04:22 2016 +0900
Committer: Jungtaek Lim <ka...@gmail.com>
Committed: Thu Jun 30 23:04:22 2016 +0900

----------------------------------------------------------------------
 CHANGELOG.md | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/storm/blob/ca45d46c/CHANGELOG.md
----------------------------------------------------------------------
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b272123..619f414 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,5 @@
 ## 2.0.0
+ * STORM-1228: port backtype.storm.fields-test to java
  * STORM-1233: Port AuthUtilsTest to java
  * STORM-1920: version of parent pom for storm-kafka-monitor is set 1.0.2-SNAPSHOT in master branch
  * STORM-1896: Remove duplicate code from HDFS spout


[2/5] storm git commit: STORM-1228: code review comments

Posted by ka...@apache.org.
STORM-1228: code review comments


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/daec4045
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/daec4045
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/daec4045

Branch: refs/heads/master
Commit: daec40455b61f6ae84ab1ef9f1514e15e45dc4e4
Parents: 7ad548e
Author: Alessandro Bellina <ab...@yahoo-inc.com>
Authored: Mon Feb 29 17:55:29 2016 -0600
Committer: Alessandro Bellina <ab...@yahoo-inc.com>
Committed: Mon Feb 29 17:55:29 2016 -0600

----------------------------------------------------------------------
 .../jvm/org/apache/storm/tuple/FieldsTest.java  | 36 ++++++++++++--------
 1 file changed, 22 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/storm/blob/daec4045/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
----------------------------------------------------------------------
diff --git a/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java b/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
index a4abd4b..536be81 100644
--- a/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
+++ b/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
@@ -49,36 +49,41 @@ public class FieldsTest {
 
     @Test
     public void getDoesNotThrowWithValidIndexTest() {
-        Assert.assertEquals(getFields().get(0), "foo");
-        Assert.assertEquals(getFields().get(1), "bar");
+        Fields fields = getFields();
+        Assert.assertEquals(fields.get(0), "foo");
+        Assert.assertEquals(fields.get(1), "bar");
     }
 
     @Test(expected = IndexOutOfBoundsException.class)
     public void getThrowsWhenOutOfBoundsTest() {
-        getFields().get(3);
+        Fields fields = getFields(); // only has two items
+        fields.get(2);
     }
 
     @Test
     public void fieldIndexTest() {
-        Assert.assertEquals(getFields().fieldIndex("foo"), 0);
-        Assert.assertEquals(getFields().fieldIndex("bar"), 1);
+        Fields fields = getFields();
+        Assert.assertEquals(fields.fieldIndex("foo"), 0);
+        Assert.assertEquals(fields.fieldIndex("bar"), 1);
     }
 
     @Test(expected = IllegalArgumentException.class)
     public void fieldIndexThrowsWhenOutOfBoundsTest() {
-        getFields().fieldIndex("baz");
+        new Fields("foo").fieldIndex("baz");
     }
 
     @Test
     public void containsTest() {
-        Assert.assertTrue(getFields().contains("foo"));
-        Assert.assertTrue(getFields().contains("bar"));
-        Assert.assertFalse(getFields().contains("baz"));
+        Fields fields = getFields();
+        Assert.assertTrue(fields.contains("foo"));
+        Assert.assertTrue(fields.contains("bar"));
+        Assert.assertFalse(fields.contains("baz"));
     }
 
     @Test
     public void toListTest() {
-        List<String> fieldList = getFields().toList();
+        Fields fields = getFields();
+        List<String> fieldList = fields.toList();
         Assert.assertEquals(fieldList.size(), 2);
         Assert.assertEquals(fieldList.get(0), "foo");
         Assert.assertEquals(fieldList.get(1), "bar");
@@ -86,7 +91,8 @@ public class FieldsTest {
 
     @Test
     public void toIteratorTest() {
-        Iterator<String> fieldIter = getFields().iterator();
+        Fields fields = getFields();
+        Iterator<String> fieldIter = fields.iterator();
 
         Assert.assertTrue(
             "First item is foo",
@@ -105,18 +111,20 @@ public class FieldsTest {
 
     @Test
     public void selectTest() {
+        Fields fields = getFields(); 
         List<Object> second = Arrays.asList(new Object[]{"b"});
         List<Object> tuple = Arrays.asList(new Object[]{"a", "b", "c"});
-        List<Object> pickSecond = getFields().select(new Fields("bar"), tuple);
+        List<Object> pickSecond = fields.select(new Fields("bar"), tuple);
         Assert.assertTrue(pickSecond.equals(second));
 
         List<Object> secondAndFirst = Arrays.asList(new Object[]{"b", "a"});
-        List<Object> pickSecondAndFirst = getFields().select(new Fields("bar", "foo"), tuple);
+        List<Object> pickSecondAndFirst = fields.select(new Fields("bar", "foo"), tuple);
         Assert.assertTrue(pickSecondAndFirst.equals(secondAndFirst));
     }
 
     @Test(expected = NullPointerException.class)
     public void selectingUnknownFieldThrowsTest() {
-        getFields().select(new Fields("bar", "baz"), Arrays.asList(new Object[]{"a", "b", "c"}));
+        Fields fields = getFields();
+        fields.select(new Fields("bar", "baz"), Arrays.asList(new Object[]{"a", "b", "c"}));
     }
 }


[4/5] storm git commit: Merge branch 'STORM-1228_port_fields_test_to_java' of https://github.com/abellina/storm into STORM-1228

Posted by ka...@apache.org.
Merge branch 'STORM-1228_port_fields_test_to_java' of https://github.com/abellina/storm into STORM-1228


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/a6d438cb
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/a6d438cb
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/a6d438cb

Branch: refs/heads/master
Commit: a6d438cbd9484a9e1bcdd8ed8955c0c4aceca5a1
Parents: 743bafb 86d78d6
Author: Jungtaek Lim <ka...@gmail.com>
Authored: Thu Jun 30 23:03:43 2016 +0900
Committer: Jungtaek Lim <ka...@gmail.com>
Committed: Thu Jun 30 23:03:43 2016 +0900

----------------------------------------------------------------------
 .../src/jvm/org/apache/storm/tuple/Fields.java  |   9 ++
 .../test/clj/org/apache/storm/fields_test.clj   |  59 ---------
 .../jvm/org/apache/storm/tuple/FieldsTest.java  | 126 +++++++++++++++++++
 3 files changed, 135 insertions(+), 59 deletions(-)
----------------------------------------------------------------------



[3/5] storm git commit: STORM-1228: instantiate fields in each test

Posted by ka...@apache.org.
STORM-1228: instantiate fields in each test


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/86d78d6c
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/86d78d6c
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/86d78d6c

Branch: refs/heads/master
Commit: 86d78d6c5b5f6ef22ababbeb64e7a140b79bdea2
Parents: daec404
Author: Alessandro Bellina <ab...@yahoo-inc.com>
Authored: Wed Mar 2 00:32:37 2016 -0600
Committer: Alessandro Bellina <ab...@yahoo-inc.com>
Committed: Wed Mar 2 00:32:37 2016 -0600

----------------------------------------------------------------------
 .../jvm/org/apache/storm/tuple/FieldsTest.java  | 20 ++++++++------------
 1 file changed, 8 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/storm/blob/86d78d6c/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
----------------------------------------------------------------------
diff --git a/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java b/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
index 536be81..6d0d79f 100644
--- a/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
+++ b/storm-core/test/jvm/org/apache/storm/tuple/FieldsTest.java
@@ -43,26 +43,22 @@ public class FieldsTest {
         new Fields(new String[] {"foo", "bar", "foo"});
     }
 
-    private Fields getFields() {
-        return new Fields("foo", "bar");
-    }
-
     @Test
     public void getDoesNotThrowWithValidIndexTest() {
-        Fields fields = getFields();
+        Fields fields = new Fields("foo", "bar");
         Assert.assertEquals(fields.get(0), "foo");
         Assert.assertEquals(fields.get(1), "bar");
     }
 
     @Test(expected = IndexOutOfBoundsException.class)
     public void getThrowsWhenOutOfBoundsTest() {
-        Fields fields = getFields(); // only has two items
+        Fields fields = new Fields("foo", "bar");
         fields.get(2);
     }
 
     @Test
     public void fieldIndexTest() {
-        Fields fields = getFields();
+        Fields fields = new Fields("foo", "bar");
         Assert.assertEquals(fields.fieldIndex("foo"), 0);
         Assert.assertEquals(fields.fieldIndex("bar"), 1);
     }
@@ -74,7 +70,7 @@ public class FieldsTest {
 
     @Test
     public void containsTest() {
-        Fields fields = getFields();
+        Fields fields = new Fields("foo", "bar");
         Assert.assertTrue(fields.contains("foo"));
         Assert.assertTrue(fields.contains("bar"));
         Assert.assertFalse(fields.contains("baz"));
@@ -82,7 +78,7 @@ public class FieldsTest {
 
     @Test
     public void toListTest() {
-        Fields fields = getFields();
+        Fields fields = new Fields("foo", "bar");
         List<String> fieldList = fields.toList();
         Assert.assertEquals(fieldList.size(), 2);
         Assert.assertEquals(fieldList.get(0), "foo");
@@ -91,7 +87,7 @@ public class FieldsTest {
 
     @Test
     public void toIteratorTest() {
-        Fields fields = getFields();
+        Fields fields = new Fields("foo", "bar");
         Iterator<String> fieldIter = fields.iterator();
 
         Assert.assertTrue(
@@ -111,7 +107,7 @@ public class FieldsTest {
 
     @Test
     public void selectTest() {
-        Fields fields = getFields(); 
+        Fields fields = new Fields("foo", "bar"); 
         List<Object> second = Arrays.asList(new Object[]{"b"});
         List<Object> tuple = Arrays.asList(new Object[]{"a", "b", "c"});
         List<Object> pickSecond = fields.select(new Fields("bar"), tuple);
@@ -124,7 +120,7 @@ public class FieldsTest {
 
     @Test(expected = NullPointerException.class)
     public void selectingUnknownFieldThrowsTest() {
-        Fields fields = getFields();
+        Fields fields = new Fields("foo", "bar");
         fields.select(new Fields("bar", "baz"), Arrays.asList(new Object[]{"a", "b", "c"}));
     }
 }