# frozen_string_literal: true

ENV = 'test'

require 'bundler/setup'

require 'warning'

# Ignore all warnings in Gem dependencies Gem.path.each { |path| Warning.ignore(//, path) }

require 'dotenv' require 'test/unit' require 'contest' require 'rack/test'

require_relative 'support/rack_helpers' require_relative '../app'

Dotenv.load

module Test

module Unit
  class TestCase
    # Syntactic sugar for defining a memoized helper method.
    #
    def self.let(name, &block)
      ivar = "@#{name}"
      class_eval do
        define_method(name) do
          if instance_variable_defined?(ivar)
            instance_variable_get(ivar)
          else
            value = instance_eval(&block)
            instance_variable_set(ivar, value)
          end
        end
      end
    end
  end
end

end

module Rack

module Test
  class TestCase < ::Test::Unit::TestCase
    include RackHelpers
  end
end

end