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,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 AuthorizationIssueRequestTest < Minitest::Test
23
+ TICKET = '<ticket>'
24
+ SUBJECT = '<subject>'
25
+ AUTH_TIME = 100
26
+ ACR = '<acr>'
27
+ CLAIMS = [ 'claim0', 'claim1' ]
28
+ PROPERTY_KEY = '<property0-key>'
29
+ PROPERTY_VALUE = '<property0-value>'
30
+ PROPERTIES = [ Authlete::Model::Property.new(key: PROPERTY_KEY, value: PROPERTY_VALUE) ]
31
+ SCOPES = [ 'scope0', 'scope1' ]
32
+ SUB = '<sub>'
33
+ IDT_HEADER_PARAMS = '<idt-header-params>'
34
+
35
+
36
+ def set_params(obj)
37
+ obj.ticket = TICKET
38
+ obj.subject = SUBJECT
39
+ obj.auth_time = AUTH_TIME
40
+ obj.acr = ACR
41
+ obj.claims = CLAIMS
42
+ obj.properties = PROPERTIES
43
+ obj.scopes = SCOPES
44
+ obj.sub = SUB
45
+ obj.idtHeaderParams = IDT_HEADER_PARAMS
46
+ end
47
+
48
+
49
+ def match(obj)
50
+ assert_equal TICKET, obj.ticket
51
+ assert_equal SUBJECT, obj.subject
52
+ assert_equal AUTH_TIME, obj.authTime
53
+ assert_equal ACR, obj.acr
54
+ assert_equal CLAIMS, obj.claims
55
+ assert_equal PROPERTY_KEY, obj.properties[0].key
56
+ assert_equal PROPERTY_VALUE, obj.properties[0].value
57
+ assert_equal SCOPES, obj.scopes
58
+ assert_equal SUB, obj.sub
59
+ assert_equal IDT_HEADER_PARAMS, obj.idtHeaderParams
60
+ end
61
+
62
+
63
+ def generate_hash
64
+ {
65
+ ticket: '<ticket>',
66
+ subject: '<subject>',
67
+ authTime: 100,
68
+ acr: '<acr>',
69
+ claims: [ 'claim0', 'claim1' ],
70
+ properties: [ { key: '<property0-key>', value: '<property0-value>', hidden: false } ],
71
+ scopes: [ 'scope0', 'scope1' ],
72
+ sub: '<sub>',
73
+ idtHeaderParams: '<idt-header-params>'
74
+ }
75
+ end
76
+
77
+
78
+ def test_setters
79
+ actual = Authlete::Model::Request::AuthorizationIssueRequest.new
80
+ set_params(actual)
81
+
82
+ match(actual)
83
+ end
84
+
85
+
86
+ def test_to_hash
87
+ obj = Authlete::Model::Request::AuthorizationIssueRequest.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,57 @@
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 AuthorizationRequestTest < Minitest::Test
23
+ PARAMETERS = '<parameters>'
24
+
25
+
26
+ def set_params(obj)
27
+ obj.parameters = PARAMETERS
28
+ end
29
+
30
+
31
+ def match(obj)
32
+ assert_equal PARAMETERS, obj.parameters
33
+ end
34
+
35
+
36
+ def generate_hash
37
+ { parameters: '<parameters>' }
38
+ end
39
+
40
+
41
+ def test_setters
42
+ actual = Authlete::Model::Request::AuthorizationRequest.new
43
+ set_params(actual)
44
+
45
+ match(actual)
46
+ end
47
+
48
+
49
+ def test_to_hash
50
+ obj = Authlete::Model::Request::AuthorizationRequest.new
51
+ set_params(obj)
52
+ actual = obj.to_hash
53
+ expected = generate_hash
54
+
55
+ assert_equal expected, actual
56
+ end
57
+ end
@@ -0,0 +1,102 @@
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 BackchannelAuthenticationCompleteRequestTest < Minitest::Test
23
+ TICKET = '<ticket>'
24
+ RESULT = 'AUTHORIZED'
25
+ SUBJECT = '<subject>'
26
+ SUB = '<sub>'
27
+ AUTH_TIME = 100
28
+ ACR = '<acr>'
29
+ CLAIMS = [ 'claim0', 'claim1' ]
30
+ PROPERTY_KEY = '<prop-key0>'
31
+ PROPERTY_VALUE = '<prop-value0>'
32
+ PROPERTIES = [ Authlete::Model::Property.new(key: PROPERTY_KEY, value: PROPERTY_VALUE) ]
33
+ SCOPES = [ 'scope0', 'scope1' ]
34
+ ERROR_DESCRIPTION = '<error-description>'
35
+ ERROR_URI = '<error-uri>'
36
+
37
+
38
+ def set_params(obj)
39
+ obj.ticket = TICKET
40
+ obj.result = RESULT
41
+ obj.subject = SUBJECT
42
+ obj.sub = SUB
43
+ obj.auth_time = AUTH_TIME
44
+ obj.acr = ACR
45
+ obj.claims = CLAIMS
46
+ obj.properties = PROPERTIES
47
+ obj.scopes = SCOPES
48
+ obj.error_description = ERROR_DESCRIPTION
49
+ obj.error_uri = ERROR_URI
50
+ end
51
+
52
+
53
+ def match(obj)
54
+ assert_equal TICKET, obj.ticket
55
+ assert_equal RESULT, obj.result
56
+ assert_equal SUBJECT, obj.subject
57
+ assert_equal SUB, obj.sub
58
+ assert_equal AUTH_TIME, obj.authTime
59
+ assert_equal ACR, obj.acr
60
+ assert_equal CLAIMS, obj.claims
61
+ assert_equal PROPERTY_KEY, obj.properties[0].key
62
+ assert_equal PROPERTY_VALUE, obj.properties[0].value
63
+ assert_equal SCOPES, obj.scopes
64
+ assert_equal ERROR_DESCRIPTION, obj.errorDescription
65
+ assert_equal ERROR_URI, obj.errorUri
66
+ end
67
+
68
+
69
+ def generate_hash
70
+ {
71
+ ticket: '<ticket>',
72
+ result: 'AUTHORIZED',
73
+ subject: '<subject>',
74
+ sub: '<sub>',
75
+ authTime: 100,
76
+ acr: '<acr>',
77
+ claims: [ 'claim0', 'claim1' ],
78
+ properties: [ { key: '<prop-key0>', value: '<prop-value0>', hidden: false } ],
79
+ scopes: [ 'scope0', 'scope1' ],
80
+ errorDescription: '<error-description>',
81
+ errorUri: '<error-uri>'
82
+ }
83
+ end
84
+
85
+
86
+ def test_setters
87
+ actual = Authlete::Model::Request::BackchannelAuthenticationCompleteRequest.new
88
+ set_params(actual)
89
+
90
+ match(actual)
91
+ end
92
+
93
+
94
+ def test_to_hash
95
+ obj = Authlete::Model::Request::BackchannelAuthenticationCompleteRequest.new
96
+ set_params(obj)
97
+ actual = obj.to_hash
98
+ expected = generate_hash
99
+
100
+ assert_equal expected, actual
101
+ end
102
+ end
@@ -0,0 +1,71 @@
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 BackchannelAuthenticationFailRequestTest < Minitest::Test
23
+ TICKET = '<ticket>'
24
+ REASON = 'ACCESS_DENIED'
25
+ ERROR_DESCRIPTION = '<error-description>'
26
+ ERROR_URI = '<error-uri>'
27
+
28
+
29
+ def set_params(obj)
30
+ obj.ticket = TICKET
31
+ obj.reason = REASON
32
+ obj.error_description = ERROR_DESCRIPTION
33
+ obj.error_uri = ERROR_URI
34
+ end
35
+
36
+
37
+ def match(obj)
38
+ assert_equal TICKET, obj.ticket
39
+ assert_equal REASON, obj.reason
40
+ assert_equal ERROR_DESCRIPTION, obj.errorDescription
41
+ assert_equal ERROR_URI, obj.errorUri
42
+ end
43
+
44
+
45
+ def generate_hash
46
+ {
47
+ ticket: '<ticket>',
48
+ reason: 'ACCESS_DENIED',
49
+ errorDescription: '<error-description>',
50
+ errorUri: '<error-uri>'
51
+ }
52
+ end
53
+
54
+
55
+ def test_setters
56
+ actual = Authlete::Model::Request::BackchannelAuthenticationFailRequest.new
57
+ set_params(actual)
58
+
59
+ match(actual)
60
+ end
61
+
62
+
63
+ def test_to_hash
64
+ obj = Authlete::Model::Request::BackchannelAuthenticationFailRequest.new
65
+ set_params(obj)
66
+ actual = obj.to_hash
67
+ expected = generate_hash
68
+
69
+ assert_equal expected, actual
70
+ end
71
+ end
@@ -0,0 +1,57 @@
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 BackchannelAuthenticationIssueRequestTest < Minitest::Test
23
+ TICKET = '<ticket>'
24
+
25
+
26
+ def set_params(obj)
27
+ obj.ticket = TICKET
28
+ end
29
+
30
+
31
+ def match(obj)
32
+ assert_equal TICKET, obj.ticket
33
+ end
34
+
35
+
36
+ def generate_hash
37
+ { ticket: '<ticket>' }
38
+ end
39
+
40
+
41
+ def test_setters
42
+ actual = Authlete::Model::Request::BackchannelAuthenticationIssueRequest.new
43
+ set_params(actual)
44
+
45
+ match(actual)
46
+ end
47
+
48
+
49
+ def test_to_hash
50
+ obj = Authlete::Model::Request::BackchannelAuthenticationIssueRequest.new
51
+ set_params(obj)
52
+ actual = obj.to_hash
53
+ expected = generate_hash
54
+
55
+ assert_equal expected, actual
56
+ end
57
+ 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 BackchannelAuthenticationRequestTest < Minitest::Test
23
+ PARAMETERS = '<parameters>'
24
+ CLIENT_ID = '<client-id>'
25
+ CLIENT_SECRET = '<client-secret>'
26
+ CLIENT_CERTIFICATE = '<client-certificate>'
27
+ CLIENT_CERTIFICATE_PATH = [ 'path0', 'path1' ]
28
+
29
+
30
+ def set_params(obj)
31
+ obj.parameters = PARAMETERS
32
+ obj.client_id = CLIENT_ID
33
+ obj.client_secret = CLIENT_SECRET
34
+ obj.client_certificate = CLIENT_CERTIFICATE
35
+ obj.client_certificate_path = CLIENT_CERTIFICATE_PATH
36
+ end
37
+
38
+
39
+ def match(obj)
40
+ assert_equal PARAMETERS, obj.parameters
41
+ assert_equal CLIENT_ID, obj.clientId
42
+ assert_equal CLIENT_SECRET, obj.clientSecret
43
+ assert_equal CLIENT_CERTIFICATE, obj.clientCertificate
44
+ assert_equal CLIENT_CERTIFICATE_PATH, obj.clientCertificatePath
45
+ end
46
+
47
+
48
+ def generate_hash
49
+ {
50
+ parameters: '<parameters>',
51
+ clientId: '<client-id>',
52
+ clientSecret: '<client-secret>',
53
+ clientCertificate: '<client-certificate>',
54
+ clientCertificatePath: [ 'path0', 'path1' ]
55
+ }
56
+ end
57
+
58
+
59
+ def test_setters
60
+ actual = Authlete::Model::Request::BackchannelAuthenticationRequest.new
61
+ set_params(actual)
62
+
63
+ match(actual)
64
+ end
65
+
66
+
67
+ def test_to_hash
68
+ obj = Authlete::Model::Request::BackchannelAuthenticationRequest.new
69
+ set_params(obj)
70
+ actual = obj.to_hash
71
+ expected = generate_hash
72
+
73
+ assert_equal expected, actual
74
+ end
75
+ end