rspec_jsonapi_serializer 1.2.1 → 1.3.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.
- checksums.yaml +4 -4
- data/lib/rspec_jsonapi_serializer/matchers/association_matcher.rb +9 -18
- data/lib/rspec_jsonapi_serializer/matchers/association_matchers/id_method_name_matcher.rb +7 -7
- data/lib/rspec_jsonapi_serializer/matchers/association_matchers/object_method_name_matcher.rb +47 -0
- data/lib/rspec_jsonapi_serializer/matchers/association_matchers/serializer_matcher.rb +6 -6
- data/lib/rspec_jsonapi_serializer/matchers/base.rb +22 -2
- data/lib/rspec_jsonapi_serializer/matchers/belong_to_matcher.rb +6 -10
- data/lib/rspec_jsonapi_serializer/matchers/have_attribute_matcher.rb +4 -22
- data/lib/rspec_jsonapi_serializer/matchers/have_attribute_matchers/as_matcher.rb +5 -15
- data/lib/rspec_jsonapi_serializer/matchers/have_id_matcher.rb +1 -1
- data/lib/rspec_jsonapi_serializer/matchers/have_link_matcher.rb +4 -22
- data/lib/rspec_jsonapi_serializer/matchers/have_link_matchers/as_matcher.rb +5 -15
- data/lib/rspec_jsonapi_serializer/matchers/have_many_matcher.rb +6 -10
- data/lib/rspec_jsonapi_serializer/matchers/have_meta_matcher.rb +4 -22
- data/lib/rspec_jsonapi_serializer/matchers/have_meta_matchers/as_matcher.rb +4 -15
- data/lib/rspec_jsonapi_serializer/matchers/have_one_matcher.rb +6 -10
- data/lib/rspec_jsonapi_serializer/matchers/have_type_matcher.rb +1 -1
- data/lib/rspec_jsonapi_serializer/version.rb +1 -1
- metadata +7 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a01005a800b62bc1790bef3c0b41d7f39528016cbc3f44255100d60c06f6e3f7
|
4
|
+
data.tar.gz: 6870f0d87b139a4e50bedabc2af25faae9a9aa10918ee20cf7a31947b57ecb3e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b3de4e1e8b9253c30fd625113d0633e70a175546c071c413164af646fceb3785bcd1bb0c310e47f0b91162f48d0a7c989807cc32e13754b4376d89ecdebb195d
|
7
|
+
data.tar.gz: b65538587e22e77df17ef8acaca5694ca9212b7827e9e8ec35dcf4583b860f6ca287396b92bdb01a88aa623f7fabe520c76ff95036c8efb22351f8453e74c771
|
@@ -3,6 +3,7 @@
|
|
3
3
|
require "rspec_jsonapi_serializer/matchers/base"
|
4
4
|
require "rspec_jsonapi_serializer/matchers/association_matchers/serializer_matcher"
|
5
5
|
require "rspec_jsonapi_serializer/matchers/association_matchers/id_method_name_matcher"
|
6
|
+
require "rspec_jsonapi_serializer/matchers/association_matchers/object_method_name_matcher"
|
6
7
|
require "rspec_jsonapi_serializer/metadata/relationships"
|
7
8
|
|
8
9
|
module RSpecJSONAPISerializer
|
@@ -33,32 +34,22 @@ module RSpecJSONAPISerializer
|
|
33
34
|
self
|
34
35
|
end
|
35
36
|
|
36
|
-
def
|
37
|
-
|
37
|
+
def object_method_name(value)
|
38
|
+
add_submatcher AssociationMatchers::ObjectMethodNameMatcher.new(value, expected)
|
38
39
|
|
39
|
-
|
40
|
-
end
|
41
|
-
|
42
|
-
def failure_message
|
43
|
-
"Expected #{expectation}"
|
40
|
+
self
|
44
41
|
end
|
45
42
|
|
46
|
-
def
|
47
|
-
"
|
43
|
+
def main_failure_message
|
44
|
+
[expected_message, actual_message].compact.join(", ")
|
48
45
|
end
|
49
46
|
|
50
47
|
private
|
51
48
|
|
52
49
|
attr_reader :relationship_matcher, :relationship_type
|
53
50
|
|
54
|
-
def
|
55
|
-
|
56
|
-
|
57
|
-
submatchers_expectations = failing_submatchers.map do |submatcher|
|
58
|
-
"(#{submatcher.expectation})"
|
59
|
-
end.compact.join(", ")
|
60
|
-
|
61
|
-
[expectation, submatchers_expectations].reject(&:nil?).reject(&:empty?).join(" ")
|
51
|
+
def expected_message
|
52
|
+
"expected #{serializer_name} to #{association_message} #{expected}"
|
62
53
|
end
|
63
54
|
|
64
55
|
def relationship_matches?
|
@@ -70,7 +61,7 @@ module RSpecJSONAPISerializer
|
|
70
61
|
end
|
71
62
|
|
72
63
|
def association_message
|
73
|
-
relationship_matcher.to_s.split(
|
64
|
+
relationship_matcher.to_s.split('_')
|
74
65
|
end
|
75
66
|
|
76
67
|
def actual
|
@@ -9,7 +9,7 @@ module RSpecJSONAPISerializer
|
|
9
9
|
def initialize(value, relationship_target)
|
10
10
|
super(value)
|
11
11
|
|
12
|
-
@relationship_target
|
12
|
+
@relationship_target = relationship_target
|
13
13
|
end
|
14
14
|
|
15
15
|
def matches?(serializer_instance)
|
@@ -18,18 +18,18 @@ module RSpecJSONAPISerializer
|
|
18
18
|
actual == expected
|
19
19
|
end
|
20
20
|
|
21
|
-
def
|
22
|
-
"
|
23
|
-
end
|
24
|
-
|
25
|
-
def expectation
|
26
|
-
[ "with id method name #{expected}", actual_message ].compact.join(", ")
|
21
|
+
def main_failure_message
|
22
|
+
[expected_message, actual_message].compact.join(", ")
|
27
23
|
end
|
28
24
|
|
29
25
|
private
|
30
26
|
|
31
27
|
attr_reader :relationship_target
|
32
28
|
|
29
|
+
def expected_message
|
30
|
+
"expected #{serializer_name} to use #{expected} as id_method_name for #{relationship_target}"
|
31
|
+
end
|
32
|
+
|
33
33
|
def actual_message
|
34
34
|
actual ? "got #{actual} instead" : nil
|
35
35
|
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "rspec_jsonapi_serializer/metadata/relationships"
|
4
|
+
|
5
|
+
module RSpecJSONAPISerializer
|
6
|
+
module Matchers
|
7
|
+
module AssociationMatchers
|
8
|
+
class ObjectMethodNameMatcher < Base
|
9
|
+
def initialize(value, relationship_target)
|
10
|
+
super(value)
|
11
|
+
|
12
|
+
@relationship_target = relationship_target
|
13
|
+
end
|
14
|
+
|
15
|
+
def matches?(serializer_instance)
|
16
|
+
@serializer_instance = serializer_instance
|
17
|
+
|
18
|
+
actual == expected
|
19
|
+
end
|
20
|
+
|
21
|
+
def main_failure_message
|
22
|
+
[expected_message, actual_message].compact.join(", ")
|
23
|
+
end
|
24
|
+
|
25
|
+
private
|
26
|
+
|
27
|
+
attr_reader :relationship_target
|
28
|
+
|
29
|
+
def expected_message
|
30
|
+
"expected #{serializer_name} to use #{expected} as object_method_name for #{relationship_target}"
|
31
|
+
end
|
32
|
+
|
33
|
+
def actual_message
|
34
|
+
actual ? "got #{actual} instead" : nil
|
35
|
+
end
|
36
|
+
|
37
|
+
def actual
|
38
|
+
metadata.relationship(relationship_target).object_method_name
|
39
|
+
end
|
40
|
+
|
41
|
+
def metadata
|
42
|
+
Metadata::Relationships.new(serializer_instance)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -18,18 +18,18 @@ module RSpecJSONAPISerializer
|
|
18
18
|
actual == expected
|
19
19
|
end
|
20
20
|
|
21
|
-
def
|
22
|
-
"
|
23
|
-
end
|
24
|
-
|
25
|
-
def expectation
|
26
|
-
[ "with serializer #{expected}", actual_message ].compact.join(", ")
|
21
|
+
def main_failure_message
|
22
|
+
[expected_message, actual_message].compact.join(", ")
|
27
23
|
end
|
28
24
|
|
29
25
|
private
|
30
26
|
|
31
27
|
attr_reader :relationship_target
|
32
28
|
|
29
|
+
def expected_message
|
30
|
+
"expected #{serializer_name} to use #{expected} as serializer for #{relationship_target}"
|
31
|
+
end
|
32
|
+
|
33
33
|
def actual_message
|
34
34
|
actual ? "got #{actual} instead" : nil
|
35
35
|
end
|
@@ -13,17 +13,27 @@ module RSpecJSONAPISerializer
|
|
13
13
|
end
|
14
14
|
|
15
15
|
def failure_message
|
16
|
-
|
16
|
+
([main_failure_message] + submatcher_failure_messages).compact.join("\n")
|
17
17
|
end
|
18
18
|
|
19
19
|
def failure_message_when_negated
|
20
|
-
|
20
|
+
([main_failure_message_when_negated] + submatcher_failure_messages_when_negated)
|
21
|
+
.compact
|
22
|
+
.join("\n")
|
21
23
|
end
|
22
24
|
|
23
25
|
protected
|
24
26
|
|
25
27
|
attr_reader :expected, :serializer_instance, :submatchers
|
26
28
|
|
29
|
+
def main_failure_message
|
30
|
+
raise NotImplementedError
|
31
|
+
end
|
32
|
+
|
33
|
+
def main_failure_message_when_negated
|
34
|
+
raise NotImplementedError
|
35
|
+
end
|
36
|
+
|
27
37
|
def add_submatcher(submatcher)
|
28
38
|
submatchers << submatcher
|
29
39
|
end
|
@@ -40,6 +50,16 @@ module RSpecJSONAPISerializer
|
|
40
50
|
serializer_instance.class.name
|
41
51
|
end
|
42
52
|
|
53
|
+
private
|
54
|
+
|
55
|
+
def submatcher_failure_messages
|
56
|
+
failing_submatchers.map(&:failure_message)
|
57
|
+
end
|
58
|
+
|
59
|
+
def submatcher_failure_messages_when_negated
|
60
|
+
failing_submatchers.map(&:failure_message_when_negated)
|
61
|
+
end
|
62
|
+
|
43
63
|
def failing_submatchers
|
44
64
|
@failing_submatchers ||= submatchers.select do |submatcher|
|
45
65
|
!submatcher.matches?(serializer_instance)
|
@@ -17,20 +17,16 @@ module RSpecJSONAPISerializer
|
|
17
17
|
association_matcher.id_method_name(value)
|
18
18
|
end
|
19
19
|
|
20
|
-
def
|
21
|
-
association_matcher.
|
22
|
-
end
|
23
|
-
|
24
|
-
def description
|
25
|
-
association_matcher.description
|
20
|
+
def object_method_name(value)
|
21
|
+
association_matcher.object_method_name(value)
|
26
22
|
end
|
27
23
|
|
28
|
-
def
|
29
|
-
association_matcher.
|
24
|
+
def serializer(value)
|
25
|
+
association_matcher.serializer(value)
|
30
26
|
end
|
31
27
|
|
32
|
-
def
|
33
|
-
association_matcher.
|
28
|
+
def main_failure_message
|
29
|
+
association_matcher.main_failure_message
|
34
30
|
end
|
35
31
|
|
36
32
|
private
|
@@ -19,35 +19,17 @@ module RSpecJSONAPISerializer
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def as_nil
|
22
|
-
|
23
|
-
end
|
24
|
-
|
25
|
-
def description
|
26
|
-
description = "have attribute #{expected}"
|
22
|
+
add_submatcher HaveAttributeMatchers::AsMatcher.new(expected, nil)
|
27
23
|
|
28
|
-
|
29
|
-
end
|
30
|
-
|
31
|
-
def failure_message
|
32
|
-
"Expected #{expectation}."
|
24
|
+
self
|
33
25
|
end
|
34
26
|
|
35
|
-
def
|
36
|
-
"
|
27
|
+
def main_failure_message
|
28
|
+
"expected #{serializer_name} to have attribute #{expected}." unless has_attribute?
|
37
29
|
end
|
38
30
|
|
39
31
|
private
|
40
32
|
|
41
|
-
def expectation
|
42
|
-
expectation = "#{serializer_name} to have attribute #{expected}"
|
43
|
-
|
44
|
-
submatchers_expectations = failing_submatchers.map do |submatcher|
|
45
|
-
"(#{submatcher.expectation})"
|
46
|
-
end.compact.join(", ")
|
47
|
-
|
48
|
-
[expectation, submatchers_expectations].reject(&:nil?).reject(&:empty?).join(" ")
|
49
|
-
end
|
50
|
-
|
51
33
|
def attributes
|
52
34
|
@attributes ||= serializer_instance.class.try(:attributes_to_serialize) || {}
|
53
35
|
end
|
@@ -18,30 +18,20 @@ module RSpecJSONAPISerializer
|
|
18
18
|
actual == expected
|
19
19
|
end
|
20
20
|
|
21
|
-
def
|
22
|
-
"
|
23
|
-
end
|
24
|
-
|
25
|
-
def expectation
|
26
|
-
[ "as #{expected_to_string}", actual_message ].compact.join(", ")
|
21
|
+
def failure_message
|
22
|
+
[expected_message, actual_message].compact.join(", ")
|
27
23
|
end
|
28
24
|
|
29
25
|
private
|
30
26
|
|
31
27
|
attr_reader :attribute
|
32
28
|
|
33
|
-
def
|
34
|
-
|
29
|
+
def expected_message
|
30
|
+
"expected #{serializer_instance.class.name} to serialize #{attribute} as #{expected}"
|
35
31
|
end
|
36
32
|
|
37
33
|
def actual_message
|
38
|
-
"got #{
|
39
|
-
end
|
40
|
-
|
41
|
-
def value_to_string(value)
|
42
|
-
return 'nil' if value.nil?
|
43
|
-
|
44
|
-
value.to_s
|
34
|
+
"got #{actual.nil? ? 'nil' : actual} instead" if attributes.has_key?(attribute)
|
45
35
|
end
|
46
36
|
|
47
37
|
def actual
|
@@ -19,35 +19,17 @@ module RSpecJSONAPISerializer
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def as_nil
|
22
|
-
|
23
|
-
end
|
24
|
-
|
25
|
-
def description
|
26
|
-
description = "have link #{expected}"
|
22
|
+
add_submatcher HaveLinkMatchers::AsMatcher.new(expected, nil)
|
27
23
|
|
28
|
-
|
29
|
-
end
|
30
|
-
|
31
|
-
def failure_message
|
32
|
-
"Expected #{expectation}."
|
24
|
+
self
|
33
25
|
end
|
34
26
|
|
35
|
-
def
|
36
|
-
"
|
27
|
+
def main_failure_message
|
28
|
+
"expected #{serializer_name} to have link #{expected}." unless has_link?
|
37
29
|
end
|
38
30
|
|
39
31
|
private
|
40
32
|
|
41
|
-
def expectation
|
42
|
-
expectation = "#{serializer_name} to have link #{expected}"
|
43
|
-
|
44
|
-
submatchers_expectations = failing_submatchers.map do |submatcher|
|
45
|
-
"(#{submatcher.expectation})"
|
46
|
-
end.compact.join(", ")
|
47
|
-
|
48
|
-
[expectation, submatchers_expectations].reject(&:nil?).reject(&:empty?).join(" ")
|
49
|
-
end
|
50
|
-
|
51
33
|
def has_link?
|
52
34
|
links.has_key?(expected)
|
53
35
|
end
|
@@ -18,30 +18,20 @@ module RSpecJSONAPISerializer
|
|
18
18
|
actual == expected
|
19
19
|
end
|
20
20
|
|
21
|
-
def
|
22
|
-
"
|
23
|
-
end
|
24
|
-
|
25
|
-
def expectation
|
26
|
-
[ "as #{expected_to_string}", actual_message ].compact.join(", ")
|
21
|
+
def failure_message
|
22
|
+
[expected_message, actual_message].compact.join(", ")
|
27
23
|
end
|
28
24
|
|
29
25
|
private
|
30
26
|
|
31
27
|
attr_reader :link
|
32
28
|
|
33
|
-
def
|
34
|
-
|
29
|
+
def expected_message
|
30
|
+
"expected #{serializer_instance.class.name} to serialize link #{link} as #{expected}"
|
35
31
|
end
|
36
32
|
|
37
33
|
def actual_message
|
38
|
-
"got #{
|
39
|
-
end
|
40
|
-
|
41
|
-
def value_to_string(value)
|
42
|
-
return 'nil' if value.nil?
|
43
|
-
|
44
|
-
value.to_s
|
34
|
+
"got #{actual.nil? ? 'nil' : actual} instead" if links.has_key?(link)
|
45
35
|
end
|
46
36
|
|
47
37
|
def actual
|
@@ -17,20 +17,16 @@ module RSpecJSONAPISerializer
|
|
17
17
|
association_matcher.id_method_name(value)
|
18
18
|
end
|
19
19
|
|
20
|
-
def
|
21
|
-
association_matcher.
|
22
|
-
end
|
23
|
-
|
24
|
-
def description
|
25
|
-
association_matcher.description
|
20
|
+
def object_method_name(value)
|
21
|
+
association_matcher.object_method_name(value)
|
26
22
|
end
|
27
23
|
|
28
|
-
def
|
29
|
-
association_matcher.
|
24
|
+
def serializer(value)
|
25
|
+
association_matcher.serializer(value)
|
30
26
|
end
|
31
27
|
|
32
|
-
def
|
33
|
-
association_matcher.
|
28
|
+
def main_failure_message
|
29
|
+
association_matcher.main_failure_message
|
34
30
|
end
|
35
31
|
|
36
32
|
private
|
@@ -19,35 +19,17 @@ module RSpecJSONAPISerializer
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def as_nil
|
22
|
-
|
23
|
-
end
|
24
|
-
|
25
|
-
def description
|
26
|
-
description = "serialize meta #{expected}"
|
22
|
+
add_submatcher HaveMetaMatchers::AsMatcher.new(expected, nil)
|
27
23
|
|
28
|
-
|
29
|
-
end
|
30
|
-
|
31
|
-
def failure_message
|
32
|
-
"Expected #{expectation}."
|
24
|
+
self
|
33
25
|
end
|
34
26
|
|
35
|
-
def
|
36
|
-
"
|
27
|
+
def main_failure_message
|
28
|
+
"expected #{serializer_name} to serialize meta #{expected}." unless has_meta?
|
37
29
|
end
|
38
30
|
|
39
31
|
private
|
40
32
|
|
41
|
-
def expectation
|
42
|
-
expectation = "#{serializer_name} to serialize meta #{expected}"
|
43
|
-
|
44
|
-
submatchers_expectations = failing_submatchers.map do |submatcher|
|
45
|
-
"(#{submatcher.expectation})"
|
46
|
-
end.compact.join(", ")
|
47
|
-
|
48
|
-
[expectation, submatchers_expectations].reject(&:nil?).reject(&:empty?).join(" ")
|
49
|
-
end
|
50
|
-
|
51
33
|
def metas
|
52
34
|
@metas ||= serializable_hash.dig(:data, :meta) || {}
|
53
35
|
end
|
@@ -18,33 +18,22 @@ module RSpecJSONAPISerializer
|
|
18
18
|
actual == expected
|
19
19
|
end
|
20
20
|
|
21
|
-
def
|
22
|
-
"
|
23
|
-
end
|
24
|
-
|
25
|
-
def expectation
|
26
|
-
[ "as #{expected_to_string}", actual_message ].compact.join(", ")
|
21
|
+
def failure_message
|
22
|
+
[expected_message, actual_message].compact.join(", ")
|
27
23
|
end
|
28
24
|
|
29
25
|
private
|
30
26
|
|
31
27
|
attr_reader :meta
|
32
28
|
|
33
|
-
def
|
34
|
-
|
29
|
+
def expected_message
|
30
|
+
"expected #{serializer_instance.class.name} to serialize meta #{meta} as #{expected}"
|
35
31
|
end
|
36
32
|
|
37
33
|
def actual_message
|
38
34
|
"got #{actual.nil? ? 'nil' : actual} instead" if metas.has_key?(meta)
|
39
35
|
end
|
40
36
|
|
41
|
-
def value_to_string(value)
|
42
|
-
return 'nil' if value.nil?
|
43
|
-
|
44
|
-
value.to_s
|
45
|
-
end
|
46
|
-
|
47
|
-
|
48
37
|
def actual
|
49
38
|
metas[meta]
|
50
39
|
end
|
@@ -17,20 +17,16 @@ module RSpecJSONAPISerializer
|
|
17
17
|
association_matcher.id_method_name(value)
|
18
18
|
end
|
19
19
|
|
20
|
-
def
|
21
|
-
association_matcher.
|
22
|
-
end
|
23
|
-
|
24
|
-
def description
|
25
|
-
association_matcher.description
|
20
|
+
def object_method_name(value)
|
21
|
+
association_matcher.object_method_name(value)
|
26
22
|
end
|
27
23
|
|
28
|
-
def
|
29
|
-
association_matcher.
|
24
|
+
def serializer(value)
|
25
|
+
association_matcher.serializer(value)
|
30
26
|
end
|
31
27
|
|
32
|
-
def
|
33
|
-
association_matcher.
|
28
|
+
def main_failure_message
|
29
|
+
association_matcher.main_failure_message
|
34
30
|
end
|
35
31
|
|
36
32
|
private
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec_jsonapi_serializer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mateus Cruz
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-05-
|
11
|
+
date: 2023-05-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jsonapi-serializer
|
@@ -35,6 +35,7 @@ files:
|
|
35
35
|
- lib/rspec_jsonapi_serializer/matchers.rb
|
36
36
|
- lib/rspec_jsonapi_serializer/matchers/association_matcher.rb
|
37
37
|
- lib/rspec_jsonapi_serializer/matchers/association_matchers/id_method_name_matcher.rb
|
38
|
+
- lib/rspec_jsonapi_serializer/matchers/association_matchers/object_method_name_matcher.rb
|
38
39
|
- lib/rspec_jsonapi_serializer/matchers/association_matchers/serializer_matcher.rb
|
39
40
|
- lib/rspec_jsonapi_serializer/matchers/base.rb
|
40
41
|
- lib/rspec_jsonapi_serializer/matchers/belong_to_matcher.rb
|
@@ -50,13 +51,13 @@ files:
|
|
50
51
|
- lib/rspec_jsonapi_serializer/matchers/have_type_matcher.rb
|
51
52
|
- lib/rspec_jsonapi_serializer/metadata/relationships.rb
|
52
53
|
- lib/rspec_jsonapi_serializer/version.rb
|
53
|
-
homepage: https://github.com/
|
54
|
+
homepage: https://github.com/mateuscruz/rspec_jsonapi_serializer
|
54
55
|
licenses:
|
55
56
|
- MIT
|
56
57
|
metadata:
|
57
|
-
homepage_uri: https://github.com/
|
58
|
-
source_code_uri: https://github.com/
|
59
|
-
changelog_uri: https://github.com/
|
58
|
+
homepage_uri: https://github.com/mateuscruz/rspec_jsonapi_serializer
|
59
|
+
source_code_uri: https://github.com/mateuscruz/rspec_jsonapi_serializer
|
60
|
+
changelog_uri: https://github.com/mateuscruz/rspec_jsonapi_serializer/blob/main/CHANGELOG.md
|
60
61
|
post_install_message:
|
61
62
|
rdoc_options: []
|
62
63
|
require_paths:
|