You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2019/05/23 15:46:39 UTC

[arrow] branch master updated: ARROW-2119: [IntegrationTest] Add test case with a stream having no record batches

This is an automated email from the ASF dual-hosted git repository.

wesm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new b3a4e95  ARROW-2119: [IntegrationTest] Add test case with a stream having no record batches
b3a4e95 is described below

commit b3a4e9501615584cbae1dff8f09b384c85015d28
Author: Wes McKinney <we...@apache.org>
AuthorDate: Thu May 23 10:46:29 2019 -0500

    ARROW-2119: [IntegrationTest] Add test case with a stream having no record batches
    
    I think it is not a bad idea to not fail on reading and writing streams that have no record batches, rather than raising an error.
    
    This would require code changes in Java and JS at least, so I will need help from others if this is thought to be a good idea. Might be good to add some unit tests around this also
    
    Author: Wes McKinney <we...@apache.org>
    
    Closes #3871 from wesm/ARROW-2119 and squashes the following commits:
    
    acc5ac90e <Wes McKinney> Disable no-batches case for JS and Java
    f4816fe65 <Wes McKinney> Add test case with a string having no record batches
---
 integration/integration_test.py | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/integration/integration_test.py b/integration/integration_test.py
index b2b1b5e..0a508e8 100644
--- a/integration/integration_test.py
+++ b/integration/integration_test.py
@@ -1030,6 +1030,9 @@ def get_generated_json_files(tempdir=None, flight=False):
         return
 
     file_objs = [
+        (generate_primitive_case([], name='primitive_no_batches')
+         .skip_category('JS')
+         .skip_category('Java')),
         generate_primitive_case([17, 20], name='primitive'),
         generate_primitive_case([0, 0, 0], name='primitive_zerolength'),
         generate_decimal_case(),
@@ -1120,6 +1123,16 @@ class IntegrationRunner(object):
                                               name +
                                               '.consumer_stream_as_file')
 
+            if producer.name in test_case.skip:
+                print('-- Skipping test because producer {0} does '
+                      'not support'.format(producer.name))
+                continue
+
+            if consumer.name in test_case.skip:
+                print('-- Skipping test because consumer {0} does '
+                      'not support'.format(consumer.name))
+                continue
+
             if SKIP_ARROW in test_case.skip:
                 print('-- Skipping test')
                 continue
@@ -1498,6 +1511,8 @@ def write_js_test_json(directory):
     generate_datetime_case().write(os.path.join(directory, 'datetime.json'))
     (generate_dictionary_case()
      .write(os.path.join(directory, 'dictionary.json')))
+    (generate_primitive_case([])
+     .write(os.path.join(directory, 'primitive_no_batches.json')))
     (generate_primitive_case([7, 10])
      .write(os.path.join(directory, 'primitive.json')))
     (generate_primitive_case([0, 0, 0])