discountnetwork 0.1.2 → 0.1.3
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.
- checksums.yaml +4 -4
- data/.rubocop.yml +79 -58
- data/README.md +11 -0
- data/lib/discountnetwork/account.rb +4 -0
- data/lib/discountnetwork/testing/discountnetwork_api.rb +9 -0
- data/lib/discountnetwork/version.rb +1 -1
- data/spec/discountnetwork/account_spec.rb +30 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 67769839fd2e1a2bc644ac1ee14347e49245a3e4
|
4
|
+
data.tar.gz: 2e518bbccb41f513fcb6882fa44336979831c9b1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 491ab04c003a4c12241b31f9b432318bfa36d4302371b5179abc5ec3ce112ae0037042de6bae647f064a1ff749f69569a2fed28858f995974800790d6ba6efe2
|
7
|
+
data.tar.gz: a1c76ef3c1468ccfc487e0369e006a5170b4263f4df255e50f6ec59cbcf1305c08dafd2c9ed905e48978984fffbf283245380aaea01f52544ba2e143fdb756bd
|
data/.rubocop.yml
CHANGED
@@ -2,7 +2,7 @@ AllCops:
|
|
2
2
|
Exclude:
|
3
3
|
- db/schema.rb
|
4
4
|
|
5
|
-
|
5
|
+
Naming/AccessorMethodName:
|
6
6
|
Description: Check the naming of accessor methods for get_/set_.
|
7
7
|
Enabled: false
|
8
8
|
|
@@ -21,7 +21,7 @@ Style/AsciiComments:
|
|
21
21
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#english-comments'
|
22
22
|
Enabled: false
|
23
23
|
|
24
|
-
|
24
|
+
Naming/AsciiIdentifiers:
|
25
25
|
Description: 'Use only ascii symbols in identifiers.'
|
26
26
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#english-identifiers'
|
27
27
|
Enabled: false
|
@@ -90,6 +90,13 @@ Metrics/AbcSize:
|
|
90
90
|
branches, and conditions.
|
91
91
|
Enabled: false
|
92
92
|
|
93
|
+
Metrics/BlockLength:
|
94
|
+
CountComments: true # count full line comments?
|
95
|
+
Max: 25
|
96
|
+
ExcludedMethods: []
|
97
|
+
Exclude:
|
98
|
+
- "spec/**/*"
|
99
|
+
|
93
100
|
Metrics/CyclomaticComplexity:
|
94
101
|
Description: >-
|
95
102
|
A complexity metric that is strongly correlated to the number
|
@@ -100,20 +107,15 @@ Rails/Delegate:
|
|
100
107
|
Description: 'Prefer delegate method for delegations.'
|
101
108
|
Enabled: false
|
102
109
|
|
103
|
-
Style/
|
104
|
-
Description: 'Checks
|
105
|
-
StyleGuide: '
|
110
|
+
Style/PreferredHashMethods:
|
111
|
+
Description: 'Checks use of `has_key?` and `has_value?` Hash methods.'
|
112
|
+
StyleGuide: '#hash-key'
|
106
113
|
Enabled: false
|
107
114
|
|
108
115
|
Style/Documentation:
|
109
116
|
Description: 'Document classes and non-namespace modules.'
|
110
117
|
Enabled: false
|
111
118
|
|
112
|
-
Style/DotPosition:
|
113
|
-
Description: 'Checks the position of the dot in multi-line method calls.'
|
114
|
-
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#consistent-multi-line-chains'
|
115
|
-
EnforcedStyle: trailing
|
116
|
-
|
117
119
|
Style/DoubleNegation:
|
118
120
|
Description: 'Checks for uses of double negation (!!).'
|
119
121
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-bang-bang'
|
@@ -139,15 +141,17 @@ Style/EvenOdd:
|
|
139
141
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#predicate-methods'
|
140
142
|
Enabled: false
|
141
143
|
|
142
|
-
|
143
|
-
Description: 'Do not use unnecessary spacing.'
|
144
|
-
Enabled: true
|
145
|
-
|
146
|
-
Style/FileName:
|
144
|
+
Naming/FileName:
|
147
145
|
Description: 'Use snake_case for source file names.'
|
148
146
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#snake-case-files'
|
149
147
|
Enabled: false
|
150
148
|
|
149
|
+
Style/FrozenStringLiteralComment:
|
150
|
+
Description: >-
|
151
|
+
Add the frozen_string_literal comment to the top of files
|
152
|
+
to help transition from Ruby 2.3.0 to Ruby 3.0.
|
153
|
+
Enabled: false
|
154
|
+
|
151
155
|
Style/FlipFlop:
|
152
156
|
Description: 'Checks for flip flops'
|
153
157
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-flip-flops'
|
@@ -216,25 +220,11 @@ Style/ModuleFunction:
|
|
216
220
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#module-function'
|
217
221
|
Enabled: false
|
218
222
|
|
219
|
-
Style/MultilineOperationIndentation:
|
220
|
-
Description: >-
|
221
|
-
Checks indentation of binary operations that span more than
|
222
|
-
one line.
|
223
|
-
Enabled: true
|
224
|
-
EnforcedStyle: indented
|
225
|
-
|
226
223
|
Style/MultilineBlockChain:
|
227
224
|
Description: 'Avoid multi-line chains of blocks.'
|
228
225
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#single-line-blocks'
|
229
226
|
Enabled: false
|
230
227
|
|
231
|
-
Style/MultilineMethodCallIndentation:
|
232
|
-
Description: >-
|
233
|
-
Checks indentation of method calls with the dot operator
|
234
|
-
that span more than one line.
|
235
|
-
Enabled: true
|
236
|
-
EnforcedStyle: indented
|
237
|
-
|
238
228
|
Style/NegatedIf:
|
239
229
|
Description: >-
|
240
230
|
Favor unless over if for negative conditions
|
@@ -276,7 +266,7 @@ Style/OneLineConditional:
|
|
276
266
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#ternary-operator'
|
277
267
|
Enabled: false
|
278
268
|
|
279
|
-
|
269
|
+
Naming/BinaryOperatorParameterName:
|
280
270
|
Description: 'When defining binary operators, name the argument other.'
|
281
271
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#other-arg'
|
282
272
|
Enabled: false
|
@@ -296,7 +286,7 @@ Style/PerlBackrefs:
|
|
296
286
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-perl-regexp-last-matchers'
|
297
287
|
Enabled: false
|
298
288
|
|
299
|
-
|
289
|
+
Naming/PredicateName:
|
300
290
|
Description: 'Check the names of predicate methods.'
|
301
291
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#bool-methods-qmark'
|
302
292
|
NamePrefixBlacklist:
|
@@ -352,24 +342,31 @@ Style/StringLiterals:
|
|
352
342
|
EnforcedStyle: double_quotes
|
353
343
|
Enabled: true
|
354
344
|
|
355
|
-
Style/FrozenStringLiteralComment:
|
356
|
-
Enabled: false
|
357
|
-
|
358
345
|
Style/TrailingCommaInArguments:
|
359
346
|
Description: 'Checks for trailing comma in argument lists.'
|
360
347
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-trailing-array-commas'
|
361
348
|
EnforcedStyleForMultiline: comma
|
362
|
-
|
349
|
+
SupportedStylesForMultiline:
|
350
|
+
- comma
|
351
|
+
- consistent_comma
|
352
|
+
- no_comma
|
353
|
+
Enabled: true
|
354
|
+
|
355
|
+
Style/TrailingCommaInArrayLiteral:
|
356
|
+
Description: 'Checks for trailing comma in array literals.'
|
357
|
+
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-trailing-array-commas'
|
358
|
+
EnforcedStyleForMultiline: comma
|
359
|
+
SupportedStylesForMultiline:
|
363
360
|
- comma
|
364
361
|
- consistent_comma
|
365
362
|
- no_comma
|
366
363
|
Enabled: true
|
367
364
|
|
368
|
-
Style/
|
369
|
-
Description: 'Checks for trailing comma in
|
365
|
+
Style/TrailingCommaInHashLiteral:
|
366
|
+
Description: 'Checks for trailing comma in hash literals.'
|
370
367
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-trailing-array-commas'
|
371
368
|
EnforcedStyleForMultiline: comma
|
372
|
-
|
369
|
+
SupportedStylesForMultiline:
|
373
370
|
- comma
|
374
371
|
- consistent_comma
|
375
372
|
- no_comma
|
@@ -404,6 +401,48 @@ Style/WordArray:
|
|
404
401
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#percent-w'
|
405
402
|
Enabled: false
|
406
403
|
|
404
|
+
# Layout
|
405
|
+
|
406
|
+
Layout/AlignParameters:
|
407
|
+
Description: 'Here we check if the parameters on a multi-line method call or definition are aligned.'
|
408
|
+
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-double-indent'
|
409
|
+
Enabled: false
|
410
|
+
|
411
|
+
Layout/ConditionPosition:
|
412
|
+
Description: >-
|
413
|
+
Checks for condition placed in a confusing position relative to
|
414
|
+
the keyword.
|
415
|
+
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#same-line-condition'
|
416
|
+
Enabled: false
|
417
|
+
|
418
|
+
Layout/DotPosition:
|
419
|
+
Description: 'Checks the position of the dot in multi-line method calls.'
|
420
|
+
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#consistent-multi-line-chains'
|
421
|
+
EnforcedStyle: trailing
|
422
|
+
|
423
|
+
Layout/ExtraSpacing:
|
424
|
+
Description: 'Do not use unnecessary spacing.'
|
425
|
+
Enabled: true
|
426
|
+
|
427
|
+
Layout/MultilineOperationIndentation:
|
428
|
+
Description: >-
|
429
|
+
Checks indentation of binary operations that span more than
|
430
|
+
one line.
|
431
|
+
Enabled: true
|
432
|
+
EnforcedStyle: indented
|
433
|
+
|
434
|
+
Layout/MultilineMethodCallIndentation:
|
435
|
+
Description: >-
|
436
|
+
Checks indentation of method calls with the dot operator
|
437
|
+
that span more than one line.
|
438
|
+
Enabled: true
|
439
|
+
EnforcedStyle: indented
|
440
|
+
|
441
|
+
Layout/InitialIndentation:
|
442
|
+
Description: >-
|
443
|
+
Checks the indentation of the first non-blank non-comment line in a file.
|
444
|
+
Enabled: false
|
445
|
+
|
407
446
|
# Lint
|
408
447
|
|
409
448
|
Lint/AmbiguousOperator:
|
@@ -428,13 +467,6 @@ Lint/CircularArgumentReference:
|
|
428
467
|
Description: "Don't refer to the keyword argument in the default value."
|
429
468
|
Enabled: false
|
430
469
|
|
431
|
-
Lint/ConditionPosition:
|
432
|
-
Description: >-
|
433
|
-
Checks for condition placed in a confusing position relative to
|
434
|
-
the keyword.
|
435
|
-
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#same-line-condition'
|
436
|
-
Enabled: false
|
437
|
-
|
438
470
|
Lint/DeprecatedClassMethods:
|
439
471
|
Description: 'Check for deprecated class method calls.'
|
440
472
|
Enabled: false
|
@@ -460,18 +492,7 @@ Lint/HandleExceptions:
|
|
460
492
|
StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#dont-hide-exceptions'
|
461
493
|
Enabled: false
|
462
494
|
|
463
|
-
Lint/
|
464
|
-
Description: >-
|
465
|
-
Checks for invalid character literals with a non-escaped
|
466
|
-
whitespace character.
|
467
|
-
Enabled: false
|
468
|
-
|
469
|
-
Style/InitialIndentation:
|
470
|
-
Description: >-
|
471
|
-
Checks the indentation of the first non-blank non-comment line in a file.
|
472
|
-
Enabled: false
|
473
|
-
|
474
|
-
Lint/LiteralInCondition:
|
495
|
+
Lint/LiteralAsCondition:
|
475
496
|
Description: 'Checks of literals used in conditions.'
|
476
497
|
Enabled: false
|
477
498
|
|
@@ -512,7 +533,7 @@ Lint/UnderscorePrefixedVariableName:
|
|
512
533
|
Description: 'Do not use prefix `_` for a variable that is used.'
|
513
534
|
Enabled: false
|
514
535
|
|
515
|
-
Lint/
|
536
|
+
Lint/UnneededCopDisableDirective:
|
516
537
|
Description: >-
|
517
538
|
Checks for rubocop:disable comments that can be removed.
|
518
539
|
Note: this cop is not disabled when disabling all cops.
|
data/README.md
CHANGED
@@ -71,6 +71,17 @@ To retrieve the user account details using the Discount Network `account` API
|
|
71
71
|
DiscountNetwork::Account.find(auth_token)
|
72
72
|
```
|
73
73
|
|
74
|
+
#### Create a user account
|
75
|
+
|
76
|
+
To create a new user account you can use the `Account.create` interface, but one
|
77
|
+
important things to remember that account creation is not available for all white
|
78
|
+
label, so if it's failing then most likely this feature is not supported on your
|
79
|
+
white label.
|
80
|
+
|
81
|
+
```ruby
|
82
|
+
DiscountNetwork::Account.create(subscriber_attributes)
|
83
|
+
```
|
84
|
+
|
74
85
|
#### Update user account
|
75
86
|
|
76
87
|
Once the user is logged in and `auth_token` has been configured properly then
|
@@ -103,6 +103,15 @@ module DiscountNetworkApi
|
|
103
103
|
)
|
104
104
|
end
|
105
105
|
|
106
|
+
def stub_account_create_api(attributes)
|
107
|
+
stub_api_response(
|
108
|
+
:post,
|
109
|
+
"account",
|
110
|
+
data: { subscriber: attributes },
|
111
|
+
filename: "user",
|
112
|
+
)
|
113
|
+
end
|
114
|
+
|
106
115
|
def stub_activation_find_api(token)
|
107
116
|
stub_api_response(
|
108
117
|
:get,
|
@@ -16,6 +16,17 @@ describe DiscountNetwork::Account do
|
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
19
|
+
describe ".create" do
|
20
|
+
it "creates and returns created user" do
|
21
|
+
stub_account_create_api(user_attributes)
|
22
|
+
|
23
|
+
response = DiscountNetwork::Account.create(user_attributes)
|
24
|
+
|
25
|
+
expect(response.user.name).not_to be_nil
|
26
|
+
expect(response.user.status).to eq("Active")
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
19
30
|
describe ".update" do
|
20
31
|
it "updates the subscriber account" do
|
21
32
|
auth_token = "ABCD_123"
|
@@ -33,4 +44,23 @@ describe DiscountNetwork::Account do
|
|
33
44
|
def set_account_auth_token(token)
|
34
45
|
DiscountNetwork.configuration.auth_token = token
|
35
46
|
end
|
47
|
+
|
48
|
+
def user_attributes
|
49
|
+
@user_attributes ||= {
|
50
|
+
first_name: "John",
|
51
|
+
last_name: "Doe",
|
52
|
+
sex: "Male",
|
53
|
+
address: "123 Main Street",
|
54
|
+
city: "New York",
|
55
|
+
zip: "NY123",
|
56
|
+
state: "New York",
|
57
|
+
phone: "+1 123 456 789 0123",
|
58
|
+
mobile: "+1 012 345 678 9012",
|
59
|
+
username: "john.doe",
|
60
|
+
email: "john.doe@example.com",
|
61
|
+
country: "US",
|
62
|
+
password: "secret_password",
|
63
|
+
password_confirmation: "secret_password",
|
64
|
+
}
|
65
|
+
end
|
36
66
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: discountnetwork
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Abu Nashir
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-11-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rest-client
|