/
review.rb
35 lines (29 loc) · 965 Bytes
/
review.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
module TrackerApi
module Resources
class Review
include Shared::Base
attribute :client
attribute :id, Integer
attribute :story_id, Integer
attribute :project_id, Integer
attribute :review_type_id, Integer
attribute :reviewer_id, Integer
attribute :status, String # (unstarted, in_review, pass, revise)
attribute :created_at, DateTime
attribute :updated_at, DateTime
attribute :kind, String
attribute :review_type, ReviewType
class UpdateRepresenter < Representable::Decorator
include Representable::JSON
property :id
property :review_type_id
property :reviewer_id
property :status
end
def save
raise ArgumentError, 'Cannot update a review with an unknown story_id.' if story_id.nil?
Endpoints::Review.new(client).update(self, UpdateRepresenter.new(Review.new(dirty_attributes)))
end
end
end
end