Sha256: 4302757877d953999e924a799a25ab53c312629f3109d9ca0310db3c59d1cb7c

Contents?: true

Size: 816 Bytes

Versions: 4

Compression:

Stored size: 816 Bytes

Contents

# encoding: utf-8

# describe #valid_policy and #invalid_policy builders
# also describes shared examples for all policies
require "support/policies"

describe Attestor::Policy::And do

  subject { described_class.new items }

  describe ".new" do

    let(:items) { [valid_policy] }

    it_behaves_like "creating a node"
    it_behaves_like "creating an immutable object"

  end # context

  describe "#validate!" do

    context "when all the parts are valid" do

      let(:items) { 3.times.map { valid_policy } }

      it_behaves_like "passing validation"

    end # context

    context "when a part is invalid" do

      let(:items) { [valid_policy, valid_policy, invalid_policy] }

      it_behaves_like "failing validation"

    end # context

  end # describe #validate!

end # describe Policy::Base::Not

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
attestor-2.2.1 spec/tests/policy/and_spec.rb
attestor-2.2.0 spec/tests/policy/and_spec.rb
attestor-2.1.0 spec/tests/policy/and_spec.rb
attestor-2.0.0 spec/tests/policy/and_spec.rb