Sha256: 554b5b00f2d95940e7a58a408566f6f1da2db02bb509117080d3c9d205c220ca

Contents?: true

Size: 1.5 KB

Versions: 13

Compression:

Stored size: 1.5 KB

Contents

require 'minitest/autorun'
require 'minitest/spec'
require 'snappy'

describe Snappy do
  T = [*'a'..'z', *'A'..'Z', *'0'..'9']

  it 'well done' do
    s = Array.new(1024){T.sample}.join
    Snappy.inflate(Snappy.deflate s).must_equal(s)
  end

  it 'well done (pair)' do
    s = Array.new(1024){T.sample}.join
    [
     [:deflate,  :inflate],
     [:compress, :uncompress],
     [:dump,     :load],
    ].each do |(i, o)|
      Snappy.__send__(o, (Snappy.__send__ i,  s)).must_equal(s)
      eval %{Snappy.#{o}(Snappy.#{i} s).must_equal(s)}
    end
  end

  describe '#deflate' do
    it 'can pass buffer' do
      skip 'cannot pass buffer in jruby' if defined? JRUBY_VERSION
      s = 'a' * 1024
      d = ' ' * 1024
      r = Snappy.deflate(s, d)
      d.must_be_same_as r
    end
  end

  describe '#inflate' do
    it 'can pass buffer' do
      skip 'cannot pass buffer in jruby' if defined? JRUBY_VERSION
      s = Snappy.deflate('a' * 1024)
      d = ' ' * 1024
      r = Snappy.inflate(s, d)
      d.must_be_same_as r
    end
  end

  describe '#valid?' do
    it 'return true when passed deflated data' do
      skip 'snappy-jars does not have valid?' if defined? JRUBY_VERSION
      d = Snappy.deflate(Array.new(1024){T.sample}.join)
      Snappy.valid?(d).must_equal true
    end

    it 'return false when passed invalid data' do
      skip 'snappy-jars does not have valid?' if defined? JRUBY_VERSION
      d = Snappy.deflate(Array.new(1024){T.sample}.join).reverse
      Snappy.valid?(d).must_equal false
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
snappy-0.1.0-java test/test-snappy.rb
snappy-0.1.0 test/test-snappy.rb
snappy-0.0.17-java test/test-snappy.rb
snappy-0.0.17 test/test-snappy.rb
snappy-0.0.16-java test/test-snappy.rb
snappy-0.0.16 test/test-snappy.rb
snappy-0.0.15-java test/test-snappy.rb
snappy-0.0.15 test/test-snappy.rb
snappy-0.0.14-java test/test-snappy.rb
snappy-0.0.14 test/test-snappy.rb
snappy-0.0.13 test/test-snappy.rb
snappy-0.0.12-java test/test-snappy.rb
snappy-0.0.12 test/test-snappy.rb