Sha256: 72c8e05cf65ac360467e6e3febf210b024531859cb64a9b658eae32647d71ab1

Contents?: true

Size: 1.88 KB

Versions: 1

Compression:

Stored size: 1.88 KB

Contents

require_relative '../spec_helper'

describe Arachni::BloomFilter do
    before( :all ) do
        @bf = Arachni::BloomFilter.new
    end

    describe '#<<' do
        it 'adds an object and return self' do
            (@bf << 'test').should == @bf
        end
        it 'aliased to #add' do
            @bf.add( 'test2' ).should == @bf
        end
    end

    describe '#include?' do
        context 'when an object is included' do
            it 'returns true' do
                @bf.include?( 'test' ).should be_true
                @bf.include?( 'test2' ).should be_true
            end
        end
        context 'when an object is not included' do
            it 'returns false' do
                @bf.include?( 'test3' ).should be_false
            end
        end
    end

    describe '#delete?' do
        it 'deletes an object and return self' do
            @bf.include?( 'test' ).should be_true
            @bf.delete( 'test' ).should be_true
            @bf.include?( 'test' ).should be_false
        end
    end

    describe '#empty?' do
        context 'when empty' do
            it 'returns true' do
                Arachni::BloomFilter.new.empty?.should be_true
            end
        end
        context 'when not empty' do
            it 'returns false' do
                @bf.empty?.should be_false
            end
        end
    end

    describe '#size' do
        it 'returns the size' do
            bf = Arachni::BloomFilter.new
            bf.size.should == 0
            bf << 1
            bf.size.should == 1
            bf << 1
            bf.size.should == 1
            bf << 2
            bf.size.should == 2
        end
    end

    describe '#clear' do
        it 'empties the list' do
            bf = Arachni::BloomFilter.new
            bf << 1
            bf << 2
            bf.size.should == 2
            bf.clear
            bf.size.should == 0
        end
    end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
arachni-0.4.2 spec/arachni/bloom_filter_spec.rb