multi-auth-project-sdk 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
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: []