You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@knox.apache.org by GitBox <gi...@apache.org> on 2019/10/01 11:08:20 UTC

[GitHub] [knox] smolnar82 commented on a change in pull request #158: KNOX-2018 - KnoxShellTable Filtering needs greaterThan and lessThan, equals Methods

smolnar82 commented on a change in pull request #158: KNOX-2018 - KnoxShellTable Filtering needs greaterThan and lessThan, equals Methods
URL: https://github.com/apache/knox/pull/158#discussion_r329998895
 
 

 ##########
 File path: gateway-shell/src/test/java/org/apache/knox/gateway/shell/table/KnoxShellTableFilterTest.java
 ##########
 @@ -50,18 +51,86 @@ public void testRegexFilter() throws KnoxShellTableFilterException {
 
   @Test
   public void testGreaterThanFilter() throws KnoxShellTableFilterException, ParseException {
-    assertEquals(TABLE.filter().name("Column Integer").greaterThan(5).getRows().size(), 2);
-    assertEquals(TABLE.filter().name("Column Integer").greaterThan(25).getRows().size(), 1);
+    assertEquals(TABLE.filter().name("Column Integer").greaterThan(5).getRows().size(), 3);
+    assertEquals(TABLE.filter().name("Column Integer").greaterThan(25).getRows().size(), 2);
 
-    assertEquals(TABLE.filter().name("Column Double").greaterThan(10d).getRows().size(), 2);
-    assertEquals(TABLE.filter().name("Column Double").greaterThan(30d).getRows().size(), 1);
+    assertEquals(TABLE.filter().name("Column Double").greaterThan(10d).getRows().size(), 3);
+    assertEquals(TABLE.filter().name("Column Double").greaterThan(30d).getRows().size(), 2);
 
-    assertEquals(TABLE.filter().name("Column String").greaterThan("text20").getRows().size(), 2);
-    assertEquals(TABLE.filter().name("Column String").greaterThan("text30").getRows().size(), 1);
+    assertEquals(TABLE.filter().name("Column String").greaterThan("text20").getRows().size(), 3);
+    assertEquals(TABLE.filter().name("Column String").greaterThan("text30").getRows().size(), 2);
 
     synchronized (TEST_DATE_FORMAT) {
-      assertEquals(TABLE.filter().name("Column Date").greaterThan(TEST_DATE_FORMAT.parse("2009-12-31")).getRows().size(), 2);
-      assertEquals(TABLE.filter().name("Column Date").greaterThan(TEST_DATE_FORMAT.parse("2011-01-01")).getRows().size(), 1);
+      assertEquals(TABLE.filter().name("Column Date").greaterThan(TEST_DATE_FORMAT.parse("2009-12-31")).getRows().size(), 3);
+      assertEquals(TABLE.filter().name("Column Date").greaterThan(TEST_DATE_FORMAT.parse("2011-01-01")).getRows().size(), 2);
+    }
+  }
+
+  @Test
+  public void testLessThanFilter() throws KnoxShellTableFilterException, ParseException {
+    assertEquals(TABLE.filter().name("Column Integer").lessThan(20).getRows().size(), 1);
+    assertEquals(TABLE.filter().name("Column Integer").lessThan(100).getRows().size(), 3);
+
+    assertEquals(TABLE.filter().name("Column Double").lessThan(30d).getRows().size(), 1);
+    assertEquals(TABLE.filter().name("Column Double").lessThan(100d).getRows().size(), 3);
+
+    assertEquals(TABLE.filter().name("Column String").lessThan("text40").getRows().size(), 1);
+    assertEquals(TABLE.filter().name("Column String").lessThan("text70").getRows().size(), 3);
+
+    synchronized (TEST_DATE_FORMAT) {
+      assertEquals(TABLE.filter().name("Column Date").lessThan(TEST_DATE_FORMAT.parse("2011-12-31")).getRows().size(), 1);
+      assertEquals(TABLE.filter().name("Column Date").lessThan(TEST_DATE_FORMAT.parse("2013-01-01")).getRows().size(), 3);
+    }
+  }
+
+  @Test
+  public void testGreaterThanOrEqualToThanFilter() throws KnoxShellTableFilterException, ParseException {
+    assertEquals(TABLE.filter().name("Column Integer").greaterThanOrEqualTo(30).getRows().size(), 2);
+    assertEquals(TABLE.filter().name("Column Integer").greaterThanOrEqualTo(50).getRows().size(), 1);
+
+    assertEquals(TABLE.filter().name("Column Double").greaterThanOrEqualTo(40d).getRows().size(), 2);
+    assertEquals(TABLE.filter().name("Column Double").greaterThanOrEqualTo(20d).getRows().size(), 3);
+
+    assertEquals(TABLE.filter().name("Column String").greaterThanOrEqualTo("text50").getRows().size(), 2);
+    assertEquals(TABLE.filter().name("Column String").greaterThanOrEqualTo("text30").getRows().size(), 3);
+
+    synchronized (TEST_DATE_FORMAT) {
+      assertEquals(TABLE.filter().name("Column Date").greaterThanOrEqualTo(TEST_DATE_FORMAT.parse("2009-12-31")).getRows().size(), 3);
+      assertEquals(TABLE.filter().name("Column Date").greaterThanOrEqualTo(TEST_DATE_FORMAT.parse("2012-01-01")).getRows().size(), 2);
+    }
+  }
+
+  @Test
+  public void testLessThanOrEqualToThanFilter() throws KnoxShellTableFilterException, ParseException {
+    assertEquals(TABLE.filter().name("Column Integer").lessThanOrEqualTo(30).getRows().size(), 2);
+    assertEquals(TABLE.filter().name("Column Integer").lessThanOrEqualTo(50).getRows().size(), 3);
+
+    assertEquals(TABLE.filter().name("Column Double").lessThanOrEqualTo(40d).getRows().size(), 2);
+    assertEquals(TABLE.filter().name("Column Double").lessThanOrEqualTo(20d).getRows().size(), 1);
+
+    assertEquals(TABLE.filter().name("Column String").lessThanOrEqualTo("text50").getRows().size(), 2);
+    assertEquals(TABLE.filter().name("Column String").lessThanOrEqualTo("text30").getRows().size(), 1);
+
+    synchronized (TEST_DATE_FORMAT) {
+      assertEquals(TABLE.filter().name("Column Date").lessThanOrEqualTo(TEST_DATE_FORMAT.parse("2012-02-01")).getRows().size(), 3);
+      assertEquals(TABLE.filter().name("Column Date").lessThanOrEqualTo(TEST_DATE_FORMAT.parse("2010-01-01")).getRows().size(), 1);
+    }
+  }
+
+  @Test
+  public void testEqualToFilter() throws KnoxShellTableFilterException, ParseException {
+    assertEquals(TABLE.filter().name("Column Integer").equalTo(60).getRows().size(), 0);
+    assertEquals(TABLE.filter().name("Column Integer").equalTo(50).getRows().size(), 1);
+
+    assertEquals(TABLE.filter().name("Column Double").equalTo(40d).getRows().size(), 1);
+    assertEquals(TABLE.filter().name("Column Double").equalTo(90d).getRows().size(), 0);
+
+    assertEquals(TABLE.filter().name("Column String").equalTo("text90").getRows().size(), 0);
+    assertEquals(TABLE.filter().name("Column String").equalTo("text30").getRows().size(), 1);
+
+    synchronized (TEST_DATE_FORMAT) {
+      assertEquals(TABLE.filter().name("Column Date").equalTo(TEST_DATE_FORMAT.parse("2012-02-01")).getRows().size(), 1);
 
 Review comment:
   Aren't there 2 rows with `2012-01-01`?

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services