File tree Expand file tree Collapse file tree 2 files changed +12
-2
lines changed
lib/active_model/serializer Expand file tree Collapse file tree 2 files changed +12
-2
lines changed Original file line number Diff line number Diff line change @@ -33,7 +33,8 @@ def self.create(resource, options = {})
33
33
end
34
34
35
35
def self . adapter_class ( adapter )
36
- "ActiveModel::Serializer::Adapter::#{ adapter . to_s . classify } " . safe_constantize
36
+ adapter_name = adapter . to_s . classify . sub ( "API" , "Api" )
37
+ "ActiveModel::Serializer::Adapter::#{ adapter_name } " . safe_constantize
37
38
end
38
39
39
40
def fragment_cache ( *args )
@@ -42,7 +43,7 @@ def fragment_cache(*args)
42
43
43
44
private
44
45
45
- def cache_check ( serializer )
46
+ def cache_check ( serializer )
46
47
@cached_serializer = serializer
47
48
@klass = @cached_serializer . class
48
49
if is_cached?
Original file line number Diff line number Diff line change @@ -38,6 +38,15 @@ def test_create_adapter_with_override
38
38
adapter = ActiveModel ::Serializer ::Adapter . create ( @serializer , { adapter : :json_api } )
39
39
assert_equal ActiveModel ::Serializer ::Adapter ::JsonApi , adapter . class
40
40
end
41
+
42
+ def test_inflected_adapter_class_for_known_adapter
43
+ ActiveSupport ::Inflector . inflections ( :en ) { |inflect | inflect . acronym 'API' }
44
+ klass = ActiveModel ::Serializer ::Adapter . adapter_class ( :json_api )
45
+
46
+ ActiveSupport ::Inflector . inflections . acronyms . clear
47
+
48
+ assert_equal ActiveModel ::Serializer ::Adapter ::JsonApi , klass
49
+ end
41
50
end
42
51
end
43
52
end
You can’t perform that action at this time.
0 commit comments