Skip to content

Instantly share code, notes, and snippets.

@rebelweb
Last active May 14, 2021 01:13
Show Gist options
  • Save rebelweb/19b3cb705a8058128579 to your computer and use it in GitHub Desktop.
Save rebelweb/19b3cb705a8058128579 to your computer and use it in GitHub Desktop.
Brakeman/RSpec Inegration
ENV["RAILS_ENV"] ||= 'test'
require 'spec_helper'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'brakeman'
ActiveRecord::Migration.maintain_test_schema!
RSpec.configure do |config|
config.use_transactional_fixtures = true
config.infer_spec_type_from_file_location!
#Use this for a Rails Application
config.after(:suite) {Brakeman.run app_path: "#{Rails.root}", output_files: ['brakeman.html']}
#Use this for a Rails Engine
config.after(:suite) {Brakeman.run app_path: "#{MyEngine::Engine.root}", output_files: ['brakeman.html']}
end
@heliocola
Copy link

If you want to discarded ignored critical warnings, line about the count the serious warnings should be something like:

  serious =res.filtered_warnings.count { |w| w.confidence==0 }

@rebelweb
Copy link
Author

rebelweb commented Mar 3, 2021

@heliocola I haven't done any serious Ruby on Rails development in a couple of years. So this is pretty stale on my end. Thanks for adding info for others who see this thread.

@heliocola
Copy link

heliocola commented Mar 4, 2021

From what I can see that is still one way to do this, so THANK YOU!
There is also a way to run this via CircleCI command bundle exec brakeman.
IMHO: this absolutely aged very, very well!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment