uiza_framgia_test 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. checksums.yaml +7 -0
  2. data/.rubocop.yml +535 -0
  3. data/.rubocop_disable.yml +78 -0
  4. data/.rubocop_enable.yml +786 -0
  5. data/CHANGELOG.md +29 -0
  6. data/CODE_OF_CONDUCT.md +74 -0
  7. data/CONTRIBUTORS.txt +3 -0
  8. data/Gemfile +6 -0
  9. data/Gemfile.lock +65 -0
  10. data/History.txt +1 -0
  11. data/LICENSE.txt +21 -0
  12. data/PULL_REQUEST_TEMPLATE.md +44 -0
  13. data/README.md +181 -0
  14. data/Rakefile +6 -0
  15. data/bin/console +14 -0
  16. data/bin/setup +8 -0
  17. data/doc/ANALYTIC.md +5 -0
  18. data/doc/CALLBACK.md +4 -0
  19. data/doc/CATEGORY.md +289 -0
  20. data/doc/EMBED_METADATA.md +4 -0
  21. data/doc/ENTITY.md +486 -0
  22. data/doc/ERRORS_CODE.md +60 -0
  23. data/doc/LIVE_STREAMING.md +6 -0
  24. data/doc/STORAGE.md +195 -0
  25. data/lib/uiza.rb +42 -0
  26. data/lib/uiza/api_operation/add.rb +16 -0
  27. data/lib/uiza/api_operation/create.rb +16 -0
  28. data/lib/uiza/api_operation/delete.rb +15 -0
  29. data/lib/uiza/api_operation/list.rb +14 -0
  30. data/lib/uiza/api_operation/remove.rb +15 -0
  31. data/lib/uiza/api_operation/retrieve.rb +15 -0
  32. data/lib/uiza/api_operation/update.rb +16 -0
  33. data/lib/uiza/api_resource/category_resource.rb +33 -0
  34. data/lib/uiza/api_resource/entity_resource.rb +41 -0
  35. data/lib/uiza/api_resource/storage_resource.rb +21 -0
  36. data/lib/uiza/category.rb +44 -0
  37. data/lib/uiza/entity.rb +68 -0
  38. data/lib/uiza/error/bad_request_error.rb +8 -0
  39. data/lib/uiza/error/client_error.rb +8 -0
  40. data/lib/uiza/error/internal_server_error.rb +8 -0
  41. data/lib/uiza/error/not_found_error.rb +8 -0
  42. data/lib/uiza/error/server_error.rb +8 -0
  43. data/lib/uiza/error/service_unavailable_error.rb +8 -0
  44. data/lib/uiza/error/uiza_error.rb +18 -0
  45. data/lib/uiza/error/unauthorized_error.rb +8 -0
  46. data/lib/uiza/error/unprocessable_error.rb +8 -0
  47. data/lib/uiza/storage.rb +17 -0
  48. data/lib/uiza/uiza_client.rb +82 -0
  49. data/lib/uiza/version.rb +3 -0
  50. data/uiza.gemspec +36 -0
  51. metadata +137 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: c1903803e41997832c45692da6463dcee684634aa5b3733ae6b26e6b3ce5b848
4
+ data.tar.gz: e35238a9a79e13af4a51be9452343a65efbae9b024b523386ac87a7b0273a606
5
+ SHA512:
6
+ metadata.gz: 14b5a12212ded8ebfe473bd618d5c908c58c96c41399af3964c224d0341abcfc8c7bd0a605a7a1513aea61093752b426f965beb172d6519b6f3ad899f32b917e
7
+ data.tar.gz: 3d28c0fa4e853075fe05523473e055bf030b5fc6c9f149310e02394b0daba29465f5963732b68022547d876692df0d6a592755bf98e929688aa1f12f77f582fb
data/.rubocop.yml ADDED
@@ -0,0 +1,535 @@
1
+ # This is rubocop configuration file for Framgia's coding style. Enabling and disabling is configured
2
+ # in separate files. This file adds all other parameters apart from Enabled.
3
+
4
+ # Put the following files into the same directory as this file.
5
+ inherit_from:
6
+ - .rubocop_enable.yml
7
+ - .rubocop_disable.yml
8
+
9
+ # Common configuration.
10
+ AllCops:
11
+ Exclude:
12
+ - 'vendor/**/*'
13
+ - 'config/unicorn.rb'
14
+ - 'bin/*'
15
+ - 'db/*'
16
+ - 'spec/*'
17
+ - 'uiza.gemspec'
18
+
19
+ # Indent private/protected/public as deep as method definitions
20
+ Layout/AccessModifierIndentation:
21
+ EnforcedStyle: indent
22
+ SupportedStyles:
23
+ - outdent
24
+ - indent
25
+
26
+ # Align the elements of a hash literal if they span more than one line.
27
+ Layout/AlignHash:
28
+ # Alignment of entries using hash rocket as separator. Valid values are:
29
+ #
30
+ # key - left alignment of keys
31
+ # 'a' => 2
32
+ # 'bb' => 3
33
+ # separator - alignment of hash rockets, keys are right aligned
34
+ # 'a' => 2
35
+ # 'bb' => 3
36
+ # table - left alignment of keys, hash rockets, and values
37
+ # 'a' => 2
38
+ # 'bb' => 3
39
+ EnforcedHashRocketStyle: key
40
+ # Alignment of entries using colon as separator. Valid values are:
41
+ #
42
+ # key - left alignment of keys
43
+ # a: 0
44
+ # bb: 1
45
+ # separator - alignment of colons, keys are right aligned
46
+ # a: 0
47
+ # bb: 1
48
+ # table - left alignment of keys and values
49
+ # a: 0
50
+ # bb: 1
51
+ EnforcedColonStyle: key
52
+ # Select whether hashes that are the last argument in a method call should be
53
+ # inspected? Valid values are:
54
+ #
55
+ # always_inspect - Inspect both implicit and explicit hashes.
56
+ # Registers an offense for:
57
+ # function(a: 1,
58
+ # b: 2)
59
+ # Registers an offense for:
60
+ # function({a: 1,
61
+ # b: 2})
62
+ # always_ignore - Ignore both implicit and explicit hashes.
63
+ # Accepts:
64
+ # function(a: 1,
65
+ # b: 2)
66
+ # Accepts:
67
+ # function({a: 1,
68
+ # b: 2})
69
+ # ignore_implicit - Ignore only implicit hashes.
70
+ # Accepts:
71
+ # function(a: 1,
72
+ # b: 2)
73
+ # Registers an offense for:
74
+ # function({a: 1,
75
+ # b: 2})
76
+ # ignore_explicit - Ignore only explicit hashes.
77
+ # Accepts:
78
+ # function({a: 1,
79
+ # b: 2})
80
+ # Registers an offense for:
81
+ # function(a: 1,
82
+ # b: 2)
83
+ EnforcedLastArgumentHashStyle: ignore_implicit
84
+ SupportedLastArgumentHashStyles:
85
+ - always_inspect
86
+ - always_ignore
87
+ - ignore_implicit
88
+ - ignore_explicit
89
+
90
+ Layout/AlignParameters:
91
+ # Alignment of parameters in multi-line method calls.
92
+ #
93
+ # The `with_first_parameter` style aligns the following lines along the same column
94
+ # as the first parameter.
95
+ #
96
+ # method_call(a,
97
+ # b)
98
+ #
99
+ # The `with_fixed_indentation` style aligns the following lines with one
100
+ # level of indentation relative to the start of the line with the method call.
101
+ #
102
+ # method_call(a,
103
+ # b)
104
+ EnforcedStyle: with_fixed_indentation
105
+ SupportedStyles:
106
+ - with_first_parameter
107
+ - with_fixed_indentation
108
+
109
+ Metrics/BlockNesting:
110
+ Max: 3
111
+
112
+ Style/BracesAroundHashParameters:
113
+ EnforcedStyle: no_braces
114
+ SupportedStyles:
115
+ - braces
116
+ - no_braces
117
+
118
+ # Indentation of `when`.
119
+ Layout/CaseIndentation:
120
+ EnforcedStyle: case
121
+ SupportedStyles:
122
+ - case
123
+ - end
124
+ IndentOneStep: false
125
+
126
+ Style/ClassAndModuleChildren:
127
+ # Checks the style of children definitions at classes and modules.
128
+ #
129
+ # Basically there are two different styles:
130
+ #
131
+ # `nested` - have each child on a separate line
132
+ # class Foo
133
+ # class Bar
134
+ # end
135
+ # end
136
+ #
137
+ # `compact` - combine definitions as much as possible
138
+ # class Foo::Bar
139
+ # end
140
+ #
141
+ # The compact style is only forced, for classes / modules with one child.
142
+ EnforcedStyle: nested
143
+ SupportedStyles:
144
+ - nested
145
+ - compact
146
+
147
+ Style/ClassCheck:
148
+ EnforcedStyle: is_a?
149
+ SupportedStyles:
150
+ - is_a?
151
+ - kind_of?
152
+
153
+ Metrics/ClassLength:
154
+ CountComments: false # count full line comments?
155
+ Max: 100
156
+
157
+ # Align with the style guide.
158
+ Style/CollectionMethods:
159
+ # Mapping from undesired method to desired_method
160
+ # e.g. to use `detect` over `find`:
161
+ #
162
+ # CollectionMethods:
163
+ # PreferredMethods:
164
+ # find: detect
165
+ PreferredMethods:
166
+ collect: 'map'
167
+ collect!: 'map!'
168
+ inject: 'reduce'
169
+ detect: 'find'
170
+ find_all: 'select'
171
+
172
+ # Checks formatting of special comments
173
+ Style/CommentAnnotation:
174
+ Keywords:
175
+ - TODO
176
+ - FIXME
177
+ - OPTIMIZE
178
+ - HACK
179
+ - REVIEW
180
+
181
+ # Avoid complex methods.
182
+ Metrics/CyclomaticComplexity:
183
+ Max: 6
184
+
185
+ # Multi-line method chaining should be done with leading dots.
186
+ Layout/DotPosition:
187
+ EnforcedStyle: leading
188
+ SupportedStyles:
189
+ - leading
190
+ - trailing
191
+
192
+ # Use empty lines between defs.
193
+ Layout/EmptyLineBetweenDefs:
194
+ # If true, this parameter means that single line method definitions don't
195
+ # need an empty line between them.
196
+ AllowAdjacentOneLineDefs: false
197
+
198
+ Layout/EmptyLinesAroundBlockBody:
199
+ EnforcedStyle: no_empty_lines
200
+ SupportedStyles:
201
+ - no_empty_lines
202
+
203
+ Layout/EmptyLinesAroundClassBody:
204
+ EnforcedStyle: no_empty_lines
205
+ SupportedStyles:
206
+ - no_empty_lines
207
+
208
+ Layout/EmptyLinesAroundModuleBody:
209
+ EnforcedStyle: no_empty_lines
210
+ SupportedStyles:
211
+ - no_empty_lines
212
+
213
+ Naming:
214
+ Exclude:
215
+ - '**/Rakefile'
216
+ - '**/Gemfile'
217
+ - '**/Capfile'
218
+
219
+ # Checks use of for or each in multiline loops.
220
+ Style/For:
221
+ EnforcedStyle: each
222
+ SupportedStyles:
223
+ - for
224
+ - each
225
+
226
+ # Enforce the method used for string formatting.
227
+ Style/FormatString:
228
+ EnforcedStyle: format
229
+ SupportedStyles:
230
+ - format
231
+ - sprintf
232
+ - percent
233
+
234
+ # Built-in global variables are allowed by default.
235
+ Style/GlobalVars:
236
+ AllowedVariables: []
237
+
238
+ # `MinBodyLength` defines the number of lines of the a body of an if / unless
239
+ # needs to have to trigger this cop
240
+ Style/GuardClause:
241
+ MinBodyLength: 1
242
+
243
+ Style/HashSyntax:
244
+ EnforcedStyle: ruby19
245
+ SupportedStyles:
246
+ - ruby19
247
+ - hash_rockets
248
+
249
+ Metrics/LineLength:
250
+ Max: 120
251
+
252
+ # Checks the indentation of the first key in a hash literal.
253
+ Layout/IndentHash:
254
+ # The value `special_inside_parentheses` means that hash literals with braces
255
+ # that have their opening brace on the same line as a surrounding opening
256
+ # round parenthesis, shall have their first key indented relative to the
257
+ # first position inside the parenthesis.
258
+ # The value `consistent` means that the indentation of the first key shall
259
+ # always be relative to the first position of the line where the opening
260
+ # brace is.
261
+ EnforcedStyle: special_inside_parentheses
262
+ SupportedStyles:
263
+ - special_inside_parentheses
264
+ - consistent
265
+
266
+ Style/LambdaCall:
267
+ EnforcedStyle: call
268
+ SupportedStyles:
269
+ - call
270
+ - braces
271
+
272
+ Metrics/LineLength:
273
+ Max: 120
274
+ AllowURI: true
275
+ Exclude:
276
+ - config/routes.rb
277
+
278
+
279
+ Style/Next:
280
+ # With `always` all conditions at the end of an iteration needs to be
281
+ # replace by next - with `skip_modifier_ifs` the modifier if like this one
282
+ # are ignored: [1, 2].each { |a| return 'yes' if a == 1 }
283
+ EnforcedStyle: skip_modifier_ifs
284
+ SupportedStyles:
285
+ - skip_modifier_ifs
286
+ - always
287
+
288
+ Style/NonNilCheck:
289
+ # With `IncludeSemanticChanges` set to `true`, this cop reports offenses for
290
+ # `!x.nil?` and autocorrects that and `x != nil` to solely `x`, which is
291
+ # **usually** OK, but might change behavior.
292
+ #
293
+ # With `IncludeSemanticChanges` set to `false`, this cop does not report
294
+ # offenses for `!x.nil?` and does no changes that might change behavior.
295
+ IncludeSemanticChanges: false
296
+
297
+ Style/MethodDefParentheses:
298
+ EnforcedStyle: require_no_parentheses
299
+ SupportedStyles:
300
+ - require_parentheses
301
+ - require_no_parentheses
302
+
303
+ Metrics/MethodLength:
304
+ CountComments: false # count full line comments?
305
+ Max: 10
306
+
307
+ Naming:
308
+ EnforcedStyle: snake_case
309
+ SupportedStyles:
310
+ - snake_case
311
+ - camelCase
312
+
313
+ Style/NumericLiterals:
314
+ MinDigits: 5
315
+
316
+ Metrics/ParameterLists:
317
+ Max: 5
318
+ CountKeywordArgs: true
319
+
320
+ # Allow safe assignment in conditions.
321
+ Style/ParenthesesAroundCondition:
322
+ AllowSafeAssignment: true
323
+
324
+ Style/PercentLiteralDelimiters:
325
+ PreferredDelimiters:
326
+ '%': ()
327
+ '%i': ()
328
+ '%q': ()
329
+ '%Q': ()
330
+ '%r': '{}'
331
+ '%s': ()
332
+ '%w': ()
333
+ '%W': ()
334
+ '%x': ()
335
+
336
+ Naming:
337
+ NamePrefixBlacklist:
338
+ - get_
339
+
340
+ Style/RaiseArgs:
341
+ EnforcedStyle: exploded
342
+ SupportedStyles:
343
+ - compact # raise Exception.new(msg)
344
+ - exploded # raise Exception, msg
345
+
346
+
347
+ Style/RedundantReturn:
348
+ # When true allows code like `return x, y`.
349
+ AllowMultipleReturnValues: false
350
+
351
+ Style/Semicolon:
352
+ # Allow ; to separate several expressions on the same line.
353
+ AllowAsExpressionSeparator: false
354
+
355
+ Style/SignalException:
356
+ EnforcedStyle: only_raise
357
+ SupportedStyles:
358
+ - only_raise
359
+ - only_fail
360
+ - semantic
361
+
362
+
363
+ Style/SingleLineBlockParams:
364
+ Methods:
365
+ - reduce:
366
+ - a
367
+ - e
368
+ - inject:
369
+ - a
370
+ - e
371
+
372
+ Style/SingleLineMethods:
373
+ AllowIfMethodIsEmpty: true
374
+
375
+ Style/StringLiterals:
376
+ EnforcedStyle: double_quotes
377
+ SupportedStyles:
378
+ - single_quotes
379
+ - double_quotes
380
+
381
+ Layout/SpaceAroundEqualsInParameterDefault:
382
+ EnforcedStyle: space
383
+ SupportedStyles:
384
+ - space
385
+ - no_space
386
+
387
+ Layout/SpaceBeforeBlockBraces:
388
+ EnforcedStyle: no_space
389
+ SupportedStyles:
390
+ - space
391
+ - no_space
392
+
393
+ Layout/SpaceInsideArrayLiteralBrackets:
394
+ EnforcedStyle: no_space
395
+ SupportedStyles:
396
+ - space
397
+ - no_space
398
+
399
+ Layout/SpaceInsideHashLiteralBraces:
400
+ EnforcedStyle: no_space
401
+ EnforcedStyleForEmptyBraces: no_space
402
+ SupportedStyles:
403
+ - space
404
+ - no_space
405
+
406
+ Layout/TrailingBlankLines:
407
+ EnforcedStyle: final_newline
408
+ SupportedStyles:
409
+ - final_newline
410
+ - final_blank_line
411
+
412
+ Style/TrailingCommaInArrayLiteral:
413
+ # If EnforcedStyleForMultiline is comma, the cop allows a comma after the
414
+ # last item of a list, but only for lists where each item is on its own line.
415
+ EnforcedStyleForMultiline: no_comma
416
+ SupportedStylesForMultiline:
417
+ - comma
418
+ - consistent_comma
419
+ - no_comma
420
+
421
+ Style/TrailingCommaInHashLiteral:
422
+ # If EnforcedStyleForMultiline is comma, the cop allows a comma after the
423
+ # last item of a list, but only for lists where each item is on its own line.
424
+ EnforcedStyleForMultiline: no_comma
425
+ SupportedStylesForMultiline:
426
+ - comma
427
+ - consistent_comma
428
+ - no_comma
429
+ # TrivialAccessors doesn't require exact name matches and doesn't allow
430
+ # predicated methods by default.
431
+ Style/TrivialAccessors:
432
+ ExactNameMatch: false
433
+ AllowPredicates: false
434
+ # Allows trivial writers that don't end in an equal sign. e.g.
435
+ #
436
+ # def on_exception(action)
437
+ # @on_exception=action
438
+ # end
439
+ # on_exception :restart
440
+ #
441
+ # Commonly used in DSLs
442
+ AllowDSLWriters: false
443
+ Whitelist:
444
+ - to_ary
445
+ - to_a
446
+ - to_c
447
+ - to_enum
448
+ - to_h
449
+ - to_hash
450
+ - to_i
451
+ - to_int
452
+ - to_io
453
+ - to_open
454
+ - to_path
455
+ - to_proc
456
+ - to_r
457
+ - to_regexp
458
+ - to_str
459
+ - to_s
460
+ - to_sym
461
+
462
+ Naming:
463
+ EnforcedStyle: snake_case
464
+ SupportedStyles:
465
+ - snake_case
466
+ - camelCase
467
+
468
+ Metrics/LineLength:
469
+ Max: 120
470
+
471
+ Style/WordArray:
472
+ MinSize: 0
473
+
474
+ ##################### Lint ##################################
475
+
476
+ # Allow safe assignment in conditions.
477
+ Lint/AssignmentInCondition:
478
+ AllowSafeAssignment: true
479
+
480
+ # Align ends correctly.
481
+ Layout/EndAlignment:
482
+ # The value `keyword` means that `end` should be aligned with the matching
483
+ # keyword (if, while, etc.).
484
+ # The value `variable` means that in assignments, `end` should be aligned
485
+ # with the start of the variable on the left hand side of `=`. In all other
486
+ # situations, `end` should still be aligned with the keyword.
487
+ EnforcedStyleAlignWith: keyword
488
+ SupportedStylesAlignWith:
489
+ - keyword
490
+ - variable
491
+ - start_of_line
492
+ AutoCorrect: false
493
+
494
+ Layout/DefEndAlignment:
495
+ # The value `def` means that `end` should be aligned with the def keyword.
496
+ # The value `start_of_line` means that `end` should be aligned with method
497
+ # calls like `private`, `public`, etc, if present in front of the `def`
498
+ # keyword on the same line.
499
+ EnforcedStyleAlignWith: start_of_line
500
+ SupportedStylesAlignWith:
501
+ - start_of_line
502
+ - def
503
+
504
+ ##################### Rails ##################################
505
+ Rails/UnknownEnv:
506
+ Environments:
507
+ - production
508
+ - development
509
+ - test
510
+ - staging
511
+ - dev
512
+
513
+ Rails/ActionFilter:
514
+ EnforcedStyle: action
515
+ SupportedStyles:
516
+ - action
517
+ - filter
518
+ Include:
519
+ - app/controllers/**/*.rb
520
+
521
+ Rails/HasAndBelongsToMany:
522
+ Include:
523
+ - app/models/**/*.rb
524
+
525
+ Rails/ReadWriteAttribute:
526
+ Include:
527
+ - app/models/**/*.rb
528
+
529
+ Rails/ScopeArgs:
530
+ Include:
531
+ - app/models/**/*.rb
532
+
533
+ Rails/Validation:
534
+ Include:
535
+ - app/models/**/*.rb