Sha256: b9e945e23eff60af880596f9db66c152f98cd982a995f40f1d85b075e513a583
Contents?: true
Size: 1.3 KB
Versions: 1
Compression:
Stored size: 1.3 KB
Contents
# encoding: utf-8 describe Policy::Base::And do # defines mock builders #valid_policy and #invalid_policy require "support/composer" let(:one) { valid_policy } let(:two) { valid_policy } let(:three) { valid_policy } subject { described_class.new one, two, three } describe ".new" do it "creates a Node" do expect(subject).to be_kind_of Policy::Base::Node end end # new describe "#policies" do it "is initialized" do expect(subject.policies).to contain_exactly one, two, three end end # describe #policies describe "#valid?" do context "when all the policies are valid" do it "returns true" do expect(subject).to be_valid end it "clears previous errors" do subject.errors.add :base, :subject expect { subject.valid? }.to change { subject.errors.blank? }.to true end end # context context "when any policy is invalid" do let(:three) { invalid_policy error: "three" } let!(:result) { subject.valid? } it "returns false" do expect(result).to eq false end it "picks up error from invalid policy" do expect(subject.errors.full_messages).to contain_exactly "three" end end # context end # describe #valid? end # describe Policy::Base::Not
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
policy-2.0.0 | spec/tests/lib/policy/base/and_spec.rb |