class DataMapper::Matchers::HaveOne

Public Class Methods

new(child) click to toggle source
# File lib/dm/matchers/have_one.rb, line 4
def initialize(child)
  @child = child
end

Public Instance Methods

description() click to toggle source
# File lib/dm/matchers/have_one.rb, line 25
def description
  "has one #{@child}"
end
failure_message() click to toggle source
# File lib/dm/matchers/have_one.rb, line 17
def failure_message
  "expected to have one #{@child}"
end
matches?(parent) click to toggle source
# File lib/dm/matchers/have_one.rb, line 8
def matches?(parent)
  parent_class = parent.is_a?(Class) ? parent : parent.class
  relation = parent_class.relationships[@child.to_s]

  relation and
  relation.is_a?(DataMapper::Associations::OneToOne::Relationship) and
  relation.parent_model == parent_class
end
negative_failure_message() click to toggle source
# File lib/dm/matchers/have_one.rb, line 21
def negative_failure_message
  "expected not to have one #{@child}"
end