Read about our upcoming Code of Conduct on this issue

issue.rb 752 Bytes
Newer Older
1
2
3
4
5
6
7
8
9
module Bitbucket
  module Representation
    class Issue < Representation::Base
      CLOSED_STATUS = %w(resolved invalid duplicate wontfix closed).freeze

      def iid
        raw['id']
      end

10
11
12
13
      def kind
        raw['kind']
      end

14
      def author
15
        raw.dig('reporter', 'username')
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
      end

      def description
        raw.dig('content', 'raw')
      end

      def state
        closed? ? 'closed' : 'opened'
      end

      def title
        raw['title']
      end

      def created_at
        raw['created_on']
      end

      def updated_at
        raw['edited_on']
      end

      def to_s
        iid
      end

      private

      def closed?
        CLOSED_STATUS.include?(raw['state'])
      end
    end
  end
end