authlete 1.0.24 → 1.1.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.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/Makefile +40 -0
  4. data/Rakefile +5 -0
  5. data/authlete.gemspec +2 -2
  6. data/lib/authlete.rb +28 -9
  7. data/lib/authlete/api.rb +146 -321
  8. data/lib/authlete/authentication-server.rb +2 -2
  9. data/lib/authlete/exception.rb +14 -15
  10. data/lib/authlete/model/base.rb +30 -0
  11. data/lib/authlete/model/client-extension.rb +17 -119
  12. data/lib/authlete/model/client.rb +196 -345
  13. data/lib/authlete/model/hashable.rb +13 -33
  14. data/lib/authlete/model/named-uri.rb +13 -74
  15. data/lib/authlete/model/pair.rb +13 -74
  16. data/lib/authlete/model/param-initializer.rb +45 -0
  17. data/lib/authlete/model/property.rb +15 -85
  18. data/lib/authlete/model/request/authentication-callback-request.rb +63 -55
  19. data/lib/authlete/model/request/authorization-fail-request.rb +14 -75
  20. data/lib/authlete/model/request/authorization-issue-request.rb +38 -119
  21. data/lib/authlete/model/request/authorization-request.rb +8 -73
  22. data/lib/authlete/model/request/backchannel-authentication-complete-request.rb +97 -0
  23. data/lib/authlete/model/request/backchannel-authentication-fail-request.rb +55 -0
  24. data/lib/authlete/model/request/backchannel-authentication-issue-request.rb +37 -0
  25. data/lib/authlete/model/request/backchannel-authentication-request.rb +63 -0
  26. data/lib/authlete/model/request/base.rb +26 -0
  27. data/lib/authlete/model/request/client-authorization-delete-request.rb +7 -93
  28. data/lib/authlete/model/request/client-authorization-get-list-request.rb +17 -89
  29. data/lib/authlete/model/request/client-authorization-update-request.rb +11 -86
  30. data/lib/authlete/model/request/client-registration-request.rb +49 -0
  31. data/lib/authlete/model/request/client-secret-update-request.rb +7 -89
  32. data/lib/authlete/model/request/developer-authentication-callback-request.rb +40 -43
  33. data/lib/authlete/model/request/device-authorization-request.rb +63 -0
  34. data/lib/authlete/model/request/device-complete-request.rb +99 -0
  35. data/lib/authlete/model/request/device-verification-request.rb +40 -0
  36. data/lib/authlete/model/request/granted-scopes-request.rb +8 -74
  37. data/lib/authlete/model/request/introspection-request.rb +24 -83
  38. data/lib/authlete/model/request/pushed-auth-req-request.rb +64 -0
  39. data/lib/authlete/model/request/revocation-request.rb +14 -88
  40. data/lib/authlete/model/request/standard-introspection-request.rb +8 -73
  41. data/lib/authlete/model/request/token-create-request.rb +52 -183
  42. data/lib/authlete/model/request/token-fail-request.rb +12 -74
  43. data/lib/authlete/model/request/token-issue-request.rb +22 -80
  44. data/lib/authlete/model/request/token-request.rb +44 -81
  45. data/lib/authlete/model/request/token-update-request.rb +35 -121
  46. data/lib/authlete/model/request/user-info-issue-request.rb +14 -80
  47. data/lib/authlete/model/request/user-info-request.rb +25 -70
  48. data/lib/authlete/model/response/access-token.rb +96 -0
  49. data/lib/authlete/model/response/authentication-callback-response.rb +24 -19
  50. data/lib/authlete/model/response/authorization-fail-response.rb +13 -15
  51. data/lib/authlete/model/response/authorization-issue-response.rb +29 -32
  52. data/lib/authlete/model/response/authorization-response.rb +97 -123
  53. data/lib/authlete/model/response/authorized-client-list-response.rb +37 -0
  54. data/lib/authlete/model/response/backchannel-authentication-complete-response.rb +143 -0
  55. data/lib/authlete/model/response/backchannel-authentication-fail-response.rb +47 -0
  56. data/lib/authlete/model/response/backchannel-authentication-issue-response.rb +63 -0
  57. data/lib/authlete/model/response/backchannel-authentication-response.rb +160 -0
  58. data/lib/authlete/model/response/client-list-response.rb +58 -0
  59. data/lib/authlete/model/response/client-registration-response.rb +50 -0
  60. data/lib/authlete/model/response/client-secret-refresh-response.rb +12 -12
  61. data/lib/authlete/model/response/client-secret-update-response.rb +12 -12
  62. data/lib/authlete/model/response/developer-authentication-callback-response.rb +24 -19
  63. data/lib/authlete/model/response/device-authorization-response.rb +134 -0
  64. data/lib/authlete/model/response/device-complete-response.rb +39 -0
  65. data/lib/authlete/model/response/device-verification-response.rb +96 -0
  66. data/lib/authlete/model/response/granted-scopes-get-response.rb +27 -19
  67. data/lib/authlete/model/response/introspection-response.rb +64 -58
  68. data/lib/authlete/model/response/pushed-auth-req-response.rb +59 -0
  69. data/lib/authlete/model/response/revocation-response.rb +12 -15
  70. data/lib/authlete/model/response/service-list-response.rb +54 -0
  71. data/lib/authlete/model/response/standard-introspection-response.rb +13 -15
  72. data/lib/authlete/model/response/token-create-response.rb +50 -55
  73. data/lib/authlete/model/response/token-fail-response.rb +14 -17
  74. data/lib/authlete/model/response/token-issue-response.rb +49 -62
  75. data/lib/authlete/model/response/token-list-response.rb +64 -0
  76. data/lib/authlete/model/response/token-response.rb +59 -79
  77. data/lib/authlete/model/response/token-update-response.rb +28 -23
  78. data/lib/authlete/model/response/user-info-issue-response.rb +16 -16
  79. data/lib/authlete/model/response/user-info-response.rb +48 -42
  80. data/lib/authlete/model/result.rb +14 -13
  81. data/lib/authlete/model/scope.rb +29 -119
  82. data/lib/authlete/model/service-owner.rb +32 -116
  83. data/lib/authlete/model/service.rb +464 -685
  84. data/lib/authlete/model/sns-credentials.rb +18 -91
  85. data/lib/authlete/model/tagged-value.rb +14 -69
  86. data/lib/authlete/utility.rb +3 -32
  87. data/lib/authlete/version.rb +3 -3
  88. data/test/authlete/model/request/test_authentication-callback-request.rb +100 -0
  89. data/test/authlete/model/request/test_authorization-fail-request.rb +67 -0
  90. data/test/authlete/model/request/test_authorization-issue-request.rb +94 -0
  91. data/test/authlete/model/request/test_authorization-request.rb +57 -0
  92. data/test/authlete/model/request/test_backchannel-authentication-complete-request.rb +102 -0
  93. data/test/authlete/model/request/test_backchannel-authentication-fail-request.rb +71 -0
  94. data/test/authlete/model/request/test_backchannel-authentication-issue-request.rb +57 -0
  95. data/test/authlete/model/request/test_backchannel-authentication-request.rb +75 -0
  96. data/test/authlete/model/request/test_client-authorization-delete-request.rb +57 -0
  97. data/test/authlete/model/request/test_client-authorization-get-list-request.rb +71 -0
  98. data/test/authlete/model/request/test_client-authorization-update-request.rb +63 -0
  99. data/test/authlete/model/request/test_client-registration-request.rb +68 -0
  100. data/test/authlete/model/request/test_device-authorization-request.rb +75 -0
  101. data/test/authlete/model/request/test_device-complete-request.rb +102 -0
  102. data/test/authlete/model/request/test_device-verification-request.rb +57 -0
  103. data/test/authlete/model/request/test_granted-scopes-request.rb +57 -0
  104. data/test/authlete/model/request/test_introspection-request.rb +79 -0
  105. data/test/authlete/model/request/test_pushed-auth-req-request.rb +75 -0
  106. data/test/authlete/model/request/test_revocation-request.rb +67 -0
  107. data/test/authlete/model/request/test_standard-introspection-request.rb +57 -0
  108. data/test/authlete/model/request/test_token-create-request.rb +110 -0
  109. data/test/authlete/model/request/test_token-fail-request.rb +63 -0
  110. data/test/authlete/model/request/test_token-issue-request.rb +70 -0
  111. data/test/authlete/model/request/test_token-request.rb +94 -0
  112. data/test/authlete/model/request/test_token-update-request.rb +82 -0
  113. data/test/authlete/model/request/test_user-info-issue-request.rb +67 -0
  114. data/test/authlete/model/request/test_user-info-request.rb +75 -0
  115. data/test/authlete/model/response/test_access-token.rb +101 -0
  116. data/test/authlete/model/response/test_authorization-fail-response.rb +68 -0
  117. data/test/authlete/model/response/test_authorization-issue-response.rb +92 -0
  118. data/test/authlete/model/response/test_authorization-response.rb +145 -0
  119. data/test/authlete/model/response/test_authorized-client-list-response.rb +83 -0
  120. data/test/authlete/model/response/test_backchannel-authentication-complete-response.rb +132 -0
  121. data/test/authlete/model/response/test_backchannel-authentication-fail-response.rb +68 -0
  122. data/test/authlete/model/response/test_backchannel-authentication-issue-response.rb +80 -0
  123. data/test/authlete/model/response/test_backchannel-authentication-response.rb +156 -0
  124. data/test/authlete/model/response/test_client-list-response.rb +79 -0
  125. data/test/authlete/model/response/test_client-secret-refresh-response.rb +68 -0
  126. data/test/authlete/model/response/test_client-secret-update-response.rb +68 -0
  127. data/test/authlete/model/response/test_device-authorization-response.rb +140 -0
  128. data/test/authlete/model/response/test_device-complete-response.rb +64 -0
  129. data/test/authlete/model/response/test_device-verification-response.rb +112 -0
  130. data/test/authlete/model/response/test_granted-scopes-get-response.rb +84 -0
  131. data/test/authlete/model/response/test_introspection-response.rb +127 -0
  132. data/test/authlete/model/response/test_pushed-auth-req-response.rb +76 -0
  133. data/test/authlete/model/response/test_revocation-response.rb +68 -0
  134. data/test/authlete/model/response/test_service-list-response.rb +72 -0
  135. data/test/authlete/model/response/test_standard-introspection-response.rb +68 -0
  136. data/test/authlete/model/response/test_token-create-response.rb +107 -0
  137. data/test/authlete/model/response/test_token-fail-response.rb +68 -0
  138. data/test/authlete/model/response/test_token-issue-response.rb +127 -0
  139. data/test/authlete/model/response/test_token-list-response.rb +84 -0
  140. data/test/authlete/model/response/test_token-response.rb +147 -0
  141. data/test/authlete/model/response/test_token-update-response.rb +87 -0
  142. data/test/authlete/model/response/test_user-info-issue-response.rb +68 -0
  143. data/test/authlete/model/response/test_user-info-response.rb +107 -0
  144. data/test/authlete/model/test_client-extension.rb +95 -0
  145. data/test/authlete/model/test_client.rb +461 -0
  146. data/test/authlete/model/test_named-uri.rb +85 -0
  147. data/test/authlete/model/test_pair.rb +85 -0
  148. data/test/authlete/model/test_property.rb +90 -0
  149. data/test/authlete/model/test_result.rb +68 -0
  150. data/test/authlete/model/test_scope.rb +106 -0
  151. data/test/authlete/model/test_service-owner.rb +80 -0
  152. data/test/authlete/model/test_service.rb +614 -0
  153. data/test/authlete/model/test_sns-credentials.rb +88 -0
  154. data/test/authlete/model/test_tagged-value.rb +83 -0
  155. data/test/authlete/test_exception.rb +70 -0
  156. metadata +169 -9
  157. data/lib/authlete/model/client-list.rb +0 -129
  158. data/lib/authlete/model/response/client-authorization-get-list-response.rb +0 -60
  159. data/lib/authlete/model/response/service-creatable-response.rb +0 -51
  160. data/lib/authlete/model/service-list.rb +0 -128
@@ -0,0 +1,63 @@
1
+ # :nodoc:
2
+ #
3
+ # Copyright (C) 2014-2020 Authlete, Inc.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+
18
+ require 'authlete'
19
+ require 'minitest/autorun'
20
+
21
+
22
+ class TokenFailRequestTest < Minitest::Test
23
+ TICKET = '<ticket>'
24
+ REASON = 'UNKNOWN'
25
+
26
+
27
+ def set_params(obj)
28
+ obj.ticket = TICKET
29
+ obj.reason = REASON
30
+ end
31
+
32
+
33
+ def match(obj)
34
+ assert_equal TICKET, obj.ticket
35
+ assert_equal REASON, obj.reason
36
+ end
37
+
38
+
39
+ def generate_hash
40
+ {
41
+ ticket: '<ticket>',
42
+ reason: 'UNKNOWN'
43
+ }
44
+ end
45
+
46
+
47
+ def test_setters
48
+ actual = Authlete::Model::Request::TokenFailRequest.new
49
+ set_params(actual)
50
+
51
+ match(actual)
52
+ end
53
+
54
+
55
+ def test_to_hash
56
+ obj = Authlete::Model::Request::TokenFailRequest.new
57
+ set_params(obj)
58
+ actual = obj.to_hash
59
+ expected = generate_hash
60
+
61
+ assert_equal expected, actual
62
+ end
63
+ end
@@ -0,0 +1,70 @@
1
+ # :nodoc:
2
+ #
3
+ # Copyright (C) 2014-2020 Authlete, Inc.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+
18
+ require 'authlete'
19
+ require 'minitest/autorun'
20
+
21
+
22
+ class TokenIssueRequestTest < Minitest::Test
23
+ TICKET = '<ticket>'
24
+ SUBJECT = '<subject>'
25
+ PROPERTY_KEY = '<property0-key>'
26
+ PROPERTY_VALUE = '<property0-value>'
27
+ PROPERTIES = [ Authlete::Model::Property.new(key: PROPERTY_KEY, value: PROPERTY_VALUE) ]
28
+
29
+
30
+ def set_params(obj)
31
+ obj.ticket = TICKET
32
+ obj.subject = SUBJECT
33
+ obj.properties = PROPERTIES
34
+ end
35
+
36
+
37
+ def match(obj)
38
+ assert_equal TICKET, obj.ticket
39
+ assert_equal SUBJECT, obj.subject
40
+ assert_equal PROPERTY_KEY, obj.properties[0].key
41
+ assert_equal PROPERTY_VALUE, obj.properties[0].value
42
+ end
43
+
44
+
45
+ def generate_hash
46
+ {
47
+ ticket: '<ticket>',
48
+ subject: '<subject>',
49
+ properties: [ { key: '<property0-key>', value: '<property0-value>', hidden: false } ],
50
+ }
51
+ end
52
+
53
+
54
+ def test_setters
55
+ actual = Authlete::Model::Request::TokenIssueRequest.new
56
+ set_params(actual)
57
+
58
+ match(actual)
59
+ end
60
+
61
+
62
+ def test_to_hash
63
+ obj = Authlete::Model::Request::TokenIssueRequest.new
64
+ set_params(obj)
65
+ actual = obj.to_hash
66
+ expected = generate_hash
67
+
68
+ assert_equal expected, actual
69
+ end
70
+ end
@@ -0,0 +1,94 @@
1
+ # :nodoc:
2
+ #
3
+ # Copyright (C) 2014-2020 Authlete, Inc.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+
18
+ require 'authlete'
19
+ require 'minitest/autorun'
20
+
21
+
22
+ class TokenRequestTest < Minitest::Test
23
+ PARAMETERS = '<parameters>'
24
+ CLIENT_ID = '<client-id>'
25
+ CLIENT_SECRET = '<client-secret>'
26
+ PROPERTY_KEY = '<property0-key>'
27
+ PROPERTY_VALUE = '<property0-value>'
28
+ PROPERTIES = [ Authlete::Model::Property.new(key: PROPERTY_KEY, value: PROPERTY_VALUE) ]
29
+ CLIENT_CERTIFICATE = '<client-certificate>'
30
+ CLIENT_CERTIFICATE_PATH = [ 'path0', 'path1' ]
31
+ DPOP = '<dpop>'
32
+ HTU = '<htu>'
33
+ HTM = '<htm>'
34
+
35
+
36
+ def set_params(obj)
37
+ obj.parameters = PARAMETERS
38
+ obj.client_id = CLIENT_ID
39
+ obj.client_secret = CLIENT_SECRET
40
+ obj.properties = PROPERTIES
41
+ obj.client_certificate = CLIENT_CERTIFICATE
42
+ obj.client_certificate_path = CLIENT_CERTIFICATE_PATH
43
+ obj.dpop = DPOP
44
+ obj.htu = HTU
45
+ obj.htm = HTM
46
+ end
47
+
48
+
49
+ def match(obj)
50
+ assert_equal PARAMETERS, obj.parameters
51
+ assert_equal CLIENT_ID, obj.clientId
52
+ assert_equal CLIENT_SECRET, obj.clientSecret
53
+ assert_equal PROPERTY_KEY, obj.properties[0].key
54
+ assert_equal PROPERTY_VALUE, obj.properties[0].value
55
+ assert_equal CLIENT_CERTIFICATE, obj.clientCertificate
56
+ assert_equal CLIENT_CERTIFICATE_PATH, obj.clientCertificatePath
57
+ assert_equal DPOP, obj.dpop
58
+ assert_equal HTU, obj.htu
59
+ assert_equal HTM, obj.htm
60
+ end
61
+
62
+
63
+ def generate_hash
64
+ {
65
+ parameters: '<parameters>',
66
+ clientId: '<client-id>',
67
+ clientSecret: '<client-secret>',
68
+ properties: [ { key: '<property0-key>', value: '<property0-value>', hidden: false } ],
69
+ clientCertificate: '<client-certificate>',
70
+ clientCertificatePath: [ 'path0', 'path1' ],
71
+ dpop: '<dpop>',
72
+ htu: '<htu>',
73
+ htm: '<htm>'
74
+ }
75
+ end
76
+
77
+
78
+ def test_setters
79
+ actual = Authlete::Model::Request::TokenRequest.new
80
+ set_params(actual)
81
+
82
+ match(actual)
83
+ end
84
+
85
+
86
+ def test_to_hash
87
+ obj = Authlete::Model::Request::TokenRequest.new
88
+ set_params(obj)
89
+ actual = obj.to_hash
90
+ expected = generate_hash
91
+
92
+ assert_equal expected, actual
93
+ end
94
+ end
@@ -0,0 +1,82 @@
1
+ # :nodoc:
2
+ #
3
+ # Copyright (C) 2014-2020 Authlete, Inc.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+
18
+ require 'authlete'
19
+ require 'minitest/autorun'
20
+
21
+
22
+ class TokenUpdateRequestTest < Minitest::Test
23
+ ACCESS_TOKEN = '<access-token>'
24
+ ACCESS_TOKEN_EXPIRES_AT = 1000
25
+ SCOPES = [ 'scope0', 'scope1' ]
26
+ PROPERTY_KEY = '<property0-key>'
27
+ PROPERTY_VALUE = '<property0-value>'
28
+ PROPERTIES = [ Authlete::Model::Property.new(key: PROPERTY_KEY, value: PROPERTY_VALUE) ]
29
+ CERTIFICATE_THUMBPRINT = '<certificate-thumbprint>'
30
+ DPOP_KEY_THUMBPRINT = '<dpop-key-thumbprint>'
31
+
32
+
33
+ def set_params(obj)
34
+ obj.access_token = ACCESS_TOKEN
35
+ obj.access_token_expires_at = ACCESS_TOKEN_EXPIRES_AT
36
+ obj.scopes = SCOPES
37
+ obj.properties = PROPERTIES
38
+ obj.certificate_thumbprint = CERTIFICATE_THUMBPRINT
39
+ obj.dpop_key_thumbprint = DPOP_KEY_THUMBPRINT
40
+ end
41
+
42
+
43
+ def match(obj)
44
+ assert_equal ACCESS_TOKEN, obj.accessToken
45
+ assert_equal ACCESS_TOKEN_EXPIRES_AT, obj.accessTokenExpiresAt
46
+ assert_equal SCOPES, obj.scopes
47
+ assert_equal PROPERTY_KEY, obj.properties[0].key
48
+ assert_equal PROPERTY_VALUE, obj.properties[0].value
49
+ assert_equal CERTIFICATE_THUMBPRINT, obj.certificateThumbprint
50
+ assert_equal DPOP_KEY_THUMBPRINT, obj.dpopKeyThumbprint
51
+ end
52
+
53
+
54
+ def generate_hash
55
+ {
56
+ accessToken: '<access-token>',
57
+ accessTokenExpiresAt: 1000,
58
+ scopes: [ 'scope0', 'scope1' ],
59
+ properties: [ { key: '<property0-key>', value: '<property0-value>', hidden: false } ],
60
+ certificateThumbprint: '<certificate-thumbprint>',
61
+ dpopKeyThumbprint: '<dpop-key-thumbprint>'
62
+ }
63
+ end
64
+
65
+
66
+ def test_setters
67
+ actual = Authlete::Model::Request::TokenUpdateRequest.new
68
+ set_params(actual)
69
+
70
+ match(actual)
71
+ end
72
+
73
+
74
+ def test_to_hash
75
+ obj = Authlete::Model::Request::TokenUpdateRequest.new
76
+ set_params(obj)
77
+ actual = obj.to_hash
78
+ expected = generate_hash
79
+
80
+ assert_equal expected, actual
81
+ end
82
+ end
@@ -0,0 +1,67 @@
1
+ # :nodoc:
2
+ #
3
+ # Copyright (C) 2014-2020 Authlete, Inc.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+
18
+ require 'authlete'
19
+ require 'minitest/autorun'
20
+
21
+
22
+ class UserInfoIssueRequestTest < Minitest::Test
23
+ TOKEN = '<token>'
24
+ CLAIMS = [ 'claim0', 'claim1' ]
25
+ SUB = '<sub>'
26
+
27
+
28
+ def set_params(obj)
29
+ obj.token = TOKEN
30
+ obj.claims = CLAIMS
31
+ obj.sub = SUB
32
+ end
33
+
34
+
35
+ def match(obj)
36
+ assert_equal TOKEN, obj.token
37
+ assert_equal CLAIMS, obj.claims
38
+ assert_equal SUB, obj.sub
39
+ end
40
+
41
+
42
+ def generate_hash
43
+ {
44
+ token: '<token>',
45
+ claims: [ 'claim0', 'claim1' ],
46
+ sub: '<sub>'
47
+ }
48
+ end
49
+
50
+
51
+ def test_setters
52
+ actual = Authlete::Model::Request::UserInfoIssueRequest.new
53
+ set_params(actual)
54
+
55
+ match(actual)
56
+ end
57
+
58
+
59
+ def test_to_hash
60
+ obj = Authlete::Model::Request::UserInfoIssueRequest.new
61
+ set_params(obj)
62
+ actual = obj.to_hash
63
+ expected = generate_hash
64
+
65
+ assert_equal expected, actual
66
+ end
67
+ end
@@ -0,0 +1,75 @@
1
+ # :nodoc:
2
+ #
3
+ # Copyright (C) 2014-2020 Authlete, Inc.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+
18
+ require 'authlete'
19
+ require 'minitest/autorun'
20
+
21
+
22
+ class UserInfoRequestTest < Minitest::Test
23
+ TOKEN = '<token>'
24
+ CLIENT_CERTIFICATE = '<client-certificate>'
25
+ DPOP = '<dpop>'
26
+ HTU = '<htu>'
27
+ HTM = '<htm>'
28
+
29
+
30
+ def set_params(obj)
31
+ obj.token = TOKEN
32
+ obj.client_certificate = CLIENT_CERTIFICATE
33
+ obj.dpop = DPOP
34
+ obj.htu = HTU
35
+ obj.htm = HTM
36
+ end
37
+
38
+
39
+ def match(obj)
40
+ assert_equal TOKEN, obj.token
41
+ assert_equal CLIENT_CERTIFICATE, obj.clientCertificate
42
+ assert_equal DPOP, obj.dpop
43
+ assert_equal HTU, obj.htu
44
+ assert_equal HTM, obj.htm
45
+ end
46
+
47
+
48
+ def generate_hash
49
+ {
50
+ token: '<token>',
51
+ clientCertificate: '<client-certificate>',
52
+ dpop: '<dpop>',
53
+ htu: '<htu>',
54
+ htm: '<htm>'
55
+ }
56
+ end
57
+
58
+
59
+ def test_setters
60
+ actual = Authlete::Model::Request::UserInfoRequest.new
61
+ set_params(actual)
62
+
63
+ match(actual)
64
+ end
65
+
66
+
67
+ def test_to_hash
68
+ obj = Authlete::Model::Request::UserInfoRequest.new
69
+ set_params(obj)
70
+ actual = obj.to_hash
71
+ expected = generate_hash
72
+
73
+ assert_equal expected, actual
74
+ end
75
+ end