Uploaded image for project: 'Apache Avro'
  1. Apache Avro
  2. AVRO-2554

Fix Ruby interop test to read all supported codecs

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.10.0
    • interop, ruby
    • None

    Description

      I've just noticed AVRO-2456 had a bug on the Ruby data interop test. It checks only the null codec and doesn't others.

      sekikn@4e7deb5781b2:~/avro$ git diff                                                                                                                          
      diff --git a/lang/ruby/interop/test_interop.rb b/lang/ruby/interop/test_interop.rb                                                                            
      index a63c158c..f4528f00 100755                                                                                                                               
      --- a/lang/ruby/interop/test_interop.rb                                                                                                                       
      +++ b/lang/ruby/interop/test_interop.rb                                                                                                                       
      @@ -30,6 +30,7 @@ class TestInterop < Test::Unit::TestCase                                                                                                    
           sep, codec = File.basename(fn, 'avro').rpartition('_')[1, 2]                                                                                             
           sep.empty? || CODECS_TO_VALIDATE.include?(codec)                                                                                                         
         end                                                                                                                                                        
      +  puts files                                                                                                                                                 
                                                                                                                                                                    
         files.each do |fn|                                                                                                                                         
           define_method("test_read_#{File.basename(fn, 'avro')}") do                                                                                               
      sekikn@4e7deb5781b2:~/avro$ ls -l build/interop/data
      total 220
      -rw-r--r-- 1 sekikn sekikn  1279 Sep  9 01:53 c.avro
      -rw-r--r-- 1 sekikn sekikn  1258 Sep  9 01:53 csharp.avro
      -rw-r--r-- 1 sekikn sekikn  1240 Sep  9 01:53 csharp_deflate.avro
      -rw-r--r-- 1 sekikn sekikn 38453 Sep  9 01:43 java.avro
      -rw-r--r-- 1 sekikn sekikn 29436 Sep  9 01:43 java_deflate.avro
      -rw-r--r-- 1 sekikn sekikn 35412 Sep  9 01:43 java_snappy.avro
      -rw-r--r-- 1 sekikn sekikn 31929 Sep  9 01:43 java_zstandard.avro
      -rw-r--r-- 1 sekikn sekikn  1204 Sep  9 01:53 perl.avro
      -rw-r--r-- 1 sekikn sekikn  1186 Sep  9 01:53 perl_deflate.avro
      -rw-r--r-- 1 sekikn sekikn  1202 Sep  9 01:53 perl_zstandard.avro
      -rw-r--r-- 1 sekikn sekikn  1138 Sep  9 01:53 php.avro
      -rw-r--r-- 1 sekikn sekikn  1124 Sep  9 01:53 php_deflate.avro
      -rw-r--r-- 1 sekikn sekikn  1390 Sep  9 01:53 py.avro
      -rw-r--r-- 1 sekikn sekikn  1390 Sep  9 01:53 py3.avro
      -rw-r--r-- 1 sekikn sekikn  1375 Sep  9 01:53 py3_deflate.avro
      -rw-r--r-- 1 sekikn sekikn  1384 Sep  9 01:53 py3_snappy.avro
      -rw-r--r-- 1 sekikn sekikn  1388 Sep  9 01:53 py3_zstandard.avro
      -rw-r--r-- 1 sekikn sekikn  1375 Sep  9 01:53 py_deflate.avro
      -rw-r--r-- 1 sekikn sekikn  1384 Sep  9 01:53 py_snappy.avro
      -rw-r--r-- 1 sekikn sekikn  1388 Sep  9 01:53 py_zstandard.avro
      -rw-r--r-- 1 sekikn sekikn  1398 Sep  9 01:53 ruby.avro
      -rw-r--r-- 1 sekikn sekikn  1448 Sep  9 01:53 ruby_deflate.avro
      -rw-r--r-- 1 sekikn sekikn  1411 Sep  9 01:53 ruby_snappy.avro
      -rw-r--r-- 1 sekikn sekikn  1354 Sep  9 01:53 ruby_zstandard.avro
      sekikn@4e7deb5781b2:~/avro$ cd lang/ruby; rake interop                                                                                                        
      /home/sekikn/avro/lang/ruby/interop/../../../build/interop/data/ruby.avro                                                                                     
      /home/sekikn/avro/lang/ruby/interop/../../../build/interop/data/java.avro                                                                                     
      /home/sekikn/avro/lang/ruby/interop/../../../build/interop/data/perl.avro                                                                                     
      /home/sekikn/avro/lang/ruby/interop/../../../build/interop/data/py3.avro                                                                                      
      /home/sekikn/avro/lang/ruby/interop/../../../build/interop/data/c.avro                                                                                        
      /home/sekikn/avro/lang/ruby/interop/../../../build/interop/data/py.avro                                                                                       
      /home/sekikn/avro/lang/ruby/interop/../../../build/interop/data/php.avro                                                                                      
      /home/sekikn/avro/lang/ruby/interop/../../../build/interop/data/csharp.avro                                                                                   
      Loaded suite /var/lib/gems/2.3.0/gems/rake-12.3.3/lib/rake/rake_test_loader                                                                                   
      Started                                                                                                                                                       
      

      Also, it doesn't test zstd-compressed files for now, though the Ruby bindings supports that codec.

      Attachments

        Issue Links

          Activity

            People

              sekikn Kengo Seki
              sekikn Kengo Seki
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: