Module: Jumbotron::Testing

Defined in:
lib/jumbotron/testing.rb

Overview

Explicit host/test entry for shared FactoryBot definitions and related testing bootstrap. Not loaded in production via Railtie.

Class Method Summary collapse

Class Method Details

.factories_loaded?Boolean

Returns:

  • (Boolean)


26
27
28
# File 'lib/jumbotron/testing.rb', line 26

def factories_loaded?
  @factories_loaded == true
end

.factories_pathObject



35
36
37
# File 'lib/jumbotron/testing.rb', line 35

def factories_path
  Jumbotron::Engine.root.join("spec/factories")
end

.install!Object

Preferred host entry. Currently loads factories; reserved for future shared testing setup (helpers, config checks).



10
11
12
# File 'lib/jumbotron/testing.rb', line 10

def install!
  load_factories!
end

.load_factories!Object

Load Jumbotron FactoryBot definitions exactly once. Loads files under Engine.root/spec/factories explicitly (does not mutate global definition_file_paths / find_definitions).



17
18
19
20
21
22
23
24
# File 'lib/jumbotron/testing.rb', line 17

def load_factories!
  return if factories_loaded?

  require_factory_bot!
  factory_files.each { |path| Kernel.load(path) }
  @factories_loaded = true
  true
end

.reset_factories_loaded_flag!Object

Reset loader state (specs only). Does not undefine FactoryBot factories.



31
32
33
# File 'lib/jumbotron/testing.rb', line 31

def reset_factories_loaded_flag!
  @factories_loaded = false
end