Skip to content

Commit 4039a70

Browse files
authored
Tests (#19)
* Add faraday-retry as dependency * Configure simplecov * Load only blank from active support * Cleanup * Fix dependencies * Cleanup * Configure rubocop * Update rubocop config * Add rubocop * Configure rubocop * Update rubocop config * Add rubocop-disable_syntax gem * Update rubocop config * Add rubocop-performance gem * Rename * Cleanup * Update rubocop config * Cleanup tests * Cleanup * Cleanup * Cleanup * Cleanup * Tests * Params
1 parent 033b0e7 commit 4039a70

File tree

9 files changed

+537
-42
lines changed

9 files changed

+537
-42
lines changed

.rubocop.yml

Lines changed: 367 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,367 @@
1+
require:
2+
- rubocop-disable_syntax
3+
4+
plugins:
5+
- rubocop-performance
6+
- rubocop-rake
7+
- rubocop-rspec
8+
9+
AllCops:
10+
TargetRubyVersion: 3.1
11+
NewCops: enable
12+
13+
# We use standard as a linter and formatter instead Rubocop.
14+
# Also, we are explicitly disable all rubocop rules what
15+
# already enabled in standard. And standard-performance.
16+
17+
# Standard rules. Style:
18+
19+
# Enforced by standard. Disable.
20+
Style/StringLiterals:
21+
Enabled: false
22+
23+
# Enforced by standard. Disable.
24+
Style/HashSyntax:
25+
Enabled: false
26+
27+
# Enforced by standard. Disable.
28+
Style/NestedParenthesizedCalls:
29+
Enabled: false
30+
31+
# Enforced by standard. Disable.
32+
Style/RedundantRegexpArgument:
33+
Enabled: false
34+
35+
# Enforced by standard. Disable.
36+
Style/PercentLiteralDelimiters:
37+
Enabled: false
38+
39+
# Enforced by standard. Disable.
40+
Style/RedundantBegin:
41+
Enabled: false
42+
43+
# Enforced by standard. Disable.
44+
Style/SuperWithArgsParentheses:
45+
Enabled: false
46+
47+
# Enforced by standard. Disable.
48+
Style/Encoding:
49+
Enabled: false
50+
51+
# Enforced by standard. Disable.
52+
Style/NumericLiteralPrefix:
53+
Enabled: false
54+
55+
# Enforced by standard. Disable.
56+
Style/RedundantParentheses:
57+
Enabled: false
58+
59+
# Enforced by standard. Disable.
60+
Style/EmptyMethod:
61+
Enabled: false
62+
63+
# Enforced by standard. Disable.
64+
Style/SingleLineMethods:
65+
Enabled: false
66+
67+
# Enforced by standard. Disable.
68+
Style/SafeNavigation:
69+
Enabled: false
70+
71+
# Enforced by standard. Disable.
72+
Style/RescueStandardError:
73+
Enabled: false
74+
75+
# Enforced by standard. Disable.
76+
Style/RedundantSelf:
77+
Enabled: false
78+
79+
# Enforced by standard. Disable.
80+
Style/TernaryParentheses:
81+
Enabled: false
82+
83+
# Enforced by standard. Disable.
84+
Style/RedundantLineContinuation:
85+
Enabled: false
86+
87+
# Enforced by standard. Disable.
88+
Style/SlicingWithRange:
89+
Enabled: false
90+
91+
# Enforced by standard. Disable.
92+
Style/MultilineIfModifier:
93+
Enabled: false
94+
95+
# Enforced by standard. Disable.
96+
Style/RedundantCondition:
97+
Enabled: false
98+
99+
# Enforced by standard. Disable.
100+
Style/RedundantInterpolation:
101+
Enabled: false
102+
103+
# Enforced by standard. Disable.
104+
Style/OrAssignment:
105+
Enabled: false
106+
107+
# Enforced by standard. Disable.
108+
Style/ConditionalAssignment:
109+
Enabled: false
110+
111+
# Enforced by standard. Disable.
112+
Style/ItAssignment:
113+
Enabled: false
114+
115+
# Enforced by standard. Disable.
116+
Style/EachWithObject:
117+
Enabled: false
118+
119+
# Enforced by standard. Disable.
120+
Style/GlobalStdStream:
121+
Enabled: false
122+
123+
# Enforced by standard. Disable.
124+
Style/StringLiteralsInInterpolation:
125+
Enabled: false
126+
127+
# Disabled as in standard.
128+
Style/HashAsLastArrayItem:
129+
Enabled: false
130+
131+
# Enforced by standard. Disable.
132+
Style/Alias:
133+
Enabled: false
134+
135+
# Standard rules. Layout:
136+
137+
# Enforced by standard. Disable.
138+
Layout/HashAlignment:
139+
Enabled: false
140+
141+
# Enforced by standard. Disable.
142+
Layout/FirstArrayElementIndentation:
143+
Enabled: false
144+
145+
# Enforced by standard. Disable.
146+
Layout/SpaceInsideHashLiteralBraces:
147+
Enabled: false
148+
149+
# Enforced by standard. Disable.
150+
Layout/SpaceInsideStringInterpolation:
151+
Enabled: false
152+
153+
# Enforced by standard. Disable.
154+
Layout/DotPosition:
155+
Enabled: false
156+
157+
# Enforced by standard. Disable.
158+
Layout/ExtraSpacing:
159+
Enabled: false
160+
161+
# Enforced by standard. Disable.
162+
Layout/ArgumentAlignment:
163+
Enabled: false
164+
165+
# Enforced by standard. Disable.
166+
Layout/MultilineMethodCallBraceLayout:
167+
Enabled: false
168+
169+
# Enforced by standard. Disable.
170+
Layout/AccessModifierIndentation:
171+
Enabled: false
172+
173+
# Enforced by standard. Disable.
174+
Layout/FirstHashElementIndentation:
175+
Enabled: false
176+
177+
# Enforced by standard. Disable.
178+
Layout/IndentationWidth:
179+
Enabled: false
180+
181+
# Enforced by standard. Disable.
182+
Layout/ElseAlignment:
183+
Enabled: false
184+
185+
# Enforced by standard. Disable.
186+
Layout/EndAlignment:
187+
Enabled: false
188+
189+
# Enforced by standard. Disable.
190+
Layout/MultilineHashBraceLayout:
191+
Enabled: false
192+
193+
# Enforced by standard. Disable.
194+
Layout/EmptyLineBetweenDefs:
195+
Enabled: false
196+
197+
# Enforced by standard. Disable.
198+
Layout/MultilineArrayBraceLayout:
199+
Enabled: false
200+
201+
# Enforced by standard. Disable.
202+
Layout/EmptyLineAfterMagicComment:
203+
Enabled: false
204+
205+
# Enforced by standard. Disable.
206+
Layout/SpaceAroundOperators:
207+
Enabled: false
208+
209+
# Enforced by standard. Disable.
210+
Layout/ArrayAlignment:
211+
Enabled: false
212+
213+
# Enforced by standard. Disable.
214+
Layout/AssignmentIndentation:
215+
Enabled: false
216+
217+
# Enforced by standard. Disable.
218+
Layout/ClosingParenthesisIndentation:
219+
Enabled: false
220+
221+
# Enforced by standard. Disable.
222+
Layout/LineLength:
223+
Enabled: false
224+
225+
# Enforced by standard. Disable.
226+
Layout/MultilineMethodCallIndentation:
227+
Enabled: false
228+
229+
# Enforced by standard. Disable.
230+
Layout/CaseIndentation:
231+
Enabled: false
232+
233+
# Standard rules. Lint:
234+
235+
# Enforced by standard. Disable.
236+
Lint/ImplicitStringConcatenation:
237+
Enabled: false
238+
239+
# Enforced by standard. Disable.
240+
Lint/TripleQuotes:
241+
Enabled: false
242+
243+
# Enforced by standard. Disable.
244+
Lint/IneffectiveAccessModifier:
245+
Enabled: false
246+
247+
# Enforced by standard. Disable.
248+
Lint/SymbolConversion:
249+
Enabled: false
250+
251+
# Enforced by rubocop and standard
252+
Lint/CopDirectiveSyntax:
253+
Enabled: true
254+
255+
# Enforced by standard. Disable.
256+
Lint/DuplicateMethods:
257+
Enabled: false
258+
259+
# Enforced by standard. Disable.
260+
Lint/ConstantDefinitionInBlock:
261+
Enabled: false
262+
263+
# Enforced by standard. Disable.
264+
Lint/UselessTimes:
265+
Enabled: false
266+
267+
# Standard-performance rules.
268+
269+
# Enforced by standard-performance. Disable.
270+
Performance/Detect:
271+
Enabled: false
272+
273+
# Enforced by standard-performance. Disable.
274+
Performance/StringIdentifierArgument:
275+
Enabled: false
276+
277+
# Enforced by standard-performance. Disable.
278+
Performance/RegexpMatch:
279+
Enabled: false
280+
281+
# Always enable rubocop Security:
282+
283+
# Enforced by rubocop and standard
284+
Security/JSONLoad:
285+
Enabled: true
286+
287+
# Our rubocop rules
288+
289+
# Bundler rules.
290+
291+
Bundler/OrderedGems:
292+
Enabled: false
293+
294+
# Gemspec rules
295+
296+
Gemspec/OrderedDependencies:
297+
Enabled: false
298+
299+
# Style rules
300+
301+
# Don't allow %i[foo bar baz]
302+
Style/SymbolArray:
303+
Enabled: true
304+
EnforcedStyle: brackets
305+
306+
# Don't allow %w[foo bar baz]
307+
Style/WordArray:
308+
Enabled: true
309+
EnforcedStyle: brackets
310+
311+
# Disable warnings like "Missing top-level documentation comment for"
312+
Style/Documentation:
313+
Enabled: false
314+
315+
# Disable as in standard.
316+
Style/ArgumentsForwarding:
317+
Enabled: false
318+
319+
# RSpec rules
320+
321+
# Prefer eq over be.
322+
RSpec/BeEq:
323+
Enabled: false
324+
325+
# Prefer eq over eql.
326+
RSpec/BeEql:
327+
Enabled: false
328+
329+
# We prefer to use `expect` over `allow`.
330+
RSpec/StubbedMock:
331+
Enabled: false
332+
333+
# We prefer multiple before blocks in tests.
334+
RSpec/ScatteredSetup:
335+
Enabled: false
336+
337+
# We use `expect` in before hooks.
338+
RSpec/ExpectInHook:
339+
Enabled: false
340+
341+
# We use item_1, item_2, etc. Disable.
342+
RSpec/IndexedLet:
343+
Enabled: false
344+
345+
# We don't use named subject's
346+
RSpec/NamedSubject:
347+
Enabled: false
348+
349+
# Naming rules:
350+
351+
# Disable anonymous block forwarding.
352+
Naming/BlockForwarding:
353+
Enabled: true
354+
EnforcedStyle: explicit
355+
356+
# Enable and exclude specific files.
357+
Naming/FileName:
358+
Enabled: true
359+
360+
# Disabled syntax:
361+
362+
# Disable shorthand hash syntax like: ({ x:, y: })
363+
# Disable % style literals
364+
Style/DisableSyntax:
365+
DisableSyntax:
366+
- shorthand_hash_syntax
367+
- percent_literals

Gemfile

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,12 @@ source "https://rubygems.org"
44

55
gemspec
66

7+
gem "rake"
8+
gem "rspec"
79
gem "simplecov", require: false
8-
gem "standard"
10+
gem "standard", require: false
11+
gem "rubocop", require: false
12+
gem "rubocop-disable_syntax", require: false
13+
gem "rubocop-performance", require: false
14+
gem "rubocop-rake", require: false
15+
gem "rubocop-rspec", require: false

0 commit comments

Comments
 (0)