Sha256: 2befad77ffaa8e0f48d362f5bfd3611139026b63f7b1970b2cefc37ef58651be

Contents?: true

Size: 780 Bytes

Versions: 25

Compression:

Stored size: 780 Bytes

Contents

module KnapsackPro
  class AllocatorBuilder
    def initialize(adapter_class)
      @adapter_class = adapter_class
    end

    def allocator
      KnapsackPro::Allocator.new(
        test_files: test_files,
        ci_node_total: env.ci_node_total,
        ci_node_index: env.ci_node_index,
        repository_adapter: repository_adapter,
      )
    end

    def test_dir
      test_file_pattern.split('/').first
    end

    private

    attr_reader :adapter_class

    def env
      KnapsackPro::Config::Env
    end

    def repository_adapter
      KnapsackPro::RepositoryAdapterInitiator.call
    end

    def test_file_pattern
      TestFilePattern.call(adapter_class)
    end

    def test_files
      KnapsackPro::TestFileFinder.call(test_file_pattern)
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
knapsack_pro-0.17.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.16.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.15.2 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.15.1 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.15.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.14.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.13.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.12.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.11.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.10.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.9.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.8.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.7.2 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.7.1 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.7.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.6.1 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.6.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.5.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.4.0 lib/knapsack_pro/allocator_builder.rb
knapsack_pro-0.3.0 lib/knapsack_pro/allocator_builder.rb