multi-auth-project-sdk 1.0.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 (37) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +139 -0
  4. data/lib/multi_auth_sample/api_helper.rb +10 -0
  5. data/lib/multi_auth_sample/client.rb +105 -0
  6. data/lib/multi_auth_sample/configuration.rb +170 -0
  7. data/lib/multi_auth_sample/controllers/authentication_controller.rb +151 -0
  8. data/lib/multi_auth_sample/controllers/base_controller.rb +65 -0
  9. data/lib/multi_auth_sample/controllers/o_auth_authorization_controller.rb +188 -0
  10. data/lib/multi_auth_sample/exceptions/api_exception.rb +10 -0
  11. data/lib/multi_auth_sample/exceptions/o_auth_provider_exception.rb +48 -0
  12. data/lib/multi_auth_sample/http/auth/api_header.rb +47 -0
  13. data/lib/multi_auth_sample/http/auth/api_key.rb +47 -0
  14. data/lib/multi_auth_sample/http/auth/basic_auth.rb +49 -0
  15. data/lib/multi_auth_sample/http/auth/custom_auth.rb +40 -0
  16. data/lib/multi_auth_sample/http/auth/o_auth_acg.rb +144 -0
  17. data/lib/multi_auth_sample/http/auth/o_auth_bearer_token.rb +42 -0
  18. data/lib/multi_auth_sample/http/auth/o_auth_ccg.rb +88 -0
  19. data/lib/multi_auth_sample/http/auth/o_auth_ropcg.rb +120 -0
  20. data/lib/multi_auth_sample/http/http_call_back.rb +10 -0
  21. data/lib/multi_auth_sample/http/http_method_enum.rb +10 -0
  22. data/lib/multi_auth_sample/http/http_request.rb +10 -0
  23. data/lib/multi_auth_sample/http/http_response.rb +10 -0
  24. data/lib/multi_auth_sample/models/base_model.rb +62 -0
  25. data/lib/multi_auth_sample/models/o_auth_provider_error_enum.rb +45 -0
  26. data/lib/multi_auth_sample/models/o_auth_scope_o_auth_acg_enum.rb +20 -0
  27. data/lib/multi_auth_sample/models/o_auth_token.rb +110 -0
  28. data/lib/multi_auth_sample/models/service_status.rb +129 -0
  29. data/lib/multi_auth_sample/models/suite_code_enum.rb +29 -0
  30. data/lib/multi_auth_sample/models/user.rb +100 -0
  31. data/lib/multi_auth_sample/utilities/date_time_helper.rb +11 -0
  32. data/lib/multi_auth_sample/utilities/file_wrapper.rb +16 -0
  33. data/lib/multi_auth_sample.rb +54 -0
  34. data/test/controllers/controller_test_base.rb +47 -0
  35. data/test/controllers/test_authentication_controller.rb +110 -0
  36. data/test/http_response_catcher.rb +19 -0
  37. metadata +154 -0
@@ -0,0 +1,29 @@
1
+ # multi_auth_sample
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module MultiAuthSample
7
+ # A integer based enum representing a Suite in a game of cards
8
+ class SuiteCodeEnum
9
+ SUITE_CODE_ENUM = [
10
+ # TODO: Write general description for HEARTS
11
+ HEARTS = 1,
12
+
13
+ # TODO: Write general description for SPADES
14
+ SPADES = 2,
15
+
16
+ # TODO: Write general description for CLUBS
17
+ CLUBS = 3,
18
+
19
+ # TODO: Write general description for DIAMONDS
20
+ DIAMONDS = 4
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ SUITE_CODE_ENUM.include?(value)
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,100 @@
1
+ # multi_auth_sample
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module MultiAuthSample
7
+ # User Model.
8
+ class User < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [Integer]
14
+ attr_accessor :id
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [String]
18
+ attr_accessor :name
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_accessor :email
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [String]
26
+ attr_accessor :created_at
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [String]
30
+ attr_accessor :updated_at
31
+
32
+ # A mapping from model property names to API property names.
33
+ def self.names
34
+ @_hash = {} if @_hash.nil?
35
+ @_hash['id'] = 'id'
36
+ @_hash['name'] = 'name'
37
+ @_hash['email'] = 'email'
38
+ @_hash['created_at'] = 'created_at'
39
+ @_hash['updated_at'] = 'updated_at'
40
+ @_hash
41
+ end
42
+
43
+ # An array for optional fields
44
+ def self.optionals
45
+ %w[
46
+ id
47
+ name
48
+ email
49
+ created_at
50
+ updated_at
51
+ ]
52
+ end
53
+
54
+ # An array for nullable fields
55
+ def self.nullables
56
+ []
57
+ end
58
+
59
+ def initialize(id = SKIP,
60
+ name = SKIP,
61
+ email = SKIP,
62
+ created_at = SKIP,
63
+ updated_at = SKIP,
64
+ additional_properties = {})
65
+ @id = id unless id == SKIP
66
+ @name = name unless name == SKIP
67
+ @email = email unless email == SKIP
68
+ @created_at = created_at unless created_at == SKIP
69
+ @updated_at = updated_at unless updated_at == SKIP
70
+
71
+ # Add additional model properties to the instance.
72
+ additional_properties.each do |_name, _value|
73
+ instance_variable_set("@#{_name}", _value)
74
+ end
75
+ end
76
+
77
+ # Creates an instance of the object from a hash.
78
+ def self.from_hash(hash)
79
+ return nil unless hash
80
+
81
+ # Extract variables from the hash.
82
+ id = hash.key?('id') ? hash['id'] : SKIP
83
+ name = hash.key?('name') ? hash['name'] : SKIP
84
+ email = hash.key?('email') ? hash['email'] : SKIP
85
+ created_at = hash.key?('created_at') ? hash['created_at'] : SKIP
86
+ updated_at = hash.key?('updated_at') ? hash['updated_at'] : SKIP
87
+
88
+ # Clean out expected properties from Hash.
89
+ names.each_value { |k| hash.delete(k) }
90
+
91
+ # Create object from extracted values.
92
+ User.new(id,
93
+ name,
94
+ email,
95
+ created_at,
96
+ updated_at,
97
+ hash)
98
+ end
99
+ end
100
+ end
@@ -0,0 +1,11 @@
1
+ # multi_auth_sample
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ require 'date'
7
+ module MultiAuthSample
8
+ # A utility that supports dateTime conversion to different formats
9
+ class DateTimeHelper < CoreLibrary::DateTimeHelper
10
+ end
11
+ end
@@ -0,0 +1,16 @@
1
+ # multi_auth_sample
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module MultiAuthSample
7
+ # A utility to allow users to set the content-type for files
8
+ class FileWrapper < CoreLibrary::FileWrapper
9
+ # The constructor.
10
+ # @param [File] file The file to be sent in the request.
11
+ # @param [string] content_type The content type of the provided file.
12
+ def initialize(file, content_type: 'application/octet-stream')
13
+ super
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,54 @@
1
+ # multi_auth_sample
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ require 'date'
7
+ require 'json'
8
+ require 'apimatic_core_interfaces'
9
+ require 'apimatic_core'
10
+ require 'apimatic_faraday_client_adapter'
11
+ # rubocop:disable Style/MixinUsage
12
+ include CoreLibrary
13
+ # rubocop:enable Style/MixinUsage
14
+
15
+ require_relative 'multi_auth_sample/api_helper'
16
+ require_relative 'multi_auth_sample/client'
17
+
18
+ # Utilities
19
+ require_relative 'multi_auth_sample/utilities/file_wrapper'
20
+ require_relative 'multi_auth_sample/utilities/date_time_helper'
21
+
22
+ # Http
23
+ require_relative 'multi_auth_sample/http/http_call_back'
24
+ require_relative 'multi_auth_sample/http/http_method_enum'
25
+ require_relative 'multi_auth_sample/http/http_request'
26
+ require_relative 'multi_auth_sample/http/http_response'
27
+ require_relative 'multi_auth_sample/http/auth/basic_auth'
28
+ require_relative 'multi_auth_sample/http/auth/api_key'
29
+ require_relative 'multi_auth_sample/http/auth/api_header'
30
+ require_relative 'multi_auth_sample/http/auth/o_auth_ccg'
31
+ require_relative 'multi_auth_sample/http/auth/o_auth_acg'
32
+ require_relative 'multi_auth_sample/http/auth/o_auth_ropcg'
33
+ require_relative 'multi_auth_sample/http/auth/o_auth_bearer_token'
34
+ require_relative 'multi_auth_sample/http/auth/custom_auth'
35
+
36
+ # Models
37
+ require_relative 'multi_auth_sample/models/base_model'
38
+ require_relative 'multi_auth_sample/models/service_status'
39
+ require_relative 'multi_auth_sample/models/user'
40
+ require_relative 'multi_auth_sample/models/o_auth_token'
41
+ require_relative 'multi_auth_sample/models/suite_code_enum'
42
+ require_relative 'multi_auth_sample/models/o_auth_provider_error_enum'
43
+ require_relative 'multi_auth_sample/models/o_auth_scope_o_auth_acg_enum'
44
+
45
+ # Exceptions
46
+ require_relative 'multi_auth_sample/exceptions/api_exception'
47
+ require_relative 'multi_auth_sample/exceptions/o_auth_provider_exception'
48
+
49
+ require_relative 'multi_auth_sample/configuration'
50
+
51
+ # Controllers
52
+ require_relative 'multi_auth_sample/controllers/base_controller'
53
+ require_relative 'multi_auth_sample/controllers/authentication_controller'
54
+ require_relative 'multi_auth_sample/controllers/o_auth_authorization_controller'
@@ -0,0 +1,47 @@
1
+ # multi_auth_sample
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ require 'json'
7
+ require 'minitest/autorun'
8
+ require 'minitest/hell'
9
+ require 'minitest/pride'
10
+ require 'minitest/proveit'
11
+ require 'multi_auth_sample'
12
+ require_relative '../http_response_catcher'
13
+
14
+ class ControllerTestBase < Minitest::Test
15
+ parallelize_me!
16
+ include MultiAuthSample
17
+
18
+ # Create configuration and set any test parameters
19
+ def create_configuration
20
+ Configuration.new(
21
+ o_auth_bearer_token_credentials: OAuthBearerTokenCredentials.new(
22
+ access_token: 'azHmdOe09EdchxeWsdnplkQbv76sJH'
23
+ ),
24
+ access_token: 'azHmdOe09EdchxeWsdnplkQbv76sJH',
25
+ http_callback: HttpResponseCatcher.new
26
+ )
27
+ end
28
+
29
+ # Initializes the base test controller
30
+ def setup_class
31
+ _config = create_configuration
32
+ @client = Client.new(config: _config)
33
+
34
+ o_auth_ccg_token = @client.o_auth_ccg.fetch_token()
35
+ o_auth_ccg_credentials = _config.o_auth_ccg_credentials.clone_with(o_auth_token: o_auth_ccg_token)
36
+ _config = _config.clone_with(o_auth_ccg_credentials: o_auth_ccg_credentials)
37
+
38
+ o_auth_acg_token = @client.o_auth_acg.fetch_token('910b000d4f')
39
+ o_auth_acg_credentials = _config.o_auth_acg_credentials.clone_with(o_auth_token: o_auth_acg_token)
40
+ _config = _config.clone_with(o_auth_acg_credentials: o_auth_acg_credentials)
41
+
42
+ o_auth_ropcg_token = @client.o_auth_ropcg.fetch_token()
43
+ o_auth_ropcg_credentials = _config.o_auth_ropcg_credentials.clone_with(o_auth_token: o_auth_ropcg_token)
44
+ _config = _config.clone_with(o_auth_ropcg_credentials: o_auth_ropcg_credentials)
45
+ @client = Client.new(config: _config)
46
+ end
47
+ end
@@ -0,0 +1,110 @@
1
+ # multi_auth_sample
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ require_relative 'controller_test_base'
7
+
8
+ class AuthenticationControllerTests < ControllerTestBase
9
+ # Called only once for the class before any test has executed
10
+ def setup
11
+ setup_class
12
+ @controller = @client.authentication
13
+ @response_catcher = @controller.http_call_back
14
+ end
15
+
16
+ # Todo: Add description for test test_o_auth2_test
17
+ def test_o_auth2_test
18
+
19
+ # Perform the API call through the SDK function
20
+ result = @controller.o_auth_bearer_token()
21
+
22
+ # Test response code
23
+ assert_equal(200, @response_catcher.response.status_code)
24
+
25
+ # Test whether the captured response is as we expected
26
+ refute_nil(result)
27
+ assert_equal('You\'ve passed the test!', @response_catcher.response.raw_body)
28
+ end
29
+
30
+ # Todo: Add description for test test_custom_authentication_test
31
+ def test_custom_authentication_test
32
+
33
+ # Perform the API call through the SDK function
34
+ result = @controller.custom_authentication()
35
+
36
+ # Test response code
37
+ assert_equal(200, @response_catcher.response.status_code)
38
+
39
+ # Test whether the captured response is as we expected
40
+ refute_nil(result)
41
+ assert_equal('You\'ve passed the test!', @response_catcher.response.raw_body)
42
+ end
43
+
44
+ # Todo: Add description for test test_custom_query_param_test
45
+ def test_custom_query_param_test
46
+
47
+ # Perform the API call through the SDK function
48
+ result = @controller.custom_query_or_header_authentication()
49
+
50
+ # Test response code
51
+ assert_equal(200, @response_catcher.response.status_code)
52
+
53
+ # Test whether the captured response is as we expected
54
+ refute_nil(result)
55
+ assert_equal('You\'ve passed the test!', @response_catcher.response.raw_body)
56
+ end
57
+
58
+ # Todo: Add description for test test_o_auth_or_combination_test
59
+ def test_o_auth_or_combination_test
60
+
61
+ # Perform the API call through the SDK function
62
+ result = @controller.o_auth_grant_types_or_combinations()
63
+
64
+ # Test response code
65
+ assert_equal(200, @response_catcher.response.status_code)
66
+
67
+ # Test whether the captured response is as we expected
68
+ refute_nil(result)
69
+ assert_equal('You\'ve passed the test!', @response_catcher.response.raw_body)
70
+ end
71
+
72
+ # Todo: Add description for test test_check_service_status
73
+ def test_check_service_status
74
+
75
+ # Perform the API call through the SDK function
76
+ result = @controller.o_auth_client_credentials_grant()
77
+
78
+ # Test response code
79
+ assert_equal(200, @response_catcher.response.status_code)
80
+ end
81
+
82
+ # Todo: Add description for test test_basic_auth_and_api_key_and_api_header
83
+ def test_basic_auth_and_api_key_and_api_header
84
+
85
+ # Perform the API call through the SDK function
86
+ result = @controller.basic_auth_and_api_header_auth()
87
+
88
+ # Test response code
89
+ assert_equal(200, @response_catcher.response.status_code)
90
+
91
+ # Test whether the captured response is as we expected
92
+ refute_nil(result)
93
+ assert_equal('You\'ve passed the test!', @response_catcher.response.raw_body)
94
+ end
95
+
96
+ # Todo: Add description for test test_multiple_auth_or_combination_test
97
+ def test_multiple_auth_or_combination_test
98
+
99
+ # Perform the API call through the SDK function
100
+ result = @controller.multiple_auth_combination()
101
+
102
+ # Test response code
103
+ assert_equal(200, @response_catcher.response.status_code)
104
+
105
+ # Test whether the captured response is as we expected
106
+ refute_nil(result)
107
+ assert_equal('You\'ve passed the test!', @response_catcher.response.raw_body)
108
+ end
109
+
110
+ end
@@ -0,0 +1,19 @@
1
+ # multi_auth_sample
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ class HttpResponseCatcher < MultiAuthSample::HttpCallBack
7
+ attr_accessor :response
8
+
9
+ def on_before_request(request)
10
+ end
11
+
12
+ # Catching the response
13
+ def on_after_response(response)
14
+ @response = response
15
+ end
16
+ end
17
+
18
+
19
+
metadata ADDED
@@ -0,0 +1,154 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: multi-auth-project-sdk
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Subtain
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2024-02-15 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: apimatic_core_interfaces
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.2.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.2.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: apimatic_core
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.3.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.3.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: apimatic_faraday_client_adapter
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 0.1.0
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 0.1.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: minitest
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '5.14'
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: 5.14.1
65
+ type: :development
66
+ prerelease: false
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - "~>"
70
+ - !ruby/object:Gem::Version
71
+ version: '5.14'
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 5.14.1
75
+ - !ruby/object:Gem::Dependency
76
+ name: minitest-proveit
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '1.0'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '1.0'
89
+ description: this is testingpackage please ignore
90
+ email:
91
+ - syed.subtain@apimatic.io
92
+ executables: []
93
+ extensions: []
94
+ extra_rdoc_files: []
95
+ files:
96
+ - LICENSE
97
+ - README.md
98
+ - lib/multi_auth_sample.rb
99
+ - lib/multi_auth_sample/api_helper.rb
100
+ - lib/multi_auth_sample/client.rb
101
+ - lib/multi_auth_sample/configuration.rb
102
+ - lib/multi_auth_sample/controllers/authentication_controller.rb
103
+ - lib/multi_auth_sample/controllers/base_controller.rb
104
+ - lib/multi_auth_sample/controllers/o_auth_authorization_controller.rb
105
+ - lib/multi_auth_sample/exceptions/api_exception.rb
106
+ - lib/multi_auth_sample/exceptions/o_auth_provider_exception.rb
107
+ - lib/multi_auth_sample/http/auth/api_header.rb
108
+ - lib/multi_auth_sample/http/auth/api_key.rb
109
+ - lib/multi_auth_sample/http/auth/basic_auth.rb
110
+ - lib/multi_auth_sample/http/auth/custom_auth.rb
111
+ - lib/multi_auth_sample/http/auth/o_auth_acg.rb
112
+ - lib/multi_auth_sample/http/auth/o_auth_bearer_token.rb
113
+ - lib/multi_auth_sample/http/auth/o_auth_ccg.rb
114
+ - lib/multi_auth_sample/http/auth/o_auth_ropcg.rb
115
+ - lib/multi_auth_sample/http/http_call_back.rb
116
+ - lib/multi_auth_sample/http/http_method_enum.rb
117
+ - lib/multi_auth_sample/http/http_request.rb
118
+ - lib/multi_auth_sample/http/http_response.rb
119
+ - lib/multi_auth_sample/models/base_model.rb
120
+ - lib/multi_auth_sample/models/o_auth_provider_error_enum.rb
121
+ - lib/multi_auth_sample/models/o_auth_scope_o_auth_acg_enum.rb
122
+ - lib/multi_auth_sample/models/o_auth_token.rb
123
+ - lib/multi_auth_sample/models/service_status.rb
124
+ - lib/multi_auth_sample/models/suite_code_enum.rb
125
+ - lib/multi_auth_sample/models/user.rb
126
+ - lib/multi_auth_sample/utilities/date_time_helper.rb
127
+ - lib/multi_auth_sample/utilities/file_wrapper.rb
128
+ - test/controllers/controller_test_base.rb
129
+ - test/controllers/test_authentication_controller.rb
130
+ - test/http_response_catcher.rb
131
+ homepage: https://apimatic.io
132
+ licenses:
133
+ - MIT
134
+ metadata: {}
135
+ post_install_message:
136
+ rdoc_options: []
137
+ require_paths:
138
+ - lib
139
+ required_ruby_version: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - ">="
142
+ - !ruby/object:Gem::Version
143
+ version: '2.6'
144
+ required_rubygems_version: !ruby/object:Gem::Requirement
145
+ requirements:
146
+ - - ">="
147
+ - !ruby/object:Gem::Version
148
+ version: '0'
149
+ requirements: []
150
+ rubygems_version: 3.1.6
151
+ signing_key:
152
+ specification_version: 4
153
+ summary: this is MultiAuth sdk
154
+ test_files: []