Sha256: dee4973bc6f1fa054025a24da5d61961b60d8bf897cedf0e1f4709fe5bd38d82

Contents?: true

Size: 1.37 KB

Versions: 8

Compression:

Stored size: 1.37 KB

Contents

module Octospy
  class Parser
    module Issue
      def parse_issues_event
        body = "#{@event.payload.issue.body}".split_lfbl

        if @event.payload.issue.assignee
          body << "assignee: #{@event.payload.issue.assignee.login}"
        end

        if @event.payload.issue.milestone
          milestone_title = @event.payload.issue.milestone.title
          milestone_state = @event.payload.issue.milestone.state
          body << "milestone: #{milestone_title}[#{milestone_state}]"
        end

        {
          status: "#{@event.payload.action} issue ##{@event.payload.issue.number}",
          title: @event.payload.issue.title,
          body: body,
          link: "#{Octokit.web_endpoint}#{@event.repo.name}/issues/#{@event.payload.issue.number}"
        }
      end

      def parse_issue_comment_event
        if @event.payload.action == 'created'
          status = "commented on issue ##{@event.payload.issue.number}"
          title = @event.payload.issue.title
        else
          status = "#{@event.payload.action} issue comment"
          title = ''
        end

        {
          status: status,
          title: title,
          body: "#{@event.payload.comment.body}".split_lfbl,
          link: "#{Octokit.web_endpoint}#{@event.repo.name}/issues/#{@event.payload.issue.number}#issuecomment-#{@event.payload.comment.id}"
        }
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
octospy-0.2.0 lib/octospy/parser/issue.rb
octospy-0.1.1 lib/octospy/parser/issue.rb
octospy-0.1.0 lib/octospy/parser/issue.rb
octospy-0.0.8 lib/octospy/parser/issue.rb
octospy-0.0.7 lib/octospy/parser/issue.rb
octospy-0.0.6 lib/octospy/parser/issue.rb
octospy-0.0.5 lib/octospy/parser/issue.rb
octospy-0.0.4 lib/octospy/parser/issue.rb