egregious 0.1.7 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README CHANGED
@@ -1,3 +1,5 @@
1
+ These instructions with some formatting can be found @ http://railsindirection.blogspot.com/2011/09/rails-exception-handling-egregious.html
2
+
1
3
  Egregious is a rails based exception handling gem for well defined http exception handling for json, xml and html.
2
4
 
3
5
  If you have a json or xml api into your rails application, you probably have added your own exception handling to map
data/egregious.gemspec CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |s|
25
25
  s.add_development_dependency "warden"
26
26
  s.add_development_dependency "cancan"
27
27
 
28
- s.add_runtime_dependency "rails", '~> 3.0.1'
28
+ s.add_runtime_dependency "rails", '> 3.0.1'
29
29
  s.add_runtime_dependency "rack"
30
30
  s.add_runtime_dependency "htmlentities"
31
31
 
data/lib/egregious.rb CHANGED
@@ -8,12 +8,13 @@ module Egregious
8
8
  # use these exception to control the code you are throwing from you code
9
9
  # all http statuses have an exception defined for them
10
10
  Rack::Utils::HTTP_STATUS_CODES.each do |key, value|
11
- class_eval "class #{value.gsub(/\s|-/,'')} < StandardError; end"
11
+ class_eval "class #{value.gsub(/\s|-|'/,'')} < StandardError; end"
12
12
  end
13
13
 
14
14
  def self.status_code(status)
15
15
  if status.is_a?(Symbol)
16
- Rack::Utils::HTTP_STATUS_CODES[status] || 500
16
+ key = status.to_s.split("_").map {|e| e.capitalize}.join(" ")
17
+ Rack::Utils::HTTP_STATUS_CODES.invert[key] || 500
17
18
  else
18
19
  status.to_i
19
20
  end
@@ -33,7 +34,7 @@ module Egregious
33
34
  }
34
35
  # all status codes have a exception class defined
35
36
  Rack::Utils::HTTP_STATUS_CODES.each do |key, value|
36
- exception_codes.merge!(eval("Egregious::#{value.gsub(/\s|-/,'')}")=>value.downcase.gsub(/\s|-/, '_').to_sym)
37
+ exception_codes.merge!(eval("Egregious::#{value.gsub(/\s|-|'/,'')}")=>value.downcase.gsub(/\s|-/, '_').to_sym)
37
38
  end
38
39
 
39
40
  if defined?(ActionController)
@@ -1,3 +1,3 @@
1
1
  module Egregious
2
- VERSION = "0.1.7"
2
+ VERSION = "0.2.0"
3
3
  end
@@ -6,6 +6,13 @@ end
6
6
  include Egregious
7
7
 
8
8
  describe Egregious do
9
+
10
+ describe 'status_code' do
11
+ it "should translate Symbol to right HTTP STATUS CODE" do
12
+ status_code(:bad_request).should == 400
13
+ end
14
+ end
15
+
9
16
  describe 'clean_backtrace ' do
10
17
  it "should return nil" do
11
18
  clean_backtrace(Exception.new).should == nil
metadata CHANGED
@@ -1,147 +1,152 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: egregious
3
- version: !ruby/object:Gem::Version
4
- hash: 21
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 1
9
- - 7
10
- version: 0.1.7
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Russell Edens
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-10-28 00:00:00 -04:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2012-09-21 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: rspec
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 0
32
- version: "0"
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
33
22
  type: :development
34
- version_requirements: *id001
35
- - !ruby/object:Gem::Dependency
36
- name: json
37
23
  prerelease: false
38
- requirement: &id002 !ruby/object:Gem::Requirement
39
- none: false
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- hash: 3
44
- segments:
45
- - 0
46
- version: "0"
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: json
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
47
38
  type: :development
48
- version_requirements: *id002
49
- - !ruby/object:Gem::Dependency
50
- name: hpricot
51
39
  prerelease: false
52
- requirement: &id003 !ruby/object:Gem::Requirement
53
- none: false
54
- requirements:
55
- - - ">="
56
- - !ruby/object:Gem::Version
57
- hash: 3
58
- segments:
59
- - 0
60
- version: "0"
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: hpricot
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
61
54
  type: :development
62
- version_requirements: *id003
63
- - !ruby/object:Gem::Dependency
64
- name: warden
65
55
  prerelease: false
66
- requirement: &id004 !ruby/object:Gem::Requirement
67
- none: false
68
- requirements:
69
- - - ">="
70
- - !ruby/object:Gem::Version
71
- hash: 3
72
- segments:
73
- - 0
74
- version: "0"
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: warden
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
75
70
  type: :development
76
- version_requirements: *id004
77
- - !ruby/object:Gem::Dependency
78
- name: cancan
79
71
  prerelease: false
80
- requirement: &id005 !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
83
- - - ">="
84
- - !ruby/object:Gem::Version
85
- hash: 3
86
- segments:
87
- - 0
88
- version: "0"
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: cancan
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
89
86
  type: :development
90
- version_requirements: *id005
91
- - !ruby/object:Gem::Dependency
92
- name: rails
93
87
  prerelease: false
94
- requirement: &id006 !ruby/object:Gem::Requirement
95
- none: false
96
- requirements:
97
- - - ~>
98
- - !ruby/object:Gem::Version
99
- hash: 5
100
- segments:
101
- - 3
102
- - 0
103
- - 1
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: rails
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>'
100
+ - !ruby/object:Gem::Version
104
101
  version: 3.0.1
105
102
  type: :runtime
106
- version_requirements: *id006
107
- - !ruby/object:Gem::Dependency
108
- name: rack
109
103
  prerelease: false
110
- requirement: &id007 !ruby/object:Gem::Requirement
111
- none: false
112
- requirements:
113
- - - ">="
114
- - !ruby/object:Gem::Version
115
- hash: 3
116
- segments:
117
- - 0
118
- version: "0"
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>'
108
+ - !ruby/object:Gem::Version
109
+ version: 3.0.1
110
+ - !ruby/object:Gem::Dependency
111
+ name: rack
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
119
118
  type: :runtime
120
- version_requirements: *id007
121
- - !ruby/object:Gem::Dependency
122
- name: htmlentities
123
119
  prerelease: false
124
- requirement: &id008 !ruby/object:Gem::Requirement
125
- none: false
126
- requirements:
127
- - - ">="
128
- - !ruby/object:Gem::Version
129
- hash: 3
130
- segments:
131
- - 0
132
- version: "0"
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: htmlentities
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
133
134
  type: :runtime
134
- version_requirements: *id008
135
- description: Egregious is a rails based exception handling gem for well defined http exception handling for json, xml and html. Requires Rails 3.x.
136
- email:
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ description: Egregious is a rails based exception handling gem for well defined http
143
+ exception handling for json, xml and html. Requires Rails 3.x.
144
+ email:
137
145
  - rx@voomify.com
138
146
  executables: []
139
-
140
147
  extensions: []
141
-
142
148
  extra_rdoc_files: []
143
-
144
- files:
149
+ files:
145
150
  - .gitignore
146
151
  - Gemfile
147
152
  - README
@@ -153,41 +158,32 @@ files:
153
158
  - spec/egregious_spec.rb
154
159
  - spec/exceptions_spec.rb
155
160
  - spec/spec_helper.rb
156
- has_rdoc: true
157
161
  homepage: http://github.com/voomify/egregious
158
162
  licenses: []
159
-
160
163
  post_install_message:
161
164
  rdoc_options: []
162
-
163
- require_paths:
165
+ require_paths:
164
166
  - lib
165
- required_ruby_version: !ruby/object:Gem::Requirement
167
+ required_ruby_version: !ruby/object:Gem::Requirement
166
168
  none: false
167
- requirements:
168
- - - ">="
169
- - !ruby/object:Gem::Version
170
- hash: 3
171
- segments:
172
- - 0
173
- version: "0"
174
- required_rubygems_version: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - ! '>='
171
+ - !ruby/object:Gem::Version
172
+ version: '0'
173
+ required_rubygems_version: !ruby/object:Gem::Requirement
175
174
  none: false
176
- requirements:
177
- - - ">="
178
- - !ruby/object:Gem::Version
179
- hash: 3
180
- segments:
181
- - 0
182
- version: "0"
175
+ requirements:
176
+ - - ! '>='
177
+ - !ruby/object:Gem::Version
178
+ version: '0'
183
179
  requirements: []
184
-
185
180
  rubyforge_project: egregious
186
- rubygems_version: 1.5.2
181
+ rubygems_version: 1.8.24
187
182
  signing_key:
188
183
  specification_version: 3
189
- summary: Egregious is a rails based exception handling gem for well defined http exception handling for json, xml and html. Requires Rails 3.x.
190
- test_files:
184
+ summary: Egregious is a rails based exception handling gem for well defined http exception
185
+ handling for json, xml and html. Requires Rails 3.x.
186
+ test_files:
191
187
  - spec/egregious_spec.rb
192
188
  - spec/exceptions_spec.rb
193
189
  - spec/spec_helper.rb