committee 2.0.0.pre6 → 2.0.0.pre7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d9c150399d562ad7e8daafbf27c82044a2e3c639
4
- data.tar.gz: f2879d489c219d68a9191c9ce7ce31972107334e
3
+ metadata.gz: 5e47c09e8ea8d73d5c06992555c2c02671be06ac
4
+ data.tar.gz: c3671183b4ccbf5d6b69bcd89a74c8828a84e7f9
5
5
  SHA512:
6
- metadata.gz: a019bde4a85727e0bbb676376ece423d4731645bb1a49309f57d178c7bd0eac11049acef972923b7907f2cf3e331c84b968a784fc3d24084a8c9e73db36f0817
7
- data.tar.gz: dcb6b47b74931ea684c6e9f92004923e09f72755be7abdfb9381cf1b457286f44b02c6fd3741902901aa2843cadac9b8a984d336d25b931ec3f9b0c92e11a5cc
6
+ metadata.gz: c51f69cf118128c3bf0f8f3df13a89d282a8a997a3ebdedb84c579ebad3fbe773471e0f8e1ad025631774d229f854df3bd38863e32ea78a99daf9bb70f416559
7
+ data.tar.gz: 50265b73bee7f7ef9f53e4b412ac2b9b85dae0733c7a5a4d30bafeee863e56d8a86a6f578e7154866c53d475a9d42afa6f393430461bfa22308a17cd427e2bcc
@@ -73,19 +73,19 @@ module Committee::Middleware
73
73
 
74
74
  @app.call(request.env)
75
75
  elsif @strict
76
- raise Committee::NotFound
76
+ raise Committee::NotFound, "That request method and path combination isn't defined."
77
77
  else
78
78
  @app.call(request.env)
79
79
  end
80
80
  rescue Committee::BadRequest, Committee::InvalidRequest
81
81
  raise if @raise
82
82
  @error_class.new(400, :bad_request, $!.message).render
83
- rescue Committee::NotFound
83
+ rescue Committee::NotFound => e
84
84
  raise if @raise
85
85
  @error_class.new(
86
86
  404,
87
87
  :not_found,
88
- "That request method and path combination isn't defined."
88
+ e.message
89
89
  ).render
90
90
  rescue JSON::ParserError
91
91
  raise Committee::InvalidRequest if @raise
@@ -37,8 +37,8 @@ module Committee
37
37
  raise e unless e.message =~ /invalid value for Float/
38
38
  end
39
39
  when "boolean"
40
- coerced[k] = true if original_val == "true"
41
- coerced[k] = false if original_val == "false"
40
+ coerced[k] = true if original_val == "true" || original_val == "1"
41
+ coerced[k] = false if original_val == "false" || original_val == "0"
42
42
  end
43
43
  break if coerced.key?(k)
44
44
  end
@@ -89,8 +89,8 @@ describe Committee::Drivers::OpenAPI2 do
89
89
 
90
90
  schema = @driver.parse(schema_data)
91
91
  link = schema.routes['GET'][0][1]
92
- assert_equal nil, link.status_success
93
- assert_equal nil, link.target_schema
92
+ assert_nil link.status_success
93
+ assert_nil link.target_schema
94
94
  end
95
95
 
96
96
  it "refuses to parse other version of OpenAPI" do
@@ -203,7 +203,7 @@ describe Committee::Drivers::OpenAPI2::ParameterSchemaBuilder do
203
203
  }
204
204
  schema, schema_data = call(data)
205
205
 
206
- assert_equal nil, schema_data
206
+ assert_nil schema_data
207
207
  assert_equal ["limit"], schema.properties.keys
208
208
  assert_equal [], schema.required
209
209
  assert_equal ["integer"], schema.properties["limit"].type
@@ -220,7 +220,7 @@ describe Committee::Drivers::OpenAPI2::ParameterSchemaBuilder do
220
220
  }
221
221
  schema, schema_data = call(data)
222
222
 
223
- assert_equal nil, schema_data
223
+ assert_nil schema_data
224
224
  assert_equal ["limit"], schema.required
225
225
  end
226
226
 
@@ -238,7 +238,7 @@ describe Committee::Drivers::OpenAPI2::ParameterSchemaBuilder do
238
238
  }
239
239
  schema, schema_data = call(data)
240
240
 
241
- assert_equal nil, schema_data
241
+ assert_nil schema_data
242
242
  assert_equal ["array"], schema.properties["tags"].type
243
243
  assert_equal({ "type" => "string" }, schema.properties["tags"].items)
244
244
  end
@@ -257,7 +257,7 @@ describe Committee::Drivers::OpenAPI2::ParameterSchemaBuilder do
257
257
  }
258
258
  schema, schema_data = call(data)
259
259
 
260
- assert_equal nil, schema
260
+ assert_nil schema
261
261
  assert_equal({ "$ref" => "#/definitions/foo" }, schema_data)
262
262
  end
263
263
 
@@ -89,7 +89,7 @@ describe Committee::ResponseGenerator do
89
89
 
90
90
  link.target_schema.type = ["null"]
91
91
  data, _schema = Committee::ResponseGenerator.new.call(link)
92
- assert_equal nil, data
92
+ assert_nil data
93
93
 
94
94
  link.target_schema.type = ["string"]
95
95
  data, _schema = Committee::ResponseGenerator.new.call(link)
@@ -23,6 +23,10 @@ describe Committee::StringParamsCoercer do
23
23
  assert_equal({"deleted" => true}, call(data))
24
24
  data = {"deleted" => "false"}
25
25
  assert_equal({"deleted" => false}, call(data))
26
+ data = {"deleted" => "1"}
27
+ assert_equal({"deleted" => true}, call(data))
28
+ data = {"deleted" => "0"}
29
+ assert_equal({"deleted" => false}, call(data))
26
30
  end
27
31
 
28
32
  it "skips invalid values for boolean param" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: committee
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.pre6
4
+ version: 2.0.0.pre7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brandur
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-02-01 00:00:00.000000000 Z
12
+ date: 2017-03-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json_schema