Sha256: 3b298bd58df7168e469432958e8eff4540a413c1e95baa8d3d5ee6555da67d0d

Contents?: true

Size: 948 Bytes

Versions: 8

Compression:

Stored size: 948 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_gems_utils/gem'
require 'eac_ruby_utils/core_ext'
require 'eac_ruby_utils/on_clean_ruby_environment'

module Avm
  module Ruby
    class Rubocop
      def gemfile_rubocop_command
        return nil unless rubocop_gemfile?

        rubocop_command_by_gemfile_path(mygem.root)
      end

      def rubocop_command_by_gemfile_path(path)
        ::EacRubyGemsUtils::Gem.new(path).bundle('exec', 'rubocop')
      end

      def rubocop_gemfile?
        return false unless mygem.present?

        mygem.bundle('install').execute!
        mygem.gemfile_lock_gem_version('rubocop').present?
      end

      private

      def mygem_uncached
        find_gem(::Pathname.new(base_path).expand_path)
      end

      def find_gem(path)
        r = ::EacRubyGemsUtils::Gem.new(path)
        return r if r.gemfile_path.exist?
        return find_gem(path.dirname) unless path.root?
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
avm-tools-0.50.0 lib/avm/ruby/rubocop/_gemfile.rb
avm-tools-0.49.0 lib/avm/ruby/rubocop/_gemfile.rb
avm-tools-0.48.0 lib/avm/ruby/rubocop/_gemfile.rb
avm-tools-0.47.0 lib/avm/ruby/rubocop/_gemfile.rb
avm-tools-0.46.0 lib/avm/ruby/rubocop/_gemfile.rb
avm-tools-0.45.0 lib/avm/ruby/rubocop/_gemfile.rb
avm-tools-0.44.2 lib/avm/ruby/rubocop/_gemfile.rb
avm-tools-0.44.1 lib/avm/ruby/rubocop/_gemfile.rb