Sha256: 775df75b96bfd38cc5bdceb401e5b4558bd0930ae87e35a1792397d46a3eb3bc
Contents?: true
Size: 1.09 KB
Versions: 5
Compression:
Stored size: 1.09 KB
Contents
require 'test_helper' require 'bloom_filter/bit_vector' class BloomFilterBitVectorTest < Test::Unit::TestCase context "with a bit vector of size 16" do setup do @bit_vector = BloomFilter::BitVector.new(16) end should "return all 0s at first" do @bit_vector.size.times do |i| fail "returned #{@bit_vector[i]} for bit #{i}" if @bit_vector[i] != 0 end end should "sets bits to 1 and returns 1 when retrieved" do @bit_vector.size.times do |i| @bit_vector[i] = 1 assert_equal 1, @bit_vector[i] end end should "sets bits back to 0" do @bit_vector.size.times do |i| @bit_vector[i] = 1 @bit_vector[i] = 0 assert_equal 0, @bit_vector[i] end end should "convert the bit vector into a string" do assert @bit_vector.to_s.is_a?(String) end should "convert back to the same bit vector" do [0,3,6,7].each do |bit| @bit_vector[bit] = 1 end assert_equal @bit_vector, BloomFilter::BitVector.new(16, @bit_vector.to_s) end end end
Version data entries
5 entries across 5 versions & 1 rubygems