Perl modulinoモデルに従って、モジュール自体と同じソースファイルにモジュールの単体テストを含めようとしています。
#! /usr/bin/env ruby
require 'test/unit'
module Modulino
def modulino_function
return 0
end
end
class ModulinoTest < Test::Unit::TestCase
include Modulino
def test_modulino_function
assert_equal(0, modulino_function)
end
end
これで、このソースファイルを実行する単体テストを実行できます。
ただし、別のスクリプトからそれらを要求/ロードするときにも実行されます。どうすればこれを回避できますか?
この慣習が推奨されない限り、Rubyでこれを達成するためのより慣用的な方法はありますか?