Sha256: 21e14b86969482b4cee812b1d1e269ff93fb221beaf1a9bd40202f53a0e31de2

Contents?: true

Size: 576 Bytes

Versions: 5

Compression:

Stored size: 576 Bytes

Contents

module DataMapper
  module Matchers

    class HaveProperty
      def initialize(property)
        @property = property.to_sym
      end

      def matches?(model)
        model.properties.map(&:name).include? @property
      end

      def failure_message
        "expected to have property #{@property}"
      end

      def negative_failure_message
        "expected to not have property #{@property}"
      end
      
      def description
        "has property #{@children}"
      end
    end


    def have_property(name)
      HaveProperty.new(name)
    end

  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
dm-rspec-0.1.2 lib/dm/matchers/have_property.rb
dm-rspec-0.1.1 lib/dm/matchers/have_property.rb
dm-rspec-0.1.0 lib/dm/matchers/have_property.rb
dm-rspec-0.0.2 lib/dm/matchers/have_property.rb
dm-rspec-0.0.1 lib/dm/matchers/have_property.rb