ost-sdk-ruby 1.1.0 → 2.0.0.beta.1
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/config.rb +18 -0
- data/lib/ost-sdk-ruby/saas.rb +12 -17
- data/lib/ost-sdk-ruby/saas/balance.rb +35 -0
- data/lib/ost-sdk-ruby/saas/base.rb +94 -12
- data/lib/ost-sdk-ruby/saas/{v1.1/ledger.rb → chains.rb} +6 -9
- data/lib/ost-sdk-ruby/saas/{v1.1/balances.rb → device_managers.rb} +7 -9
- data/lib/ost-sdk-ruby/saas/devices.rb +55 -0
- data/lib/ost-sdk-ruby/saas/manifest.rb +40 -0
- data/lib/ost-sdk-ruby/saas/price_points.rb +35 -0
- data/lib/ost-sdk-ruby/saas/recovery_owners.rb +35 -0
- data/lib/ost-sdk-ruby/saas/{v1/token.rb → rules.rb} +6 -9
- data/lib/ost-sdk-ruby/saas/services.rb +3 -17
- data/lib/ost-sdk-ruby/saas/sessions.rb +44 -0
- data/lib/ost-sdk-ruby/saas/tokens.rb +35 -0
- data/lib/ost-sdk-ruby/saas/transactions.rb +53 -0
- data/lib/ost-sdk-ruby/saas/users.rb +52 -0
- data/lib/ost-sdk-ruby/test/balance_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/chains_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/device_managers_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/devices_test.rb +41 -0
- data/lib/ost-sdk-ruby/test/price_points_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/recovery_owners_test.rb +21 -0
- data/lib/ost-sdk-ruby/test/rules_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/sessions_test.rb +28 -0
- data/lib/ost-sdk-ruby/test/signature_generation_test.rb +33 -0
- data/lib/ost-sdk-ruby/test/tokens_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/transactions_test.rb +43 -0
- data/lib/ost-sdk-ruby/test/users_test.rb +32 -0
- data/lib/ost-sdk-ruby/util.rb +1 -1
- data/lib/ost-sdk-ruby/util/common_validator.rb +14 -0
- data/lib/ost-sdk-ruby/util/custom_error_response.rb +56 -0
- data/lib/ost-sdk-ruby/util/http_helper.rb +105 -97
- data/lib/ost-sdk-ruby/util/services_helper.rb +3 -75
- data/lib/ost-sdk-ruby/version.rb +1 -1
- metadata +42 -32
- data/Rakefile +0 -8
- data/lib/ost-sdk-ruby/saas/v0/services.rb +0 -32
- data/lib/ost-sdk-ruby/saas/v0/transaction_kind.rb +0 -85
- data/lib/ost-sdk-ruby/saas/v0/users.rb +0 -73
- data/lib/ost-sdk-ruby/saas/v1.1/services.rb +0 -41
- data/lib/ost-sdk-ruby/saas/v1/actions.rb +0 -64
- data/lib/ost-sdk-ruby/saas/v1/airdrops.rb +0 -55
- data/lib/ost-sdk-ruby/saas/v1/services.rb +0 -36
- data/lib/ost-sdk-ruby/saas/v1/transactions.rb +0 -55
- data/lib/ost-sdk-ruby/saas/v1/transfers.rb +0 -55
- data/lib/ost-sdk-ruby/saas/v1/users.rb +0 -64
- data/lib/ost-sdk-ruby/util/result.rb +0 -240
@@ -2,9 +2,7 @@ module OSTSdk
|
|
2
2
|
|
3
3
|
module Saas
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
class Token < OSTSdk::Saas::Base
|
5
|
+
class Rules < OSTSdk::Saas::Base
|
8
6
|
|
9
7
|
# Initialize
|
10
8
|
#
|
@@ -13,18 +11,19 @@ module OSTSdk
|
|
13
11
|
# api_key: (String)
|
14
12
|
# api_secret: (String)
|
15
13
|
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
16
15
|
#
|
17
16
|
def initialize(params)
|
18
17
|
super
|
19
|
-
@url_prefix = '/
|
18
|
+
@url_prefix = '/rules'
|
20
19
|
end
|
21
20
|
|
22
|
-
#
|
21
|
+
# List Rules
|
23
22
|
#
|
24
23
|
# Returns:
|
25
|
-
# response: (
|
24
|
+
# response: (Hash)
|
26
25
|
#
|
27
|
-
def
|
26
|
+
def get_list(params = {})
|
28
27
|
http_helper.send_get_request("#{@url_prefix}/", params)
|
29
28
|
end
|
30
29
|
|
@@ -32,6 +31,4 @@ module OSTSdk
|
|
32
31
|
|
33
32
|
end
|
34
33
|
|
35
|
-
end
|
36
|
-
|
37
34
|
end
|
@@ -30,29 +30,15 @@ module OSTSdk
|
|
30
30
|
private
|
31
31
|
|
32
32
|
def set_manifest(params)
|
33
|
-
|
34
33
|
api_version = extract_api_version(params[:api_base_url])
|
34
|
+
fail 'Api endpoint is invalid' if api_version != "v2"
|
35
35
|
|
36
|
-
|
37
|
-
if api_version == ''
|
38
|
-
# puts("You are using an deprecated version of OST API. Please update to the latest version.")
|
39
|
-
@services = OSTSdk::Saas::V0::Services.new(params)
|
40
|
-
elsif api_version == 'v1'
|
41
|
-
@services = OSTSdk::Saas::V1::Services.new(params)
|
42
|
-
elsif api_version == 'v1.1'
|
43
|
-
@services = OSTSdk::Saas::V1Dot1::Services.new(params)
|
44
|
-
else
|
45
|
-
fail 'Api endpoint is invalid'
|
46
|
-
end
|
47
|
-
|
36
|
+
@services = OSTSdk::Saas::Manifest.new(params)
|
48
37
|
end
|
49
38
|
|
50
39
|
def extract_api_version(api_base_url)
|
51
|
-
|
52
|
-
api_version = ((api_base_url || '').split("/")[3] || '').downcase
|
53
|
-
|
40
|
+
api_version = ((api_base_url || '').split("/")[4] || '').downcase
|
54
41
|
return api_version
|
55
|
-
|
56
42
|
end
|
57
43
|
|
58
44
|
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module OSTSdk
|
2
|
+
|
3
|
+
module Saas
|
4
|
+
|
5
|
+
class Sessions < OSTSdk::Saas::Base
|
6
|
+
|
7
|
+
# Initialize
|
8
|
+
#
|
9
|
+
# Arguments:
|
10
|
+
# api_base_url: (String)
|
11
|
+
# api_key: (String)
|
12
|
+
# api_secret: (String)
|
13
|
+
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
15
|
+
#
|
16
|
+
def initialize(params)
|
17
|
+
super
|
18
|
+
@url_prefix = '/users'
|
19
|
+
@url_suffix = '/sessions'
|
20
|
+
end
|
21
|
+
|
22
|
+
# Get session of a user
|
23
|
+
#
|
24
|
+
# Returns:
|
25
|
+
# response: (Hash)
|
26
|
+
#
|
27
|
+
def get(params = {})
|
28
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}/#{get_session_address!(params)}", params)
|
29
|
+
end
|
30
|
+
|
31
|
+
# List sessions of a user
|
32
|
+
#
|
33
|
+
# Returns:
|
34
|
+
# response: (Hash)
|
35
|
+
#
|
36
|
+
def get_list(params = {})
|
37
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}", params)
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module OSTSdk
|
2
|
+
|
3
|
+
module Saas
|
4
|
+
|
5
|
+
|
6
|
+
class Tokens < OSTSdk::Saas::Base
|
7
|
+
|
8
|
+
# Initialize
|
9
|
+
#
|
10
|
+
# Arguments:
|
11
|
+
# api_base_url: (String)
|
12
|
+
# api_key: (String)
|
13
|
+
# api_secret: (String)
|
14
|
+
# api_spec: (Boolean)
|
15
|
+
# config: (Hash)
|
16
|
+
#
|
17
|
+
def initialize(params)
|
18
|
+
super
|
19
|
+
@url_prefix = '/tokens'
|
20
|
+
end
|
21
|
+
|
22
|
+
# Get token details
|
23
|
+
#
|
24
|
+
# Returns:
|
25
|
+
# response: (Hash)
|
26
|
+
#
|
27
|
+
def get(params = {})
|
28
|
+
http_helper.send_get_request("#{@url_prefix}", params)
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
module OSTSdk
|
2
|
+
|
3
|
+
module Saas
|
4
|
+
|
5
|
+
class Transactions < OSTSdk::Saas::Base
|
6
|
+
|
7
|
+
# Initialize
|
8
|
+
#
|
9
|
+
# Arguments:
|
10
|
+
# api_base_url: (String)
|
11
|
+
# api_key: (String)
|
12
|
+
# api_secret: (String)
|
13
|
+
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
15
|
+
#
|
16
|
+
def initialize(params)
|
17
|
+
super
|
18
|
+
@url_prefix = '/users'
|
19
|
+
@url_suffix = '/transactions'
|
20
|
+
end
|
21
|
+
|
22
|
+
# Execute company to user transaction
|
23
|
+
#
|
24
|
+
# Returns:
|
25
|
+
# response: (Hash)
|
26
|
+
#
|
27
|
+
def execute(params = {})
|
28
|
+
http_helper.send_post_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}", params)
|
29
|
+
end
|
30
|
+
|
31
|
+
# Get transaction detail
|
32
|
+
#
|
33
|
+
# Returns:
|
34
|
+
# response: (Hash)
|
35
|
+
#
|
36
|
+
def get(params = {})
|
37
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}/#{get_transaction_id!(params)}", params)
|
38
|
+
end
|
39
|
+
|
40
|
+
# List transactions of a user
|
41
|
+
#
|
42
|
+
# Returns:
|
43
|
+
# response: (Hash)
|
44
|
+
#
|
45
|
+
def get_list(params = {})
|
46
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}", params)
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
module OSTSdk
|
2
|
+
|
3
|
+
module Saas
|
4
|
+
|
5
|
+
class Users < OSTSdk::Saas::Base
|
6
|
+
|
7
|
+
# Initialize
|
8
|
+
#
|
9
|
+
# Arguments:
|
10
|
+
# api_base_url: (String)
|
11
|
+
# api_key: (String)
|
12
|
+
# api_secret: (String)
|
13
|
+
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
15
|
+
#
|
16
|
+
def initialize(params)
|
17
|
+
super
|
18
|
+
@url_prefix = '/users'
|
19
|
+
end
|
20
|
+
|
21
|
+
# Create a User
|
22
|
+
#
|
23
|
+
# Returns:
|
24
|
+
# response: (Hash)
|
25
|
+
#
|
26
|
+
def create(params = {})
|
27
|
+
http_helper.send_post_request("#{@url_prefix}/", params)
|
28
|
+
end
|
29
|
+
|
30
|
+
# List Users
|
31
|
+
#
|
32
|
+
# Returns:
|
33
|
+
# response: (Hash)
|
34
|
+
#
|
35
|
+
def get_list(params = {})
|
36
|
+
http_helper.send_get_request("#{@url_prefix}/", params)
|
37
|
+
end
|
38
|
+
|
39
|
+
# Get user details
|
40
|
+
#
|
41
|
+
# Returns:
|
42
|
+
# response: (Hash)
|
43
|
+
#
|
44
|
+
def get(params = {})
|
45
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}", params)
|
46
|
+
end
|
47
|
+
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
51
|
+
|
52
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require_relative "../../../lib/ost-sdk-ruby/util"
|
2
|
+
require_relative "../../../lib/ost-sdk-ruby/saas"
|
3
|
+
require "test/unit"
|
4
|
+
require_relative "../../../lib/config"
|
5
|
+
|
6
|
+
class BalanceTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
def balance_service
|
9
|
+
@balance_service ||= Config::OST_SDK.services.balance
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_balance_get
|
13
|
+
result = balance_service.get(user_id: Config::OST_KIT_USER_ID)
|
14
|
+
puts "result=>#{result}" unless result["success"]
|
15
|
+
assert_equal(result["success"], true )
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require_relative "../../../lib/ost-sdk-ruby/util"
|
2
|
+
require_relative "../../../lib/ost-sdk-ruby/saas"
|
3
|
+
require "test/unit"
|
4
|
+
require_relative "../../../lib/config"
|
5
|
+
|
6
|
+
class ChainsTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
def chains_service
|
9
|
+
@chains_service ||= Config::OST_SDK.services.chains
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_chains_get
|
13
|
+
result = chains_service.get(chain_id: Config::OST_KIT_AUX_CHAIN_ID)
|
14
|
+
puts "result=>#{result}" unless result["success"]
|
15
|
+
assert_equal(result["success"], true )
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require_relative "../../../lib/ost-sdk-ruby/util"
|
2
|
+
require_relative "../../../lib/ost-sdk-ruby/saas"
|
3
|
+
require "test/unit"
|
4
|
+
require_relative "../../../lib/config"
|
5
|
+
|
6
|
+
class DeviceManagersTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
def device_managers_service
|
9
|
+
@device_managers_service ||= Config::OST_SDK.services.device_managers
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_device_managers_get
|
13
|
+
result = device_managers_service.get(user_id: Config::OST_KIT_USER_ID)
|
14
|
+
puts "result=>#{result}" unless result["success"]
|
15
|
+
assert_equal(result["success"], true )
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
require_relative "../../../lib/ost-sdk-ruby/util"
|
2
|
+
require_relative "../../../lib/ost-sdk-ruby/saas"
|
3
|
+
require "test/unit"
|
4
|
+
require_relative "../../../lib/config"
|
5
|
+
|
6
|
+
class DevicesTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
def devices_service
|
9
|
+
@devices_service ||= Config::OST_SDK.services.devices
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_devices_create
|
13
|
+
result = devices_service.create({
|
14
|
+
user_id: Config::OST_KIT_USER_ID,
|
15
|
+
address: "0x1ea365269a3e6c8fa492eca9a531bf#{Time.now.to_i}",
|
16
|
+
api_signer_address: '0x5F860598383868e8E8Ee0ffC5ADD92369Db37455',
|
17
|
+
device_uuid: '593a967f-87bd-49a6-976c-52edf46c4df4',
|
18
|
+
device_name: 'Iphone S'
|
19
|
+
})
|
20
|
+
puts "result=>#{result}" unless result["success"]
|
21
|
+
assert_equal(result["success"], true)
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_devices_get
|
25
|
+
result = devices_service.get({
|
26
|
+
user_id: Config::OST_KIT_USER_ID,
|
27
|
+
device_address: Config::OST_KIT_USER_DEVICE_ADDRESS
|
28
|
+
})
|
29
|
+
puts "result=>#{result}" unless result["success"]
|
30
|
+
assert_equal(result["success"], true)
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_devices_get_list
|
34
|
+
result = devices_service.get_list({
|
35
|
+
user_id: Config::OST_KIT_USER_ID
|
36
|
+
})
|
37
|
+
puts "result=>#{result}" unless result["success"]
|
38
|
+
assert_equal(result["success"], true)
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require_relative "../../../lib/ost-sdk-ruby/util"
|
2
|
+
require_relative "../../../lib/ost-sdk-ruby/saas"
|
3
|
+
require "test/unit"
|
4
|
+
require_relative "../../../lib/config"
|
5
|
+
|
6
|
+
class PricePointsTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
def price_points_service
|
9
|
+
@price_points_service ||= Config::OST_SDK.services.price_points
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_price_points_get
|
13
|
+
result = price_points_service.get(chain_id: Config::OST_KIT_AUX_CHAIN_ID)
|
14
|
+
puts "result=>#{result}" unless result["success"]
|
15
|
+
assert_equal(result["success"], true )
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require_relative "../../../lib/ost-sdk-ruby/util"
|
2
|
+
require_relative "../../../lib/ost-sdk-ruby/saas"
|
3
|
+
require "test/unit"
|
4
|
+
require_relative "../../../lib/config"
|
5
|
+
|
6
|
+
class RecoveryOwnersTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
def recovery_owners_service
|
9
|
+
@recovery_owners_service ||= Config::OST_SDK.services.recovery_owners
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_recovery_owners_get
|
13
|
+
result = recovery_owners_service.get({
|
14
|
+
user_id: Config::OST_KIT_USER_ID,
|
15
|
+
recovery_owner_address: Config::OST_KIT_RECOVERY_OWNER_ADDRESS
|
16
|
+
})
|
17
|
+
puts "result=>#{result}" unless result["success"]
|
18
|
+
assert_equal(result["success"], true )
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require_relative "../../../lib/ost-sdk-ruby/util"
|
2
|
+
require_relative "../../../lib/ost-sdk-ruby/saas"
|
3
|
+
require "test/unit"
|
4
|
+
require_relative "../../../lib/config"
|
5
|
+
|
6
|
+
class RulesTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
def rules_service
|
9
|
+
@rules_service ||= Config::OST_SDK.services.rules
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_rules_get_list
|
13
|
+
result = rules_service.get_list()
|
14
|
+
puts "result=>#{result}" unless result["success"]
|
15
|
+
assert_equal(result["success"], true )
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require_relative "../../../lib/ost-sdk-ruby/util"
|
2
|
+
require_relative "../../../lib/ost-sdk-ruby/saas"
|
3
|
+
require "test/unit"
|
4
|
+
require_relative "../../../lib/config"
|
5
|
+
|
6
|
+
class SessionsTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
def sessions_service
|
9
|
+
@sessions_service ||= Config::OST_SDK.services.sessions
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_sessions_get
|
13
|
+
result = sessions_service.get({
|
14
|
+
user_id: Config::OST_KIT_USER_ID,
|
15
|
+
session_address: Config::OST_KIT_SESSION_ADDRESS
|
16
|
+
})
|
17
|
+
puts "result=>#{result}" unless result["success"]
|
18
|
+
assert_equal(result["success"], true)
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_sessions_get_list
|
22
|
+
result = sessions_service.get_list({
|
23
|
+
user_id: Config::OST_KIT_USER_ID
|
24
|
+
})
|
25
|
+
assert_equal(result["success"], true)
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|