camille 0.5.6 → 0.5.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/Gemfile.lock +1 -1
- data/lib/camille/controller.rb +17 -2
- data/lib/camille/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ff47e3a7fdcb5ef28cca7bc5ce3989900c82d7eb0d94af77a00e0b0c4ac9b3d
|
4
|
+
data.tar.gz: 7885520d31b5b0a4f339cc24e5993ea1d8e1d637029a018b5dcb144060e72965
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5c990d3326e3271092647bd2ccdbc9ddf213e0f6200c872f0d398c4fb5306670c7e9993e4e48c82dab84a97ea4a8b3200ad100475c4a9243758e94ea211df681
|
7
|
+
data.tar.gz: c21e9542119b194dac81e446574c582fcf16a98a7fbeaeeba33e083518b3070b826a4db20596ff22fb5b18f1b8e64161056e10f71309a3309ab3213c8da9ba4d
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 0.5.7
|
4
|
+
|
5
|
+
### Added
|
6
|
+
|
7
|
+
* Camille::Controller::MissingRenderError will now be raised if `render json:` is missing in action body
|
8
|
+
* ActionController::MissingExactTemplate is re-raised as Camille::Controller::MissingRenderError
|
9
|
+
|
3
10
|
## 0.5.6
|
4
11
|
|
5
12
|
### Added
|
data/Gemfile.lock
CHANGED
data/lib/camille/controller.rb
CHANGED
@@ -2,6 +2,7 @@ module Camille
|
|
2
2
|
module Controller
|
3
3
|
class TypeError < ::StandardError; end
|
4
4
|
class ArgumentError < ::ArgumentError; end
|
5
|
+
class MissingRenderError < ::StandardError; end
|
5
6
|
|
6
7
|
def camille_schema
|
7
8
|
@camille_schema ||= Camille::Loader.controller_name_to_schema_map[self.class.name]
|
@@ -24,6 +25,7 @@ module Camille
|
|
24
25
|
if transformed.is_a? Hash
|
25
26
|
transformed.deep_transform_keys!{|k| k.to_s.camelize(:lower)}
|
26
27
|
end
|
28
|
+
@camille_rendered = true
|
27
29
|
super(json: transformed)
|
28
30
|
end
|
29
31
|
else
|
@@ -37,12 +39,25 @@ module Camille
|
|
37
39
|
def process_action(*)
|
38
40
|
Camille::Loader.check_and_raise_exception
|
39
41
|
if endpoint = camille_endpoint
|
40
|
-
|
41
|
-
|
42
|
+
begin
|
43
|
+
params.deep_transform_keys!{|key| key.to_s.underscore}
|
44
|
+
result = super
|
45
|
+
unless @camille_rendered
|
46
|
+
raise_missing_render_error
|
47
|
+
end
|
48
|
+
result
|
49
|
+
rescue ActionController::MissingExactTemplate
|
50
|
+
raise_missing_render_error
|
51
|
+
end
|
42
52
|
else
|
43
53
|
super
|
44
54
|
end
|
45
55
|
end
|
46
56
|
|
57
|
+
private
|
58
|
+
def raise_missing_render_error
|
59
|
+
raise MissingRenderError.new("Expected `render json:` call in controller action body.")
|
60
|
+
end
|
61
|
+
|
47
62
|
end
|
48
63
|
end
|
data/lib/camille/version.rb
CHANGED