Class: BundleSafeUpdate::AuditChecker
- Inherits:
-
Object
- Object
- BundleSafeUpdate::AuditChecker
- Defined in:
- lib/bundle_safe_update/audit_checker.rb
Defined Under Namespace
Classes: AuditResult, Vulnerability
Constant Summary collapse
- AUDIT_COMMAND =
%w[bundle audit check --update].freeze
Instance Method Summary collapse
- #audit_available? ⇒ Boolean
- #check ⇒ Object
-
#initialize(executor: nil) ⇒ AuditChecker
constructor
A new instance of AuditChecker.
Constructor Details
#initialize(executor: nil) ⇒ AuditChecker
Returns a new instance of AuditChecker.
13 14 15 |
# File 'lib/bundle_safe_update/audit_checker.rb', line 13 def initialize(executor: nil) @executor = executor || method(:execute_command) end |
Instance Method Details
#audit_available? ⇒ Boolean
24 25 26 27 28 29 30 31 |
# File 'lib/bundle_safe_update/audit_checker.rb', line 24 def audit_available? Bundler.with_unbundled_env do _stdout, _stderr, status = Open3.capture3('bundle', 'audit', '--version') status.success? end rescue Errno::ENOENT false end |
#check ⇒ Object
17 18 19 20 21 22 |
# File 'lib/bundle_safe_update/audit_checker.rb', line 17 def check return unavailable_result unless audit_available? stdout, stderr, status = @executor.call(AUDIT_COMMAND) parse_result(stdout, stderr, status) end |