Skip to content

Commit 3091ead

Browse files
committed
update sample and add config for feature
1 parent 6b4a752 commit 3091ead

File tree

32 files changed

+2323
-16
lines changed

32 files changed

+2323
-16
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
generatorName: ruby
2+
outputDir: samples/openapi3/client/extensions/x-auth-id-alias/ruby-client
3+
inputSpec: modules/openapi-generator/src/test/resources/3_0/extensions/x-auth-id-alias.yaml
4+
templateDir: modules/openapi-generator/src/main/resources/ruby-client
5+
additionalProperties:
6+
gemName: x_auth_id_alias
7+
gemVersion: 1.0.0
8+
moduleName: XAuthIDAlias

samples/client/petstore/ruby-faraday/lib/petstore/api_client.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -313,7 +313,7 @@ def update_params_for_auth!(header_params, query_params, auth_names)
313313
case auth_setting[:in]
314314
when 'header' then header_params[auth_setting[:key]] = auth_setting[:value]
315315
when 'query' then query_params[auth_setting[:key]] = auth_setting[:value]
316-
else fail ArgumentError, 'Authentication token must be in `query` of `header`'
316+
else fail ArgumentError, 'Authentication token must be in `query` or `header`'
317317
end
318318
end
319319
end

samples/client/petstore/ruby-faraday/lib/petstore/configuration.rb

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -192,11 +192,13 @@ def base_url(operation = nil)
192192

193193
# Gets API key (with prefix if set).
194194
# @param [String] param_name the parameter name of API key auth
195-
def api_key_with_prefix(param_name)
195+
def api_key_with_prefix(param_name, param_alias = nil)
196+
key = @api_key[param_name]
197+
key = @api_key.fetch(param_alias, key) unless param_alias.nil?
196198
if @api_key_prefix[param_name]
197-
"#{@api_key_prefix[param_name]} #{@api_key[param_name]}"
199+
"#{@api_key_prefix[param_name]} #{key}"
198200
else
199-
@api_key[param_name]
201+
key
200202
end
201203
end
202204

samples/client/petstore/ruby/lib/petstore/api_client.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@ def update_params_for_auth!(header_params, query_params, auth_names)
308308
case auth_setting[:in]
309309
when 'header' then header_params[auth_setting[:key]] = auth_setting[:value]
310310
when 'query' then query_params[auth_setting[:key]] = auth_setting[:value]
311-
else fail ArgumentError, 'Authentication token must be in `query` of `header`'
311+
else fail ArgumentError, 'Authentication token must be in `query` or `header`'
312312
end
313313
end
314314
end

samples/client/petstore/ruby/lib/petstore/configuration.rb

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -197,11 +197,13 @@ def base_url(operation = nil)
197197

198198
# Gets API key (with prefix if set).
199199
# @param [String] param_name the parameter name of API key auth
200-
def api_key_with_prefix(param_name)
200+
def api_key_with_prefix(param_name, param_alias = nil)
201+
key = @api_key[param_name]
202+
key = @api_key.fetch(param_alias, key) unless param_alias.nil?
201203
if @api_key_prefix[param_name]
202-
"#{@api_key_prefix[param_name]} #{@api_key[param_name]}"
204+
"#{@api_key_prefix[param_name]} #{key}"
203205
else
204-
@api_key[param_name]
206+
key
205207
end
206208
end
207209

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Generated by: https://openapi-generator.tech
2+
#
3+
4+
*.gem
5+
*.rbc
6+
/.config
7+
/coverage/
8+
/InstalledFiles
9+
/pkg/
10+
/spec/reports/
11+
/spec/examples.txt
12+
/test/tmp/
13+
/test/version_tmp/
14+
/tmp/
15+
16+
## Specific to RubyMotion:
17+
.dat*
18+
.repl_history
19+
build/
20+
21+
## Documentation cache and generated files:
22+
/.yardoc/
23+
/_yardoc/
24+
/doc/
25+
/rdoc/
26+
27+
## Environment normalization:
28+
/.bundle/
29+
/vendor/bundle
30+
/lib/bundler/man/
31+
32+
# for a library or gem, you might want to ignore these files since the code is
33+
# intended to run in multiple environments; otherwise, check them in:
34+
# Gemfile.lock
35+
# .ruby-version
36+
# .ruby-gemset
37+
38+
# unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
39+
.rvmrc
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# OpenAPI Generator Ignore
2+
# Generated by openapi-generator https://github.com/openapitools/openapi-generator
3+
4+
# Use this file to prevent files from being overwritten by the generator.
5+
# The patterns follow closely to .gitignore or .dockerignore.
6+
7+
# As an example, the C# client generator defines ApiClient.cs.
8+
# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line:
9+
#ApiClient.cs
10+
11+
# You can match any string of characters against a directory, file or extension with a single asterisk (*):
12+
#foo/*/qux
13+
# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux
14+
15+
# You can recursively match patterns against a directory, file or extension with a double asterisk (**):
16+
#foo/**/qux
17+
# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux
18+
19+
# You can also negate patterns with an exclamation (!).
20+
# For example, you can ignore all files in a docs folder with the file extension .md:
21+
#docs/*.md
22+
# Then explicitly reverse the ignore rule for a single file:
23+
#!docs/README.md
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
.gitignore
2+
.rspec
3+
.rubocop.yml
4+
.travis.yml
5+
Gemfile
6+
README.md
7+
Rakefile
8+
docs/UsageApi.md
9+
git_push.sh
10+
lib/x_auth_id_alias.rb
11+
lib/x_auth_id_alias/api/usage_api.rb
12+
lib/x_auth_id_alias/api_client.rb
13+
lib/x_auth_id_alias/api_error.rb
14+
lib/x_auth_id_alias/configuration.rb
15+
lib/x_auth_id_alias/configuration.rb
16+
lib/x_auth_id_alias/version.rb
17+
spec/api_client_spec.rb
18+
spec/configuration_spec.rb
19+
spec/spec_helper.rb
20+
x_auth_id_alias.gemspec
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
5.0.0-SNAPSHOT
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
--color
2+
--require spec_helper
Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
# This file is based on https://github.com/rails/rails/blob/master/.rubocop.yml (MIT license)
2+
# Automatically generated by OpenAPI Generator (https://openapi-generator.tech)
3+
AllCops:
4+
TargetRubyVersion: 2.4
5+
# RuboCop has a bunch of cops enabled by default. This setting tells RuboCop
6+
# to ignore them, so only the ones explicitly set in this file are enabled.
7+
DisabledByDefault: true
8+
Exclude:
9+
- '**/templates/**/*'
10+
- '**/vendor/**/*'
11+
- 'actionpack/lib/action_dispatch/journey/parser.rb'
12+
13+
# Prefer &&/|| over and/or.
14+
Style/AndOr:
15+
Enabled: true
16+
17+
# Align `when` with `case`.
18+
Layout/CaseIndentation:
19+
Enabled: true
20+
21+
# Align comments with method definitions.
22+
Layout/CommentIndentation:
23+
Enabled: true
24+
25+
Layout/ElseAlignment:
26+
Enabled: true
27+
28+
Layout/EmptyLineAfterMagicComment:
29+
Enabled: true
30+
31+
# In a regular class definition, no empty lines around the body.
32+
Layout/EmptyLinesAroundClassBody:
33+
Enabled: true
34+
35+
# In a regular method definition, no empty lines around the body.
36+
Layout/EmptyLinesAroundMethodBody:
37+
Enabled: true
38+
39+
# In a regular module definition, no empty lines around the body.
40+
Layout/EmptyLinesAroundModuleBody:
41+
Enabled: true
42+
43+
Layout/FirstArgumentIndentation:
44+
Enabled: true
45+
46+
# Use Ruby >= 1.9 syntax for hashes. Prefer { a: :b } over { :a => :b }.
47+
Style/HashSyntax:
48+
Enabled: false
49+
50+
# Method definitions after `private` or `protected` isolated calls need one
51+
# extra level of indentation.
52+
Layout/IndentationConsistency:
53+
Enabled: true
54+
EnforcedStyle: indented_internal_methods
55+
56+
# Two spaces, no tabs (for indentation).
57+
Layout/IndentationWidth:
58+
Enabled: true
59+
60+
Layout/LeadingCommentSpace:
61+
Enabled: true
62+
63+
Layout/SpaceAfterColon:
64+
Enabled: true
65+
66+
Layout/SpaceAfterComma:
67+
Enabled: true
68+
69+
Layout/SpaceAroundEqualsInParameterDefault:
70+
Enabled: true
71+
72+
Layout/SpaceAroundKeyword:
73+
Enabled: true
74+
75+
Layout/SpaceAroundOperators:
76+
Enabled: true
77+
78+
Layout/SpaceBeforeComma:
79+
Enabled: true
80+
81+
Layout/SpaceBeforeFirstArg:
82+
Enabled: true
83+
84+
Style/DefWithParentheses:
85+
Enabled: true
86+
87+
# Defining a method with parameters needs parentheses.
88+
Style/MethodDefParentheses:
89+
Enabled: true
90+
91+
Style/FrozenStringLiteralComment:
92+
Enabled: false
93+
EnforcedStyle: always
94+
95+
# Use `foo {}` not `foo{}`.
96+
Layout/SpaceBeforeBlockBraces:
97+
Enabled: true
98+
99+
# Use `foo { bar }` not `foo {bar}`.
100+
Layout/SpaceInsideBlockBraces:
101+
Enabled: true
102+
103+
# Use `{ a: 1 }` not `{a:1}`.
104+
Layout/SpaceInsideHashLiteralBraces:
105+
Enabled: true
106+
107+
Layout/SpaceInsideParens:
108+
Enabled: true
109+
110+
# Check quotes usage according to lint rule below.
111+
#Style/StringLiterals:
112+
# Enabled: true
113+
# EnforcedStyle: single_quotes
114+
115+
# Detect hard tabs, no hard tabs.
116+
Layout/IndentationStyle:
117+
Enabled: true
118+
119+
# Blank lines should not have any spaces.
120+
Layout/TrailingEmptyLines:
121+
Enabled: true
122+
123+
# No trailing whitespace.
124+
Layout/TrailingWhitespace:
125+
Enabled: false
126+
127+
# Use quotes for string literals when they are enough.
128+
Style/RedundantPercentQ:
129+
Enabled: true
130+
131+
# Align `end` with the matching keyword or starting expression except for
132+
# assignments, where it should be aligned with the LHS.
133+
Layout/EndAlignment:
134+
Enabled: true
135+
EnforcedStyleAlignWith: variable
136+
AutoCorrect: true
137+
138+
# Use my_method(my_arg) not my_method( my_arg ) or my_method my_arg.
139+
Lint/RequireParentheses:
140+
Enabled: true
141+
142+
Style/RedundantReturn:
143+
Enabled: true
144+
AllowMultipleReturnValues: true
145+
146+
Style/Semicolon:
147+
Enabled: true
148+
AllowAsExpressionSeparator: true
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
language: ruby
2+
cache: bundler
3+
rvm:
4+
- 2.3
5+
- 2.4
6+
- 2.5
7+
script:
8+
- bundle install --path vendor/bundle
9+
- bundle exec rspec
10+
- gem build x_auth_id_alias.gemspec
11+
- gem install ./x_auth_id_alias-1.0.0.gem
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
source 'https://rubygems.org'
2+
3+
gemspec
4+
5+
group :development, :test do
6+
gem 'rake', '~> 13.0.1'
7+
gem 'pry-byebug'
8+
gem 'rubocop', '~> 0.66.0'
9+
end

0 commit comments

Comments
 (0)