1# frozen_string_literal: true
2
3module QA
4  module Scenario
5    module Actable
6      def act(*args, &block)
7        instance_exec(*args, &block)
8      end
9
10      def self.included(base)
11        base.extend(ClassMethods)
12      end
13
14      module ClassMethods
15        def perform
16          yield new if block_given?
17        end
18
19        def act(*args, &block)
20          new.act(*args, &block)
21        end
22      end
23    end
24  end
25end
26