Sha256: 43cfc7dd882958ce5b0ac11b053aa2582e1866c2b6e262dce723ce048f57bb8d

Contents?: true

Size: 475 Bytes

Versions: 5

Compression:

Stored size: 475 Bytes

Contents

module Cp8Cli
  class PullRequestTitle
    def initialize(title, prefixes: [])
      @title = title
      @prefixes = Array(*prefixes)
    end

    def run
      title_with_prefixes.presence
    end

    private

      attr_reader :title, :prefixes

      def title_with_prefixes
        "#{prefixes_to_text} #{title}".strip
      end


      def prefixes_to_text
        prefixes.map do |prefix|
          "[#{prefix.to_s.upcase}]"
        end.join(" ")
      end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
cp8_cli-8.2.1 lib/cp8_cli/pull_request_title.rb
cp8_cli-8.2.0 lib/cp8_cli/pull_request_title.rb
cp8_cli-8.1.0 lib/cp8_cli/pull_request_title.rb
cp8_cli-8.0.1 lib/cp8_cli/pull_request_title.rb
cp8_cli-8.0.0 lib/cp8_cli/pull_request_title.rb