Sha256: a503da219a81a6ddde369cfe490ece3efabea921c0e90c7b2233a0e305608c7c
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
# typed: strict # frozen_string_literal: true module RubyLsp module DependencyDetector class << self extend T::Sig sig { returns(String) } def detected_formatter # NOTE: Intentionally no $ at end, since we want to match rubocop-shopify, etc. if direct_dependency?(/^rubocop/) "rubocop" elsif direct_dependency?(/^syntax_tree$/) "syntax_tree" else "none" end end sig { returns(String) } def detected_test_library if direct_dependency?(/^minitest/) "minitest" elsif direct_dependency?(/^test-unit/) "test-unit" elsif direct_dependency?(/^rspec/) "rspec" else warn("WARNING: No test library detected. Assuming minitest.") "minitest" end end sig { params(gem_pattern: Regexp).returns(T::Boolean) } def direct_dependency?(gem_pattern) Bundler.locked_gems.dependencies.keys.grep(gem_pattern).any? end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ruby-lsp-0.6.1 | lib/ruby_lsp/requests/support/dependency_detector.rb |
ruby-lsp-0.6.0 | lib/ruby_lsp/requests/support/dependency_detector.rb |