authing_ruby 1.0.7 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (128) hide show
  1. checksums.yaml +4 -4
  2. data/lib/authing_ruby/GraphQLAPI.rb +13 -2
  3. data/lib/authing_ruby/authentication/AuthenticationClient.rb +66 -60
  4. data/lib/authing_ruby/common/GraphqlClient.rb +42 -4
  5. data/lib/authing_ruby/graphql/mutations/updatePhone.gql +63 -0
  6. data/lib/authing_ruby/management/ManagementClient.rb +1 -1
  7. data/lib/authing_ruby/management/ManagementTokenProvider.rb +9 -8
  8. data/lib/authing_ruby/management/UsersManagementClient.rb +4 -6
  9. data/lib/authing_ruby/test/helper.rb +6 -2
  10. data/lib/authing_ruby/test/js_sdk_test/2.registerByPhoneCode.js +130 -0
  11. data/lib/authing_ruby/test/js_sdk_test/3.sendSMS.js +23 -0
  12. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/browser/index.min.js +1 -1
  13. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationClient.d.ts +41 -1
  14. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationClient.js +60 -2
  15. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/QrCodeAuthenticationClient.js +6 -3
  16. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/SocialAuthenticationClient.d.ts +4 -0
  17. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/SocialAuthenticationClient.js +6 -5
  18. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/types.d.ts +10 -0
  19. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/types.js +1 -1
  20. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/GraphqlClient.js +10 -8
  21. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/HttpClient.js +17 -15
  22. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/graphqlapi.d.ts +12 -1
  23. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/graphqlapi.js +192 -2
  24. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ApplicationsManagementClient.js +5 -3
  25. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/GroupsManagementClient.d.ts +5 -1
  26. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/GroupsManagementClient.js +29 -11
  27. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementClient.d.ts +5 -0
  28. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementClient.js +15 -2
  29. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/OrgManagementClient.d.ts +34 -1
  30. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/OrgManagementClient.js +71 -3
  31. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/RolesManagementClient.d.ts +6 -1
  32. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/RolesManagementClient.js +45 -10
  33. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UsersManagementClient.d.ts +34 -3
  34. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UsersManagementClient.js +189 -52
  35. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/types.d.ts +10 -0
  36. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/types.js +1 -1
  37. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/utils.d.ts +1 -1
  38. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/utils.js +1 -1
  39. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/version.d.ts +1 -1
  40. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/version.js +2 -2
  41. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/graphql.v2.d.ts +661 -32
  42. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/graphql.v2.js +30 -19
  43. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationClient.d.ts +41 -1
  44. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationClient.js +61 -3
  45. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/QrCodeAuthenticationClient.js +6 -3
  46. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/SocialAuthenticationClient.d.ts +4 -0
  47. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/SocialAuthenticationClient.js +6 -5
  48. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/types.d.ts +10 -0
  49. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/types.js +1 -1
  50. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/GraphqlClient.js +10 -8
  51. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/HttpClient.js +17 -15
  52. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/graphqlapi.d.ts +12 -1
  53. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/graphqlapi.js +192 -2
  54. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ApplicationsManagementClient.js +5 -3
  55. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/GroupsManagementClient.d.ts +5 -1
  56. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/GroupsManagementClient.js +30 -12
  57. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementClient.d.ts +5 -0
  58. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementClient.js +15 -2
  59. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/OrgManagementClient.d.ts +34 -1
  60. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/OrgManagementClient.js +72 -4
  61. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/RolesManagementClient.d.ts +6 -1
  62. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/RolesManagementClient.js +46 -11
  63. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UsersManagementClient.d.ts +34 -3
  64. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UsersManagementClient.js +190 -53
  65. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/types.d.ts +10 -0
  66. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/types.js +1 -1
  67. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/utils.d.ts +1 -1
  68. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/utils.js +1 -1
  69. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/version.d.ts +1 -1
  70. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/version.js +2 -2
  71. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/graphql.v2.d.ts +661 -32
  72. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/graphql.v2.js +29 -18
  73. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationClient.d.ts +41 -1
  74. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationClient.js +60 -2
  75. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/QrCodeAuthenticationClient.js +6 -3
  76. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/SocialAuthenticationClient.d.ts +4 -0
  77. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/SocialAuthenticationClient.js +6 -5
  78. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/types.d.ts +10 -0
  79. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/types.js +1 -1
  80. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/GraphqlClient.js +10 -8
  81. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/HttpClient.js +17 -15
  82. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/graphqlapi.d.ts +12 -1
  83. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/graphqlapi.js +192 -2
  84. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ApplicationsManagementClient.js +5 -3
  85. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/GroupsManagementClient.d.ts +5 -1
  86. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/GroupsManagementClient.js +29 -11
  87. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementClient.d.ts +5 -0
  88. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementClient.js +15 -2
  89. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/OrgManagementClient.d.ts +34 -1
  90. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/OrgManagementClient.js +71 -3
  91. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/RolesManagementClient.d.ts +6 -1
  92. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/RolesManagementClient.js +45 -10
  93. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UsersManagementClient.d.ts +34 -3
  94. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UsersManagementClient.js +189 -52
  95. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/types.d.ts +10 -0
  96. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/types.js +1 -1
  97. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/utils.d.ts +1 -1
  98. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/utils.js +1 -1
  99. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/version.d.ts +1 -1
  100. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/version.js +2 -2
  101. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/graphql.v2.d.ts +661 -32
  102. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/graphql.v2.js +30 -19
  103. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/package.json +1 -1
  104. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/CHANGELOG.md +210 -0
  105. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/LICENSE +23 -0
  106. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/README.md +275 -0
  107. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/config.js +11 -0
  108. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/lib/cli-options.js +13 -0
  109. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/lib/env-options.js +18 -0
  110. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/lib/main.js +118 -0
  111. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/package.json +57 -0
  112. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/index.d.ts +59 -0
  113. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/test.ts +19 -0
  114. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/tsconfig.json +15 -0
  115. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/tslint.json +6 -0
  116. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/index.js +0 -4
  117. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/package.json +1 -1
  118. data/lib/authing_ruby/test/js_sdk_test/package-lock.json +7 -7
  119. data/lib/authing_ruby/test/js_sdk_test/package.json +3 -2
  120. data/lib/authing_ruby/test/js_sdk_test/yarn.lock +71 -0
  121. data/lib/authing_ruby/test/mini_test/TestApplicationsManagementClient.rb +2 -2
  122. data/lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb +27 -13
  123. data/lib/authing_ruby/test/mini_test/TestManagementClient.rb +31 -43
  124. data/lib/authing_ruby/test/mini_test/TestSMSandEmail.rb +47 -3
  125. data/lib/authing_ruby/test/sms.rb +18 -0
  126. data/lib/authing_ruby/utils/utils.rb +68 -0
  127. data/lib/authing_ruby/version.rb +1 -1
  128. metadata +23 -6
@@ -1,8 +1,8 @@
1
- # ruby ./lib/test/mini_test/TestApplicationsManagementClient.rb
1
+ # ruby ./lib/authing_ruby/test/mini_test/TestApplicationsManagementClient.rb
2
2
 
3
3
  require "minitest/autorun"
4
4
  require "./lib/authing_ruby.rb"
5
- require "./lib/test/helper.rb"
5
+ require "./lib/authing_ruby/test/helper.rb"
6
6
  require 'dotenv'
7
7
  Dotenv.load('.env.test')
8
8
 
@@ -1,5 +1,5 @@
1
1
  # 测试内容: 用户认证模块-认证核心模块
2
- # 如何运行: ruby /lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb
2
+ # 如何运行: ruby ./lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb
3
3
 
4
4
  require "minitest/autorun" # Minitest
5
5
  require "./lib/authing_ruby.rb" # 模块主文件
@@ -11,13 +11,32 @@ Dotenv.load('.env.test') # 你可以编辑这个文件来修改环境变量
11
11
  class TestAuthenticationClient < Minitest::Test
12
12
  def setup
13
13
  options = {
14
- appHost: ENV["appHost"], # "https://rails-demo.authing.cn",
15
- appId: ENV["appId"], # "60800b9151d040af9016d60b"
14
+ # appHost: ENV["appHost"], # "https://rails-demo.authing.cn",
15
+ # appId: ENV["appId"], # "60800b9151d040af9016d60b"
16
+ appId: "60ab26fe5be730bfc1742c68",
17
+ appHost: "https://hn-staging.authing.cn",
16
18
  }
17
19
  @authenticationClient = AuthingRuby::AuthenticationClient.new(options)
18
20
  @helper = Test::Helper.new
19
21
  end
20
22
 
23
+ # 测试: 手机号+验证码+密码 注册
24
+ # 需要手动测试(填验证码)
25
+ # ruby ./lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb -n test_registerByPhoneCode
26
+ def test_registerByPhoneCode
27
+ phone = '13556136684'
28
+ code = '8086'
29
+ password = '1234567890'
30
+ res = @authenticationClient.registerByPhoneCode(phone, code, password)
31
+ # puts '拿到的结果是:-----'
32
+ # puts res
33
+ # {:code=>2026, :message=>"用户已存在,请直接登录!", :data=>nil}
34
+ # {:code=>2001, :message=>"验证码不正确!", :data=>nil}
35
+
36
+ # 如果成功
37
+ # {"id"=>"60ad0c49d6e166f9fe23ba4d", "arn"=>"arn:cn:authing:60ab26fe478f98290befefaa:user:60ad0c49d6e166f9fe23ba4d", "userPoolId"=>"60ab26fe478f98290befefaa", "status"=>"Activated", "username"=>nil, "email"=>nil, "emailVerified"=>false, "phone"=>"13556136684", "phoneVerified"=>true, "unionid"=>nil, "openid"=>nil, "nickname"=>nil, "registerSource"=>["basic:phone-code"], "photo"=>"default-user-avatar.png", "password"=>"0361a6088087f31edd172c4f6076c0e6", "oauth"=>nil, "token"=>nil, "tokenExpiredAt"=>nil, "loginsCount"=>0, "lastLogin"=>nil, "lastIP"=>nil, "signedUp"=>nil, "blocked"=>false, "isDeleted"=>false, "device"=>nil, "browser"=>nil, "company"=>nil, "name"=>nil, "givenName"=>nil, "familyName"=>nil, "middleName"=>nil, "profile"=>nil, "preferredUsername"=>nil, "website"=>nil, "gender"=>"U", "birthdate"=>nil, "zoneinfo"=>nil, "locale"=>nil, "address"=>nil, "formatted"=>nil, "streetAddress"=>nil, "locality"=>nil, "region"=>nil, "postalCode"=>nil, "city"=>nil, "province"=>nil, "country"=>nil, "createdAt"=>"2021-05-25T14:40:09+00:00", "updatedAt"=>"2021-05-25T14:40:09+00:00", "externalId"=>nil}
38
+ end
39
+
21
40
  # 测试邮箱+密码注册
22
41
  # ruby /lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb -n test_registerByEmail
23
42
  def test_registerByEmail
@@ -119,11 +138,13 @@ class TestAuthenticationClient < Minitest::Test
119
138
  end
120
139
 
121
140
  # 测试: 修改用户资料
122
- # ruby /lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb -n test_updateProfile
141
+ # 需要手动测试(确保用户名+密码账号的确存在)
142
+ # ruby ./lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb -n test_updateProfile
123
143
  def test_updateProfile
124
144
  # 先登录
125
145
  username = 'zhengcheng123'
126
146
  password = "123456789"
147
+ @authenticationClient.registerByUsername(username, password)
127
148
  @authenticationClient.loginByUsername(username, password)
128
149
 
129
150
  # 进行第一次修改
@@ -188,14 +209,6 @@ class TestAuthenticationClient < Minitest::Test
188
209
  assert(result.dig('id') != nil, result)
189
210
  end
190
211
 
191
- # 测试: 解绑手机号
192
- def test_unbindPhone
193
- end
194
-
195
- # 测试: 更新用户手机号
196
- def test_updatePhone
197
- end
198
-
199
212
  # 绑定邮箱
200
213
  def test_bindEmail
201
214
  end
@@ -205,11 +218,12 @@ class TestAuthenticationClient < Minitest::Test
205
218
  end
206
219
 
207
220
  # 测试: 检测 Token 登录状态
208
- # ruby /lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb -n test_checkLoginStatus
221
+ # ruby ./lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb -n test_checkLoginStatus
209
222
  def test_checkLoginStatus
210
223
  # 第一步:先登录然后获取 token
211
224
  username = 'zhengcheng123'
212
225
  password = "123456789"
226
+ @authenticationClient.registerByUsername(username, password)
213
227
  user = @authenticationClient.loginByUsername(username, password)
214
228
  token = user.dig("token")
215
229
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "minitest/autorun"
4
4
  require "./lib/authing_ruby.rb"
5
- require "./lib/test/helper.rb"
5
+ require "./lib/authing_ruby/test/helper.rb"
6
6
  require 'dotenv'
7
7
  Dotenv.load('.env.test')
8
8
 
@@ -10,6 +10,7 @@ class TestManagementClient < Minitest::Test
10
10
  def setup
11
11
  @options = {
12
12
  host: 'https://core.authing.cn',
13
+ # host: 'https://core.authing.co', # 2021-5-13 他们临时使用 .co,过几天等他们恢复了 .cn 这里就改回 .cn
13
14
  userPoolId: ENV["userPoolId"],
14
15
  secret: ENV["secret"],
15
16
  }
@@ -17,24 +18,26 @@ class TestManagementClient < Minitest::Test
17
18
  end
18
19
 
19
20
  # 创建用户
20
- # ruby ./lib/test/mini_test/TestManagementClient.rb -n test_users_create
21
+ # ruby ./lib/authing_ruby/test/mini_test/TestManagementClient.rb -n test_users_create
21
22
  def test_users_create
22
23
  managementClient = AuthingRuby::ManagementClient.new(@options)
24
+ random_phone = "135#{@helper.randomNumString(8)}"
23
25
  userInfo = {
24
- username: @helper.randomString, # 随机字符串,比如 "mpflok"
26
+ # username: @helper.randomString, # 随机字符串,比如 "mpflok"
25
27
  # username: 'SpongeBob3', # 或者明确指定用户名
26
- password: 'passw0rd',
28
+ phone: random_phone,
29
+ password: '123456789',
27
30
  }
28
- res = managementClient.users.create(userInfo)
29
- json = JSON.parse(res)
30
- # puts res
31
- # 如果成功
31
+ puts userInfo
32
+ hash = managementClient.users.create(userInfo)
33
+
34
+ # 成功
32
35
  # {"data":{"createUser":{"id":"608ab9828eab7e35e81bd732","arn":"arn:cn:authing:60800b8ee5b66b23128b4980:user:608ab9828eab7e35e81bd732","userPoolId":"60800b8ee5b66b23128b4980","status":"Activated","username":"SpongeBob2","email":null,"emailVerified":false,"phone":null,"phoneVerified":false,"unionid":null,"openid":null,"nickname":null,"registerSource":["import:manual"],"photo":"default-user-avatar.png","password":"91b133c2e13e40852505946b7e0c2f04","oauth":null,"token":null,"tokenExpiredAt":null,"loginsCount":0,"lastLogin":null,"lastIP":null,"signedUp":null,"blocked":false,"isDeleted":false,"device":null,"browser":null,"company":null,"name":null,"givenName":null,"familyName":null,"middleName":null,"profile":null,"preferredUsername":null,"website":null,"gender":"U","birthdate":null,"zoneinfo":null,"locale":null,"address":null,"formatted":null,"streetAddress":null,"locality":null,"region":null,"postalCode":null,"city":null,"province":null,"country":null,"createdAt":"2021-04-29T13:49:54+00:00","updatedAt":"2021-04-29T13:49:54+00:00","externalId":null}}}
33
36
 
34
- # 如果失败
37
+ # 失败
35
38
  # {"errors":[{"message":{"code":2026,"message":"用户已存在,请勿重复创建!"},"locations":[{"line":2,"column":3}],"path":["createUser"],"extensions":{"code":"INTERNAL_SERVER_ERROR"}}],"data":null}
36
39
 
37
- assert(json.dig("data", "createUser") != nil, json)
40
+ assert(hash.dig("data", "createUser") != nil, hash)
38
41
  end
39
42
 
40
43
  # 创建用户
@@ -48,10 +51,8 @@ class TestManagementClient < Minitest::Test
48
51
  loginsCount: 2, # 原有用户系统记录的用户登录次数
49
52
  signedUp: '2020-10-15T17:55:37+08:00' # 原有用户系统记录的用户注册时间
50
53
  }
51
- res = managementClient.users.create(userInfo)
52
- # puts res
53
- json = JSON.parse(res)
54
- assert(json.dig("data", "createUser") != nil, json)
54
+ hash = managementClient.users.create(userInfo)
55
+ assert(hash.dig("data", "createUser") != nil, hash)
55
56
  end
56
57
 
57
58
  # 创建一个用户, 并返回这个用户
@@ -66,14 +67,13 @@ class TestManagementClient < Minitest::Test
66
67
  end
67
68
 
68
69
  managementClient = AuthingRuby::ManagementClient.new(@options)
69
- res = managementClient.users.create(userInfo)
70
- json = JSON.parse(res)
71
- user = json.dig("data", "createUser")
70
+ hash = managementClient.users.create(userInfo)
71
+ user = hash.dig("data", "createUser")
72
72
  return user
73
73
  end
74
74
 
75
75
  # 更新用户
76
- # ruby ./lib/test/mini_test/TestManagementClient.rb -n test_update_user
76
+ # ruby ./lib/authing_ruby/test/mini_test/TestManagementClient.rb -n test_update_user
77
77
  def test_update_user
78
78
  # 第一步:创建用户
79
79
  user = create_random_user()
@@ -81,44 +81,37 @@ class TestManagementClient < Minitest::Test
81
81
 
82
82
  # 第二步:更新用户
83
83
  managementClient = AuthingRuby::ManagementClient.new(@options)
84
- res2 = managementClient.users.update(user_id, {
84
+ hash = managementClient.users.update(user_id, {
85
85
  nickname: 'Nick',
86
86
  })
87
87
  # puts res2
88
88
  # 如果失败
89
89
  # {"errors":[{"message":{"code":2004,"message":"用户不存在"},"locations":[{"line":2,"column":3}],"path":["updateUser"],"extensions":{"code":"INTERNAL_SERVER_ERROR"}}],"data":null}
90
90
 
91
- json2 = JSON.parse(res2)
92
- assert(json2.dig("data", "updateUser") != nil, json2)
91
+ assert(hash.dig("data", "updateUser") != nil, hash)
93
92
  end
94
93
 
95
94
  # 测试通过 ID 获取用户信息
96
- # ruby ./lib/test/mini_test/TestManagementClient.rb -n test_detail
95
+ # ruby ./lib/authing_ruby/test/mini_test/TestManagementClient.rb -n test_detail
97
96
  def test_detail
98
97
  user = create_random_user()
99
98
  user_id = user.dig("id")
100
99
 
101
100
  managementClient = AuthingRuby::ManagementClient.new(@options)
102
- res = managementClient.users.detail(user_id)
103
-
104
- json = JSON.parse(res)
105
- assert(json.dig("data", "user") != nil, json)
101
+ hash = managementClient.users.detail(user_id)
102
+ assert(hash.dig("data", "user") != nil, hash)
106
103
  end
107
104
 
108
105
  # 测试删除用户
109
- # ruby ./lib/test/mini_test/TestManagementClient.rb -n test_delete
106
+ # ruby ./lib/authing_ruby/test/mini_test/TestManagementClient.rb -n test_delete
110
107
  def test_delete
111
108
  user = create_random_user()
112
109
  user_id = user.dig("id")
113
110
 
114
111
  managementClient = AuthingRuby::ManagementClient.new(@options)
115
- res = managementClient.users.delete(user_id)
116
-
117
- # puts res
112
+ hash = managementClient.users.delete(user_id)
118
113
  # {"data":{"deleteUser":{"message":"删除成功!","code":200}}}
119
-
120
- json = JSON.parse(res)
121
- assert(json.dig("data", "deleteUser") != nil, json)
114
+ assert(hash.dig("data", "deleteUser") != nil, hash)
122
115
  end
123
116
 
124
117
  # 测试删除多个用户
@@ -133,22 +126,17 @@ class TestManagementClient < Minitest::Test
133
126
  user_ids = [user1_id, user2_id]
134
127
 
135
128
  managementClient = AuthingRuby::ManagementClient.new(@options)
136
- res = managementClient.users.deleteMany(user_ids)
137
- # puts res
129
+ hash = managementClient.users.deleteMany(user_ids)
138
130
  # {"data":{"deleteUsers":{"message":"删除成功!","code":200}}}
139
-
140
- json = JSON.parse(res)
141
- assert(json.dig("data", "deleteUsers") != nil, json)
131
+ assert(hash.dig("data", "deleteUsers") != nil, hash)
142
132
  end
143
133
 
144
134
  # 测试获取用户列表
145
135
  # ruby ./lib/test/mini_test/TestManagementClient.rb -n test_list
146
136
  def test_list
147
137
  managementClient = AuthingRuby::ManagementClient.new(@options)
148
- res = managementClient.users.list()
149
- # puts res
150
- json = JSON.parse(res)
151
- assert(json.dig("data", "users") != nil, json)
138
+ hash = managementClient.users.list()
139
+ assert(hash.dig("data", "users") != nil, hash)
152
140
  end
153
141
 
154
142
  # 测试 检查用户是否存在 (返回 true | false)
@@ -172,7 +160,7 @@ class TestManagementClient < Minitest::Test
172
160
  end
173
161
 
174
162
  # 测试 查找用户 (返回这个用户)
175
- # ruby ./lib/test/mini_test/TestManagementClient.rb -n test_find
163
+ # ruby ./lib/authing_ruby/test/mini_test/TestManagementClient.rb -n test_find
176
164
  def test_find
177
165
  # 第一步:先创建用户
178
166
  userInfo = {
@@ -12,7 +12,7 @@
12
12
 
13
13
  require "minitest/autorun"
14
14
  require "./lib/authing_ruby.rb"
15
- require "./lib/test/helper.rb"
15
+ require "./lib/authing_ruby/test/helper.rb"
16
16
  require 'dotenv'
17
17
  Dotenv.load('.env.test')
18
18
 
@@ -97,5 +97,49 @@ class TestSMSandEmail < Minitest::Test
97
97
  # 清理工作:测完了删除第一步注册的用户
98
98
  user_id = user['id']
99
99
  @managementClient.users.delete(user_id)
100
- end
101
- end
100
+ end
101
+
102
+ # 测试: 更新用户手机号
103
+ # ruby ./lib/authing_ruby/test/mini_test/TestSMSandEmail.rb -n test_updatePhone
104
+ # 文档: https://docs.authing.cn/v2/reference/sdk-for-node/authentication/AuthenticationClient.html#%E6%9B%B4%E6%96%B0%E7%94%A8%E6%88%B7%E6%89%8B%E6%9C%BA%E5%8F%B7
105
+ def test_updatePhone
106
+ # 前提条件:先确保有一个现有用户,可以进 Authing 手工新建一个,新建时设定手机号和密码,手机号随便填如 13511112222 密码 123456789
107
+
108
+ # 先登录:
109
+ phone = '13511112222'
110
+ password = '123456789'
111
+ user = @authenticationClient.loginByPhonePassword(phone, password)
112
+
113
+ # 填写要绑定的新手机号(可以填你自己的,这样才能收到短信)
114
+ phone = '13556136684'
115
+
116
+ # 给新手机号发送短信验证码 (把下面这行先取消注释, 收到短信后再注释上)
117
+ # puts manual_send_SMS(phone); return;
118
+
119
+ # 填写收到的短信验证码
120
+ code = '4874'
121
+
122
+ # 默认情况下,如果用户当前已经绑定了手机号,需要同时验证原有手机号
123
+ # 开发者也可以选择不开启 “验证原有手机号“ ,可以在 Authing 控制台 的 设置目录下的安全信息模块进行关闭。
124
+ # 单个用户池 -> 设置 -> 安全信息 -> 用户池安全设置 -> 修改手机号时是否验证旧手机号 -> 点击开关,切换为关闭 -> 右上角"保存"
125
+ # 由于没有2个手机号,这里是关闭后再测试
126
+ oldPhone = nil
127
+ oldPhoneCode = nil
128
+
129
+ updatePhoneResult = @authenticationClient.updatePhone(phone, code, oldPhone, oldPhoneCode)
130
+ puts updatePhoneResult
131
+ assert(updatePhoneResult.dig('id') != nil)
132
+
133
+ # 错误:
134
+ # {:code=>2020, :message=>"尚未登录,无访问权限", :data=>nil}
135
+ # {:code=>500, :message=>"该手机号已被绑定", :data=>nil}
136
+ # {:code=>2230, :message=>"新手机号和旧手机号一样", :data=>nil}
137
+ # {:code=>500, :message=>"修改手机号必须验证原来的手机号。", :data=>nil}
138
+ # {:code=>500, :message=>"验证码已过期", :data=>nil}
139
+ # {:code=>500, :message=>"验证码不正确!", :data=>nil}
140
+
141
+ # 成功会返回 User
142
+ # {"id"=>"60b5b17a9cf59b23b2bcbccb", "arn"=>"arn:cn:authing:60800b8ee5b66b23128b4980:user:60b5b17a9cf59b23b2bcbccb", "userPoolId"=>"60800b8ee5b66b23128b4980", "status"=>"Activated", "username"=>"测试更新手机号", "email"=>nil, "emailVerified"=>false, "phone"=>"13556136684", "phoneVerified"=>true, "unionid"=>nil, "openid"=>nil, "nickname"=>nil, "registerSource"=>["import:manual"], "photo"=>"https://files.authing.co/authing-console/default-user-avatar.png", "password"=>"871fde109c2f0f463cc35e0c3e840932", "oauth"=>nil, "token"=>"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2MGI1YjE3YTljZjU5YjIzYjJiY2JjY2IiLCJiaXJ0aGRhdGUiOm51bGwsImZhbWlseV9uYW1lIjpudWxsLCJnZW5kZXIiOiJVIiwiZ2l2ZW5fbmFtZSI6bnVsbCwibG9jYWxlIjpudWxsLCJtaWRkbGVfbmFtZSI6bnVsbCwibmFtZSI6bnVsbCwibmlja25hbWUiOm51bGwsInBpY3R1cmUiOiJodHRwczovL2ZpbGVzLmF1dGhpbmcuY28vYXV0aGluZy1jb25zb2xlL2RlZmF1bHQtdXNlci1hdmF0YXIucG5nIiwicHJlZmVycmVkX3VzZXJuYW1lIjpudWxsLCJwcm9maWxlIjpudWxsLCJ1cGRhdGVkX2F0IjoiMjAyMS0wNi0wMVQwNDoxNjo1MS41NDBaIiwid2Vic2l0ZSI6bnVsbCwiem9uZWluZm8iOm51bGwsImFkZHJlc3MiOnsiY291bnRyeSI6bnVsbCwicG9zdGFsX2NvZGUiOm51bGwsInJlZ2lvbiI6bnVsbCwiZm9ybWF0dGVkIjpudWxsfSwicGhvbmVfbnVtYmVyIjoiMTM1MTExMTIyMjIiLCJwaG9uZV9udW1iZXJfdmVyaWZpZWQiOmZhbHNlLCJlbWFpbCI6bnVsbCwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJleHRlcm5hbF9pZCI6bnVsbCwidW5pb25pZCI6bnVsbCwiZGF0YSI6eyJ0eXBlIjoidXNlciIsInVzZXJQb29sSWQiOiI2MDgwMGI4ZWU1YjY2YjIzMTI4YjQ5ODAiLCJhcHBJZCI6IjYwYjViMjFiZTMxMjkwNjI2ZmY2ZDgyZiIsImlkIjoiNjBiNWIxN2E5Y2Y1OWIyM2IyYmNiY2NiIiwidXNlcklkIjoiNjBiNWIxN2E5Y2Y1OWIyM2IyYmNiY2NiIiwiX2lkIjoiNjBiNWIxN2E5Y2Y1OWIyM2IyYmNiY2NiIiwicGhvbmUiOiIxMzUxMTExMjIyMiIsImVtYWlsIjpudWxsLCJ1c2VybmFtZSI6Iua1i-ivleabtOaWsOaJi-acuuWPtyIsInVuaW9uaWQiOm51bGwsIm9wZW5pZCI6bnVsbCwiY2xpZW50SWQiOiI2MDgwMGI4ZWU1YjY2YjIzMTI4YjQ5ODAifSwidXNlcnBvb2xfaWQiOiI2MDgwMGI4ZWU1YjY2YjIzMTI4YjQ5ODAiLCJhdWQiOiI2MGI1YjIxYmUzMTI5MDYyNmZmNmQ4MmYiLCJleHAiOjE2MjM3MzA2MzEsImlhdCI6MTYyMjUyMTAzMSwiaXNzIjoiaHR0cHM6Ly9tb3Jlbi5hdXRoaW5nLmNuL29pZGMifQ.VKSB6q-DBmtKLzOh_2qjBPQCSNZUAtrw_G2ZlNjOxbs", "tokenExpiredAt"=>"2021-06-15T04:17:11+00:00", "loginsCount"=>6, "lastLogin"=>"2021-06-01T04:17:11+00:00", "lastIP"=>nil, "signedUp"=>"2021-06-01T04:03:06+00:00", "blocked"=>false, "isDeleted"=>false, "device"=>nil, "browser"=>nil, "company"=>nil, "name"=>nil, "givenName"=>nil, "familyName"=>nil, "middleName"=>nil, "profile"=>nil, "preferredUsername"=>nil, "website"=>nil, "gender"=>"U", "birthdate"=>nil, "zoneinfo"=>nil, "locale"=>nil, "address"=>nil, "formatted"=>nil, "streetAddress"=>nil, "locality"=>nil, "region"=>nil, "postalCode"=>nil, "city"=>nil, "province"=>nil, "country"=>nil, "createdAt"=>"2021-06-01T04:03:06+00:00", "updatedAt"=>"2021-06-01T04:17:12+00:00"}
143
+ end
144
+
145
+ end
@@ -0,0 +1,18 @@
1
+ # 发短信
2
+ # ruby ./lib/authing_ruby/test/sms.rb
3
+
4
+ require "./lib/authing_ruby.rb" # 模块主文件
5
+ require "./lib/authing_ruby/test/helper.rb"
6
+ require 'dotenv'
7
+ Dotenv.load('.env.test') # 你可以编辑这个文件来修改环境变量
8
+
9
+ options = {
10
+ # appHost: ENV["appHost"] || , # "https://rails-demo.authing.cn",
11
+ # appId: ENV["appId"], # "60800b9151d040af9016d60b"
12
+ appId: "60ab26fe5be730bfc1742c68",
13
+ appHost: "https://hn-staging.authing.cn",
14
+ }
15
+ @authenticationClient = AuthingRuby::AuthenticationClient.new(options)
16
+ phone = "13556136684"
17
+ sms_result = @authenticationClient.sendSmsCode(phone)
18
+ puts sms_result
@@ -1,5 +1,8 @@
1
+ # 一些工具函数放这里
2
+
1
3
  require 'openssl'
2
4
  require "base64"
5
+ require 'jwt'
3
6
 
4
7
  module AuthingRuby
5
8
  class Utils
@@ -36,5 +39,70 @@ module AuthingRuby
36
39
  return result
37
40
  end
38
41
 
42
+ # verifyIDTokenHS256 函数用于验证 HS256 id_token
43
+
44
+ # 文档:使用指南 -> 常见问题 -> 如何验证用户身份凭证(token) -> 使用应用密钥验证 HS256 算法签名的 Token
45
+ # https://docs.authing.cn/v2/guides/faqs/how-to-validate-user-token.html#%E4%BD%BF%E7%94%A8%E5%BA%94%E7%94%A8%E5%AF%86%E9%92%A5%E9%AA%8C%E8%AF%81-hs256-%E7%AE%97%E6%B3%95%E7%AD%BE%E5%90%8D%E7%9A%84-token
46
+
47
+ # 官方文档目前(2021-5-13)是让用户自己处理 HS256 的 token,自己进行验证,但这样比较麻烦,我在 Ruby SDK 这边写一个方便的方法。
48
+ # verifyIDTokenHS256 返回 Boolean, true 代表 token 有效,false 代表无效
49
+
50
+ # 注意: 可以在 "应用 -> 授权 -> id_token 签名算法" 这里看到,选的是不是 HS256
51
+ # 如果是 HS256 才应该用这个方法来验证
52
+
53
+ # 参数 id_token 就是登录返回的 "token"
54
+ # 参数 appSecret 就是 Authing 里某个应用的 appSecret
55
+ def self.verifyIDTokenHS256(id_token, appSecret)
56
+ # 如果解码出错,直接返回 false
57
+ begin
58
+ hmac_secret = appSecret
59
+ decoded = JWT.decode id_token, hmac_secret, true, { algorithm: 'HS256' }
60
+ rescue => error
61
+ # puts error.message
62
+ return false
63
+ end
64
+
65
+ payload = decoded[0]
66
+ header = decoded[1]
67
+
68
+ # 从 payload 获得过期时间,然后判断是否过期
69
+ exp = payload["exp"] # 过期时间
70
+ current_timestamp = Time.now.to_i
71
+ if current_timestamp < exp
72
+ return true # 没过期
73
+ else
74
+ return false # 过期了
75
+ end
76
+ end
77
+
78
+ # decodeIdToken 函数用于 解码 id token 得到用户信息
79
+ # 因为 id token 其实就是一个普通的 JWT,所以 payload 没有加密过,只是 base64 编码了而已,可以当做明文看待 (你可以直接把 id token 粘贴到 https://jwt.io/ 看到 payload 内容)
80
+ # 所以 payload 不可以直接相信,必须先验证后才能相信。
81
+ # 函数返回:
82
+ # 成功:返回用户信息
83
+ # 失败:返回 nil (比如解码失败 或 token 过期)
84
+ def self.decodeIdToken(id_token, appSecret)
85
+ # 如果解码出错,直接返回 false
86
+ begin
87
+ hmac_secret = appSecret
88
+ decoded = JWT.decode id_token, hmac_secret, true, { algorithm: 'HS256' }
89
+ rescue => error
90
+ # puts error.message
91
+ return nil
92
+ end
93
+
94
+ payload = decoded[0]
95
+ header = decoded[1]
96
+
97
+ # 从 payload 获得过期时间,然后判断是否过期
98
+ exp = payload["exp"] # 过期时间
99
+ current_timestamp = Time.now.to_i
100
+ if current_timestamp < exp
101
+ return payload # 没过期
102
+ else
103
+ return nil # 过期了
104
+ end
105
+ end
106
+
39
107
  end
40
108
  end
@@ -2,5 +2,5 @@
2
2
  # https://github.com/Authing/authing.js/blob/cf4757d09de3b44c3c3f4509ae8c8715c9f302a2/src/lib/version.ts
3
3
 
4
4
  module AuthingRuby
5
- VERSION = "1.0.7".freeze
5
+ VERSION = "1.1.2".freeze
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: authing_ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.7
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - 郑诚(Zheng Cheng)
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-06 00:00:00.000000000 Z
11
+ date: 2021-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -189,6 +189,7 @@ files:
189
189
  - lib/authing_ruby/graphql/mutations/resetPassword.gql
190
190
  - lib/authing_ruby/graphql/mutations/sendEmail.gql
191
191
  - lib/authing_ruby/graphql/mutations/updatePassword.gql
192
+ - lib/authing_ruby/graphql/mutations/updatePhone.gql
192
193
  - lib/authing_ruby/graphql/mutations/updateUser.gql
193
194
  - lib/authing_ruby/graphql/queries/accessToken.gql
194
195
  - lib/authing_ruby/graphql/queries/checkLoginStatus.gql
@@ -209,6 +210,8 @@ files:
209
210
  - lib/authing_ruby/test/helper.rb
210
211
  - lib/authing_ruby/test/js_sdk_test/1.buildAuthorizeUrl.js
211
212
  - lib/authing_ruby/test/js_sdk_test/2.buildAuthorizeUrl_PKCE.js
213
+ - lib/authing_ruby/test/js_sdk_test/2.registerByPhoneCode.js
214
+ - lib/authing_ruby/test/js_sdk_test/3.sendSMS.js
212
215
  - lib/authing_ruby/test/js_sdk_test/README.md
213
216
  - lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/CONTRIBUTION.md
214
217
  - lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/LICENSE
@@ -591,6 +594,18 @@ files:
591
594
  - lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/debug.js
592
595
  - lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/index.js
593
596
  - lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/node.js
597
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/CHANGELOG.md
598
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/LICENSE
599
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/README.md
600
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/config.js
601
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/lib/cli-options.js
602
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/lib/env-options.js
603
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/lib/main.js
604
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/package.json
605
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/index.d.ts
606
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/test.ts
607
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/tsconfig.json
608
+ - lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/tslint.json
594
609
  - lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/LICENSE
595
610
  - lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/README.md
596
611
  - lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/debug.js
@@ -657,6 +672,7 @@ files:
657
672
  - lib/authing_ruby/test/js_sdk_test/node_modules/ms/readme.md
658
673
  - lib/authing_ruby/test/js_sdk_test/package-lock.json
659
674
  - lib/authing_ruby/test/js_sdk_test/package.json
675
+ - lib/authing_ruby/test/js_sdk_test/yarn.lock
660
676
  - lib/authing_ruby/test/mini_test/TestApplicationsManagementClient.rb
661
677
  - lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb
662
678
  - lib/authing_ruby/test/mini_test/TestAuthenticationClientProtocal.rb
@@ -666,13 +682,14 @@ files:
666
682
  - lib/authing_ruby/test/mini_test/TestNaiveHttpClient.rb
667
683
  - lib/authing_ruby/test/mini_test/TestSMSandEmail.rb
668
684
  - lib/authing_ruby/test/mini_test/TestUtils.rb
685
+ - lib/authing_ruby/test/sms.rb
669
686
  - lib/authing_ruby/utils/utils.rb
670
687
  - lib/authing_ruby/version.rb
671
688
  homepage: https://github.com/1c7/authing_ruby
672
689
  licenses:
673
690
  - MIT
674
691
  metadata: {}
675
- post_install_message:
692
+ post_install_message:
676
693
  rdoc_options: []
677
694
  require_paths:
678
695
  - lib
@@ -687,8 +704,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
687
704
  - !ruby/object:Gem::Version
688
705
  version: '0'
689
706
  requirements: []
690
- rubygems_version: 3.0.3
691
- signing_key:
707
+ rubygems_version: 3.0.9
708
+ signing_key:
692
709
  specification_version: 4
693
710
  summary: Authing 的 Ruby SDK
694
711
  test_files: []