Commit 7328898f3e99ff0199203f780334f3f3d1e62fef

Authored by Jared Pace
1 parent 3052c8d7
Exists in master and in 1 other branch production

Track resolved state on an error

Showing 2 changed files with 24 additions and 0 deletions   Show diff stats
app/models/error.rb
... ... @@ -7,6 +7,7 @@ class Error
7 7 field :component
8 8 field :action
9 9 field :environment
  10 + field :resolved, :type => Boolean
10 11  
11 12 embeds_many :notices
12 13  
... ... @@ -16,6 +17,14 @@ class Error
16 17 self.where(attrs).first || create(attrs)
17 18 end
18 19  
  20 + def resolve!
  21 + self.update_attributes(:resolved => true)
  22 + end
  23 +
  24 + def unresolved?
  25 + !resolved?
  26 + end
  27 +
19 28 def last_notice_at
20 29 notices.last.try(:created_at)
21 30 end
... ...
spec/models/error_spec.rb
... ... @@ -53,4 +53,19 @@ describe Error do
53 53 end
54 54 end
55 55  
  56 + context "#resolved?" do
  57 + it "should start out as unresolved" do
  58 + error = Error.new
  59 + error.should_not be_resolved
  60 + error.should be_unresolved
  61 + end
  62 +
  63 + it "should be able to be resolved" do
  64 + error = Factory(:error)
  65 + error.should_not be_resolved
  66 + error.resolve!
  67 + error.reload.should be_resolved
  68 + end
  69 + end
  70 +
56 71 end
57 72 \ No newline at end of file
... ...