Sha256: e13533bdb26b36e4ae0011499a8a8d412256a04eac3dee600cc486306c7fd49a

Contents?: true

Size: 1.22 KB

Versions: 3

Compression:

Stored size: 1.22 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: @event.payload.issue.html_url
        }
      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: @event.payload.comment.html_url
        }
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
octospy-0.0.3 lib/octospy/parser/issue.rb
octospy-0.0.2 lib/octospy/parser/issue.rb
octospy-0.0.1 lib/octospy/parser/issue.rb