2013-01-18 18:12:16 +01:00
|
|
|
# RM_INFO is set when using Rubymine. In Rubymine, starting SimpleCov is
|
|
|
|
# controlled by running with coverage, so don't explicitly start coverage (and
|
|
|
|
# therefore generate a report) when in Rubymine. This _will_ generate a report
|
|
|
|
# whenever `rake spec` is run.
|
|
|
|
unless ENV['RM_INFO']
|
|
|
|
SimpleCov.start
|
|
|
|
end
|
|
|
|
|
2013-01-18 17:02:04 +01:00
|
|
|
SimpleCov.configure do
|
|
|
|
# ignore this file
|
|
|
|
add_filter '.simplecov'
|
|
|
|
|
|
|
|
#
|
|
|
|
# Changed Files in Git Group
|
|
|
|
# @see http://fredwu.me/post/35625566267/simplecov-test-coverage-for-changed-files-only
|
|
|
|
#
|
|
|
|
|
|
|
|
untracked = `git ls-files --exclude-standard --others`
|
|
|
|
unstaged = `git diff --name-only`
|
|
|
|
staged = `git diff --name-only --cached`
|
|
|
|
all = untracked + unstaged + staged
|
|
|
|
changed_filenames = all.split("\n")
|
|
|
|
|
|
|
|
add_group 'Changed' do |source_file|
|
|
|
|
changed_filenames.detect { |changed_filename|
|
|
|
|
source_file.filename.end_with?(changed_filename)
|
|
|
|
}
|
|
|
|
end
|
|
|
|
|
|
|
|
#
|
|
|
|
# Framework (msf) related groups
|
|
|
|
#
|
|
|
|
|
|
|
|
add_group 'Metasploit Framework', 'lib/msf'
|
|
|
|
add_group 'Metasploit Framework (Base)', 'lib/msf/base'
|
|
|
|
add_group 'Metasploit Framework (Core)', 'lib/msf/core'
|
|
|
|
|
|
|
|
#
|
|
|
|
# Other library groups
|
|
|
|
#
|
|
|
|
|
|
|
|
add_group 'Metasm', 'lib/metasm'
|
|
|
|
add_group 'PacketFu', 'lib/packetfu'
|
|
|
|
add_group 'Rex', 'lib/rex'
|
|
|
|
add_group 'RKelly', 'lib/rkelly'
|
|
|
|
add_group 'Ruby Mysql', 'lib/rbmysql'
|
|
|
|
add_group 'Ruby Postgres', 'lib/postgres'
|
|
|
|
add_group 'SNMP', 'lib/snmp'
|
|
|
|
add_group 'Zip', 'lib/zip'
|
|
|
|
|
|
|
|
#
|
|
|
|
# Specs are reported on to ensure that all examples are being run and all
|
|
|
|
# lets, befores, afters, etc are being used.
|
|
|
|
#
|
|
|
|
|
|
|
|
add_group 'Specs', 'spec'
|
|
|
|
end
|