Sha256: 7f865016223b30643faa40dab16331e0ec652fc02304a18d8f58bbab7495ce17
Contents?: true
Size: 947 Bytes
Versions: 20
Compression:
Stored size: 947 Bytes
Contents
module FactoryBot class Declaration # @api private class Implicit < Declaration def initialize(name, factory = nil, ignored = false) super(name, ignored) @factory = factory end def ==(other) self.class == other.class && name == other.name && factory == other.factory && ignored == other.ignored end protected attr_reader :factory private def build if FactoryBot.factories.registered?(name) [Attribute::Association.new(name, name, {})] elsif FactoryBot::Internal.sequences.registered?(name) [Attribute::Sequence.new(name, name, @ignored)] elsif @factory.name.to_s == name.to_s message = "Self-referencing trait '#{@name}'" raise TraitDefinitionError, message else @factory.inherit_traits([name]) [] end end end end end
Version data entries
20 entries across 20 versions & 2 rubygems