メインコンテンツまでスキップ

--require オプション

--require (または -r) オプションを使用して、実行する前に読み込むファイルを指定します。

--require オプションの使用方法

以下の内容を持つ "logging_formatter.rb" という名前のファイルがあるとします:

require "rspec/core/formatters/base_text_formatter"
require 'delegate'

class LoggingFormatter < RSpec::Core::Formatters::BaseTextFormatter
RSpec::Core::Formatters.register self, :dump_summary

def initialize(output)
super LoggingIO.new(output)
end

class LoggingIO < SimpleDelegator
def initialize(output)
@file = File.new('rspec.log', 'w')
super
end

def puts(*args)
[@file, __getobj__].each { |out| out.puts(*args) }
end

def close
@file.close
end
end
end

また、以下の内容を持つ "spec/example_spec.rb" という名前のファイルもあるとします:

RSpec.describe "an embarrassing situation" do
it "happens to everyone" do
end
end

rspec --require ./logging_formatter.rb --format LoggingFormatter を実行すると:

出力には "1 example, 0 failures" が含まれるはずです。

さらに、"rspec.log" ファイルには "1 example, 0 failures" が含まれるはずです。

また、終了ステータスは 0 であるはずです。