class Shoulda::Matchers::ActiveRecord::Uniqueness::Model

@private

Attributes

name[R]
namespace[R]

Public Class Methods

new(name, namespace) click to toggle source
# File lib/shoulda/matchers/active_record/uniqueness/model.rb, line 18
def initialize(name, namespace)
  @name = name
  @namespace = namespace
end
next_unique_copy_of(model_name, namespace) click to toggle source
# File lib/shoulda/matchers/active_record/uniqueness/model.rb, line 8
def self.next_unique_copy_of(model_name, namespace)
  model = new(model_name, namespace)

  while model.already_exists?
    model = model.next
  end

  model
end

Public Instance Methods

already_exists?() click to toggle source
# File lib/shoulda/matchers/active_record/uniqueness/model.rb, line 23
def already_exists?
  namespace.has?(name)
end
next() click to toggle source
# File lib/shoulda/matchers/active_record/uniqueness/model.rb, line 27
def next
  Model.new(name.next, namespace)
end
to_s() click to toggle source
# File lib/shoulda/matchers/active_record/uniqueness/model.rb, line 47
def to_s
  [namespace, name].join('::')
end