Module: TestBench::Fixture::Build
- Defined in:
- lib/test_bench/fixture/build.rb
Constant Summary collapse
- Error =
::Class.new(RuntimeError)
Class Method Summary collapse
Class Method Details
.assure_fixture(fixture_class) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/test_bench/fixture/build.rb', line 26 def self.assure_fixture(fixture_class) is_class = fixture_class.instance_of?(::Class) if not is_class raise Error, "Not a class (Class: #{fixture_class})" end is_fixture_class = fixture_class.included_modules.include?(Fixture) if not is_fixture_class raise Error, "Not a fixture class (Class: #{fixture_class})" end end |
.call(fixture_class, test_session: nil) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/test_bench/fixture/build.rb', line 6 def self.call(fixture_class, *, test_session: nil, **, &) assure_fixture(fixture_class) if fixture_class.respond_to?(:build) constructor = :build else constructor = :new end fixture = fixture_class.public_send(constructor, *, **, &) Session.configure( fixture, session: test_session, attr_name: :test_session ) fixture end |