Sha256: f97c78271aa5b8e8178e323acafa05849e9fd0ba066da0493032f325fb2a2ec7

Contents?: true

Size: 743 Bytes

Versions: 2

Compression:

Stored size: 743 Bytes

Contents

require 'spec_helper'

describe Yema::Validator, "#valid?" do

  subject { validator.valid? }

  let(:validator) { described_class.new(resource, rule)         }
  let(:resource)  { mock('resource', foo: value)                }
  let(:rule)      { mock('required_rule', attribute_name: :foo) }

  before do
    resource.should_receive(:foo).and_return(value)
  end

  context "when the value is valid" do
    let(:value) { 'bar' }
    before do
      rule.should_receive(:matches?).with(value).and_return(true)
    end
    it { should be_true }
  end

  context "when the value is invalid" do
    let(:value) { nil }
    before do
      rule.should_receive(:matches?).with(value).and_return(false)
    end
    it { should be_false }
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
yema-0.0.3 spec/unit/validator/valid_predicate_spec.rb
yema-0.0.2 spec/unit/validator/valid_predicate_spec.rb