Sha256: 484acf45bcd83cd2e63a5349be674ecc6f0d614ac0079c22e673db9f57ea13bb

Contents?: true

Size: 1.05 KB

Versions: 6

Compression:

Stored size: 1.05 KB

Contents

require 'spidr/rules'

require 'spec_helper'

describe Rules do
  subject { Rules }

  it "should accept data based on acceptance data" do
    rules = subject.new(:accept => [1])

    rules.accept?(1).should == true
  end

  it "should accept data based on acceptance regexps" do
    rules = subject.new(:accept => [/1/])

    rules.accept?('1').should == true
  end

  it "should match non-Strings using acceptance regexps" do
    rules = subject.new(:accept => [/1/])

    rules.accept?(1).should == true
  end

  it "should accept data using acceptance lambdas" do
    rules = subject.new(:accept => [lambda { |data| data > 2 }])

    rules.accept?(3).should == true
  end

  it "should reject data that does not match any acceptance patterns" do
    rules = subject.new(:accept => [1, 2, 3])

    rules.accept?(2).should == true
    rules.accept?(4).should == false
  end

  it "should accept data that does not match any rejection patterns" do
    rules = subject.new(:reject => [1, 2, 3])

    rules.accept?(2).should == false
    rules.accept?(4).should == true
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
spidr_epg-1.0.0 spec/rules_spec.rb
spidr-0.4.1 spec/rules_spec.rb
spidr-0.4.0 spec/rules_spec.rb
spidr-0.3.2 spec/rules_spec.rb
spidr-0.3.1 spec/rules_spec.rb
spidr-0.3.0 spec/rules_spec.rb