truemail-rspec 0.2.1 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 25654d72a64c056f8f7d10485911e50c8eb953034229491b0c7a1b603fcf5255
4
- data.tar.gz: be07854c0f5d8f48a35bd7f50f4150104535e2ed214080509df20fed7000db6b
3
+ metadata.gz: 10928162c670d094043889bb49124cebe4f6348aff992b3b1468b7014824874e
4
+ data.tar.gz: 421e3053ac52723ee417594dbce92912fb1deeb0e1cdd606b22a5ec882d0c847
5
5
  SHA512:
6
- metadata.gz: b52e2bde2d1234bc10e0c7bdae8011387ce850698c43a7aa8b0a49153417f61b5885cc93c63ecf95652ed9ba9fa2d72ff579c112c97cc31497457ff5989a5aef
7
- data.tar.gz: a4194c3a7cc0392881c551f740d99815e5d9ee540ced372d9a7e59b2c24107c68de380c567ca0abf3cdd18fd55d5cf6fe6b7b8ae221c02f17bb1751c2d8ef5ca
6
+ metadata.gz: 2e62db29ba6762a1ec6390b41895808e4960015a3be10766694cab88fe8c8bd82999b8cba0f86ef4dc05b9ff1ef4ea180c81e65c7683597dbc04f73c9a183d7e
7
+ data.tar.gz: 815e38cfd03f0fb4134644fc97fa93f53b79e75092491927a476778ba5eb9f81fe0ab7b597dae8d7df101186d921ca256e68d450e1bafd4be973c320db83b5b3
data/.codeclimate.yml CHANGED
@@ -7,7 +7,7 @@ checks:
7
7
  plugins:
8
8
  rubocop:
9
9
  enabled: true
10
- channel: rubocop-0-89
10
+ channel: rubocop-1-10
11
11
 
12
12
  reek:
13
13
  enabled: true
@@ -0,0 +1,36 @@
1
+ # Branch naming convention
2
+
3
+ ## Branch naming
4
+
5
+ > Please note for new pull requests create new branches from current `develop` branch only.
6
+
7
+ Branch name should include type of your contribution and context. Please follow next pattern for naming your branches:
8
+
9
+ ```bash
10
+ feature/add-some-feature
11
+ technical/some-technical-improvements
12
+ bugfix/fix-some-bug-name
13
+ ```
14
+
15
+ ## Before PR actions
16
+
17
+ ### Squash commits
18
+
19
+ Please squash all branch commits into the one before openning your PR from your fork. It's simple to do with the git:
20
+
21
+ ```bash
22
+ git rebase -i [hash your first commit of your branch]~1
23
+ git rebase -i 6467fe36232401fa740af067cfd8ac9ec932fed2~1 # example
24
+ ```
25
+
26
+ ### Add commit description
27
+
28
+ Please complete your commit description folowing next pattern:
29
+
30
+ ```
31
+ Technical/Add info files # should be the same name as your branch name
32
+
33
+ * Added license, changelog, contributing, code of conduct docs
34
+ * Added GitHub templates
35
+ * Updated project license link
36
+ ```
@@ -0,0 +1,28 @@
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve
4
+ title: "[BUG] Your bug report title here"
5
+ labels: bug
6
+ assignees: bestwebua
7
+
8
+ ---
9
+
10
+ <!-- Thanks for helping to make Truemail better! Before submit your bug, please make sure to check the following boxes by putting an x in the [ ] (don't: [x ], [ x], do: [x]) -->
11
+
12
+ ### New bug checklist
13
+
14
+ - [ ] I have updated `truemail-rspec` to the latest version
15
+ - [ ] I have read the [Contribution Guidelines](https://github.com/truemail-rb/truemail-rspec/blob/master/CONTRIBUTING.md)
16
+ - [ ] I have read the [documentation](https://truemail-rb.org/truemail-rspec)
17
+ - [ ] I have searched for [existing GitHub issues](https://github.com/truemail-rb/truemail-rspec/issues)
18
+
19
+ <!-- Please use next pattern for your bug report title: [BUG] Your bug report title here -->
20
+
21
+ ### Bug description
22
+ <!-- Please include what's happening, expected behavior, and any relevant code samples -->
23
+
24
+ ##### Complete output when running truemail-rspec, including the stack trace and command used
25
+
26
+ <details>
27
+ <pre>[INSERT OUTPUT HERE]</pre>
28
+ </details>
@@ -0,0 +1,27 @@
1
+ ---
2
+ name: Feature request
3
+ about: Suggest an idea for Truemail
4
+ title: "[FEATURE] Your feature request title here"
5
+ labels: enhancement
6
+ assignees: bestwebua
7
+
8
+ ---
9
+
10
+ <!-- Thanks for helping to make Truemail better! Before submit your new feature request, please make sure to check the following boxes by putting an x in the [ ] (don't: [x ], [ x], do: [x]) -->
11
+
12
+ ### New feature request checklist
13
+
14
+ - [ ] I have updated `truemail-rspec` to the latest version
15
+ - [ ] I have read the [Contribution Guidelines](https://github.com/truemail-rb/truemail-rspec/blob/master/CONTRIBUTING.md)
16
+ - [ ] I have read the [documentation](https://truemail-rb.org/truemail-rspec)
17
+ - [ ] I have searched for [existing GitHub issues](https://github.com/truemail-rb/truemail-rspec/issues)
18
+
19
+ <!-- Please use next pattern for your feature request title: [FEATURE] Your feature request title here -->
20
+
21
+ ### Feature description
22
+
23
+ <!-- Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
24
+
25
+ Describe the solution you'd like. A clear and concise description of what you want to happen.
26
+
27
+ Describe alternatives you've considered. A clear and concise description of any alternative solutions or features you've considered. -->
@@ -1,16 +1,27 @@
1
+ ---
2
+ name: Issue report
3
+ about: Create a report to help us improve
4
+ title: "[ISSUE] Your issue report title here"
5
+ labels: ''
6
+ assignees: bestwebua
7
+
8
+ ---
9
+
1
10
  <!-- Thanks for helping to make Truemail better! Before submit your issue, please make sure to check the following boxes by putting an x in the [ ] (don't: [x ], [ x], do: [x]) -->
2
11
 
3
- ### New Issue Checklist
12
+ ### New issue checklist
4
13
 
5
- - [ ] I have updated truemail-rspec to the latest version
14
+ - [ ] I have updated `truemail-rspec` to the latest version
6
15
  - [ ] I have read the [Contribution Guidelines](https://github.com/truemail-rb/truemail-rspec/blob/master/CONTRIBUTING.md)
7
- - [ ] I have read the [documentation](https://github.com/truemail-rb/truemail-rspec/blob/master/README.md)
16
+ - [ ] I have read the [documentation](https://truemail-rb.org/truemail-rspec)
8
17
  - [ ] I have searched for [existing GitHub issues](https://github.com/truemail-rb/truemail-rspec/issues)
9
18
 
10
- ### Issue Description
19
+ <!-- Please use next pattern for your issue report title: [ISSUE] Your issue report title here -->
20
+
21
+ ### Issue description
11
22
  <!-- Please include what's happening, expected behavior, and any relevant code samples -->
12
23
 
13
- ##### Complete output when running truemail, including the stack trace and command used
24
+ ##### Complete output when running truemail-rspec, including the stack trace and command used
14
25
 
15
26
  <details>
16
27
  <pre>[INSERT OUTPUT HERE]</pre>
@@ -0,0 +1,22 @@
1
+ ---
2
+ name: Question
3
+ about: Ask your question to Truemail team
4
+ title: "[QUESTION] Your question title here"
5
+ labels: question
6
+ assignees: bestwebua
7
+
8
+ ---
9
+
10
+ <!-- Thanks for helping to make Truemail better! Before submit your question, please make sure to check the following boxes by putting an x in the [ ] (don't: [x ], [ x], do: [x]) -->
11
+
12
+ ### New question checklist
13
+
14
+ - [ ] I have read the [Contribution Guidelines](https://github.com/truemail-rb/truemail-rspec/blob/master/CONTRIBUTING.md)
15
+ - [ ] I have read the [documentation](https://truemail-rb.org/truemail-rspec)
16
+ - [ ] I have searched for [existing GitHub issues](https://github.com/truemail-rb/truemail-rspec/issues)
17
+
18
+ <!-- Please use next pattern for your question title: [QUESTION] Your question title here -->
19
+
20
+ ### Question
21
+
22
+ <!-- Your question context here -->
@@ -1,6 +1,9 @@
1
1
  # PR Details
2
2
 
3
3
  <!-- Provide a general summary of your changes in the Title above -->
4
+ <!-- PR name should the same name as your branch name, example: -->
5
+ <!-- Branch name is: feature/add-some-feature -->
6
+ <!-- PR name should be: Feature/Add some feature -->
4
7
 
5
8
  ## Description
6
9
 
data/.rubocop.yml CHANGED
@@ -103,6 +103,39 @@ Style/SlicingWithRange:
103
103
  Style/StringConcatenation:
104
104
  Enabled: true
105
105
 
106
+ Style/ArgumentsForwarding:
107
+ Enabled: true
108
+
109
+ Style/CollectionCompact:
110
+ Enabled: true
111
+
112
+ Style/DocumentDynamicEvalDefinition:
113
+ Enabled: true
114
+
115
+ Style/NegatedIfElseCondition:
116
+ Enabled: true
117
+
118
+ Style/NilLambda:
119
+ Enabled: true
120
+
121
+ Style/RedundantArgument:
122
+ Enabled: true
123
+
124
+ Style/SwapValues:
125
+ Enabled: true
126
+
127
+ Style/EndlessMethod:
128
+ Enabled: true
129
+
130
+ Style/HashConversion:
131
+ Enabled: true
132
+
133
+ Style/HashExcept:
134
+ Enabled: true
135
+
136
+ Style/IfWithBooleanLiteralBranches:
137
+ Enabled: true
138
+
106
139
  Layout/EmptyLinesAroundAttributeAccessor:
107
140
  Enabled: true
108
141
 
@@ -131,6 +164,9 @@ Layout/ClassStructure:
131
164
  Layout/EmptyLineAfterGuardClause:
132
165
  Enabled: false
133
166
 
167
+ Layout/SpaceBeforeBrackets:
168
+ Enabled: true
169
+
134
170
  Lint/NonDeterministicRequireOrder:
135
171
  Enabled: false
136
172
 
@@ -176,6 +212,57 @@ Lint/TopLevelReturnWithArgument:
176
212
  Lint/UnreachableLoop:
177
213
  Enabled: true
178
214
 
215
+ Lint/DuplicateBranch:
216
+ Enabled: true
217
+
218
+ Lint/DuplicateRegexpCharacterClassElement:
219
+ Enabled: true
220
+
221
+ Lint/EmptyBlock:
222
+ Enabled: true
223
+
224
+ Lint/EmptyClass:
225
+ Enabled: true
226
+
227
+ Lint/NoReturnInBeginEndBlocks:
228
+ Enabled: true
229
+
230
+ Lint/ToEnumArguments:
231
+ Enabled: true
232
+
233
+ Lint/UnexpectedBlockArity:
234
+ Enabled: true
235
+
236
+ Lint/UnmodifiedReduceAccumulator:
237
+ Enabled: true
238
+
239
+ Lint/AmbiguousAssignment:
240
+ Enabled: true
241
+
242
+ Lint/DeprecatedConstants:
243
+ Enabled: true
244
+
245
+ Lint/LambdaWithoutLiteralBlock:
246
+ Enabled: true
247
+
248
+ Lint/NumberedParameterAssignment:
249
+ Enabled: true
250
+
251
+ Lint/OrAssignmentToConstant:
252
+ Enabled: true
253
+
254
+ Lint/RedundantDirGlobSort:
255
+ Enabled: true
256
+
257
+ Lint/SymbolConversion:
258
+ Enabled: true
259
+
260
+ Lint/TripleQuotes:
261
+ Enabled: true
262
+
263
+ Gemspec/DateAssignment:
264
+ Enabled: true
265
+
179
266
  Performance/AncestorsInclude:
180
267
  Enabled: true
181
268
 
@@ -200,6 +287,21 @@ Performance/Squeeze:
200
287
  Performance/StringInclude:
201
288
  Enabled: true
202
289
 
290
+ Performance/BlockGivenWithExplicitBlock:
291
+ Enabled: true
292
+
293
+ Performance/CollectionLiteralInLoop:
294
+ Enabled: true
295
+
296
+ Performance/ConstantRegexp:
297
+ Enabled: true
298
+
299
+ Performance/MethodObjectAsBlock:
300
+ Enabled: true
301
+
302
+ Performance/Sum:
303
+ Enabled: true
304
+
203
305
  RSpec/ExampleLength:
204
306
  Enabled: false
205
307
 
data/CHANGELOG.md CHANGED
@@ -1,6 +1,59 @@
1
1
  # Changelog
2
+
2
3
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
3
4
 
5
+ ## [0.4.0] - 2021-02-24
6
+
7
+ ### Updated
8
+
9
+ - gem runtime dependencies
10
+ - gem development dependencies
11
+
12
+ ## [0.3.3] - 2020-12-06
13
+
14
+ ### Added
15
+
16
+ - `faker` import
17
+
18
+ ### Updated
19
+
20
+ - gem development dependencies
21
+
22
+ ## [0.3.2] - 2020-12-06
23
+
24
+ ### Fixed
25
+
26
+ - Namespace collisions for `faker`
27
+
28
+ ## [0.3.1] - 2020-12-06
29
+
30
+ ### Added
31
+
32
+ - Required `faker` runtime dependency
33
+
34
+ ## [0.3.0] - 2020-12-06
35
+
36
+ ### Added
37
+
38
+ Ability to pass custom context into rcptto error:
39
+
40
+ ```ruby
41
+ create_validator(
42
+ validation_type, # optional, type:Symbol, can be :regex, :mx or :smtp, by default creates :smtp validation
43
+ email, # optional, type:String, by default random email
44
+ mail_servers, # optional, type:Array(String), by default array with random ip addresses
45
+ success: true, # optional, type:Bool, by default true
46
+ rcptto_error: 'custom context of rcptto error' # optional, type:String, by default it's equal to 'user not found'
47
+ configuration: create_configuration # optional, type:Truemail::Configuration, by default creates random configuration
48
+ )
49
+ ```
50
+
51
+ ### Changed
52
+
53
+ - Updated `Truemail::RSpec::ValidatorHelper`
54
+ - gem development, runtime dependencies
55
+ - gem documentation
56
+
4
57
  ## [0.2.1] - 2020-09-21
5
58
 
6
59
  ### Changed
data/CONTRIBUTING.md CHANGED
@@ -6,28 +6,28 @@ Following these guidelines helps to communicate that you respect the time of the
6
6
 
7
7
  ## Using the issue tracker
8
8
 
9
- The issue tracker is the preferred channel for [bug reports](#bugs), [features requests](#features) and [submitting pull requests](#pull-requests).
9
+ The issue tracker is the preferred channel for [issue/bug reports](#issuebug-reports), [feature requests](#feature-requests), [questions](#questions) and submitting [pull requests](#pull-requests).
10
10
 
11
- <a name="bugs"></a>
12
- ## Bug/issue reports
11
+ ## Issue/bug reports
13
12
 
14
- A bug is a _demonstrable problem_ that is caused by the code in the repository.
15
- Good bug reports are extremely helpful - thank you!
13
+ A bug is a _demonstrable problem_ that is caused by the code in the repository. Good bug reports are extremely helpful - thank you!
16
14
 
17
- Guidelines for bug reports:
15
+ Guidelines for issue/bug reports:
18
16
 
19
17
  1. **Use the GitHub issue search** &mdash; check if the issue has already been reported
20
- 2. **Check if the issue has been fixed** &mdash; try to reproduce it using the latest `master` or development branch in the repository
21
- 3. Truemail [issue template](.github/ISSUE_TEMPLATE.md)
18
+ 2. **Check if the issue has been fixed** &mdash; try to reproduce it using the latest `master` or `develop` branch in the repository
19
+ 3. Truemail [issue template](.github/ISSUE_TEMPLATE/issue_report.md)/[bug template](.github/ISSUE_TEMPLATE/bug_report.md)
22
20
 
23
21
  A good bug report shouldn't leave others needing to chase you up for more information. Please try to be as detailed as possible in your report. What is your environment? What steps will reproduce the issue? What would you expect to be the outcome? All these details will help people to fix any potential bugs.
24
22
 
25
- <a name="features"></a>
26
23
  ## Feature requests
27
24
 
28
25
  Feature requests are welcome. But take a moment to find out whether your idea fits with the scope and aims of the project. It's up to *you* to make a strong case to convince the project's developers of the merits of this feature. Please provide as much detail and context as possible.
29
26
 
30
- <a name="pull-requests"></a>
27
+ ## Questions
28
+
29
+ We're always open to a new conversations. So if you have any questions just ask us.
30
+
31
31
  ## Pull requests
32
32
 
33
33
  Good pull requests - patches, improvements, new features - are a fantastic help. They should remain focused in scope and avoid containing unrelated commits.
@@ -39,7 +39,8 @@ Please adhere to the coding conventions used throughout a project (indentation,
39
39
  Guidelines for pull requests:
40
40
 
41
41
  1. Truemail [pull request template](.github/PULL_REQUEST_TEMPLATE.md)
42
- 2. Fork the repo
43
- 3. Run the tests. This is to make sure your starting point works. Tests can be run via ```rspec```
44
- 4. Create a new branch and make your changes. This includes tests for features!
45
- 5. Push to your fork and submit a pull request
42
+ 2. Fork the repo, checkout to `develop` branch
43
+ 3. Run the tests. This is to make sure your starting point works
44
+ 4. Read our [branch naming convention](.github/BRANCH_NAMING_CONVENTION.md)
45
+ 5. Create a new branch and make your changes. This includes tests for features!
46
+ 6. Push to your fork and submit a pull request to `develop` branch
data/Gemfile.lock CHANGED
@@ -1,36 +1,41 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- truemail-rspec (0.2.1)
5
- rspec (~> 3.9)
6
- truemail (~> 1.4, >= 1.4.1)
4
+ truemail-rspec (0.4.0)
5
+ faker (~> 2.16)
6
+ rspec (~> 3.10)
7
+ truemail (>= 2.3)
7
8
 
8
9
  GEM
9
10
  remote: https://rubygems.org/
10
11
  specs:
11
- ast (2.4.1)
12
+ ast (2.4.2)
12
13
  bundler-audit (0.7.0.1)
13
14
  bundler (>= 1.2.0, < 3)
14
15
  thor (>= 0.18, < 2)
15
16
  byebug (11.1.3)
16
17
  childprocess (4.0.0)
17
- coderay (1.1.2)
18
+ coderay (1.1.3)
18
19
  colorize (0.8.1)
19
- diff-lcs (1.3)
20
- docile (1.3.2)
21
- fasterer (0.8.3)
20
+ concurrent-ruby (1.1.8)
21
+ diff-lcs (1.4.4)
22
+ docile (1.3.5)
23
+ faker (2.16.0)
24
+ i18n (>= 1.6, < 2)
25
+ fasterer (0.9.0)
22
26
  colorize (~> 0.7)
23
27
  ruby_parser (>= 3.14.1)
24
- ffaker (2.17.0)
28
+ i18n (1.8.9)
29
+ concurrent-ruby (~> 1.0)
25
30
  iniparse (1.5.0)
26
- json (2.3.0)
31
+ json (2.5.1)
27
32
  kwalify (0.7.2)
28
33
  method_source (1.0.0)
29
- overcommit (0.55.0)
34
+ overcommit (0.57.0)
30
35
  childprocess (>= 0.6.3, < 5)
31
36
  iniparse (~> 1.4)
32
- parallel (1.19.2)
33
- parser (2.7.1.4)
37
+ parallel (1.20.1)
38
+ parser (3.0.0.0)
34
39
  ast (~> 2.4.1)
35
40
  pry (0.13.1)
36
41
  coderay (~> 1.1)
@@ -38,62 +43,64 @@ GEM
38
43
  pry-byebug (3.9.0)
39
44
  byebug (~> 11.0)
40
45
  pry (~> 0.13.0)
41
- psych (3.1.0)
46
+ psych (3.3.0)
42
47
  rainbow (3.0.0)
43
- rake (13.0.1)
44
- reek (6.0.1)
48
+ rake (13.0.3)
49
+ reek (6.0.3)
45
50
  kwalify (~> 0.7.0)
46
- parser (>= 2.5.0.0, < 2.8, != 2.5.1.1)
47
- psych (~> 3.1.0)
51
+ parser (~> 3.0.0)
52
+ psych (~> 3.1)
48
53
  rainbow (>= 2.0, < 4.0)
49
- regexp_parser (1.7.1)
54
+ regexp_parser (2.1.1)
50
55
  rexml (3.2.4)
51
- rspec (3.9.0)
52
- rspec-core (~> 3.9.0)
53
- rspec-expectations (~> 3.9.0)
54
- rspec-mocks (~> 3.9.0)
55
- rspec-core (3.9.2)
56
- rspec-support (~> 3.9.3)
57
- rspec-expectations (3.9.1)
56
+ rspec (3.10.0)
57
+ rspec-core (~> 3.10.0)
58
+ rspec-expectations (~> 3.10.0)
59
+ rspec-mocks (~> 3.10.0)
60
+ rspec-core (3.10.1)
61
+ rspec-support (~> 3.10.0)
62
+ rspec-expectations (3.10.1)
58
63
  diff-lcs (>= 1.2.0, < 2.0)
59
- rspec-support (~> 3.9.0)
60
- rspec-mocks (3.9.1)
64
+ rspec-support (~> 3.10.0)
65
+ rspec-mocks (3.10.2)
61
66
  diff-lcs (>= 1.2.0, < 2.0)
62
- rspec-support (~> 3.9.0)
63
- rspec-support (3.9.3)
64
- rubocop (0.89.1)
67
+ rspec-support (~> 3.10.0)
68
+ rspec-support (3.10.2)
69
+ rubocop (1.10.0)
65
70
  parallel (~> 1.10)
66
- parser (>= 2.7.1.1)
71
+ parser (>= 3.0.0.0)
67
72
  rainbow (>= 2.2.2, < 4.0)
68
- regexp_parser (>= 1.7)
73
+ regexp_parser (>= 1.8, < 3.0)
69
74
  rexml
70
- rubocop-ast (>= 0.3.0, < 1.0)
75
+ rubocop-ast (>= 1.2.0, < 2.0)
71
76
  ruby-progressbar (~> 1.7)
72
- unicode-display_width (>= 1.4.0, < 2.0)
73
- rubocop-ast (0.3.0)
74
- parser (>= 2.7.1.4)
75
- rubocop-performance (1.7.1)
76
- rubocop (>= 0.82.0)
77
- rubocop-rspec (1.43.1)
78
- rubocop (~> 0.87)
79
- ruby-progressbar (1.10.1)
80
- ruby_parser (3.14.2)
77
+ unicode-display_width (>= 1.4.0, < 3.0)
78
+ rubocop-ast (1.4.1)
79
+ parser (>= 2.7.1.5)
80
+ rubocop-performance (1.9.2)
81
+ rubocop (>= 0.90.0, < 2.0)
82
+ rubocop-ast (>= 0.4.0)
83
+ rubocop-rspec (2.2.0)
84
+ rubocop (~> 1.0)
85
+ rubocop-ast (>= 1.1.0)
86
+ ruby-progressbar (1.11.0)
87
+ ruby_parser (3.15.1)
81
88
  sexp_processor (~> 4.9)
82
- sexp_processor (4.14.1)
89
+ sexp_processor (4.15.2)
83
90
  simplecov (0.17.1)
84
91
  docile (~> 1.1)
85
92
  json (>= 1.8, < 3)
86
93
  simplecov-html (~> 0.10.0)
87
94
  simplecov-html (0.10.2)
88
- simpleidn (0.1.1)
95
+ simpleidn (0.2.1)
89
96
  unf (~> 0.1.4)
90
- thor (1.0.1)
91
- truemail (1.9.0)
92
- simpleidn (~> 0.1.1)
97
+ thor (1.1.0)
98
+ truemail (2.3.0)
99
+ simpleidn (~> 0.2.1)
93
100
  unf (0.1.4)
94
101
  unf_ext
95
102
  unf_ext (0.0.7.7)
96
- unicode-display_width (1.7.0)
103
+ unicode-display_width (2.0.0)
97
104
 
98
105
  PLATFORMS
99
106
  ruby
@@ -101,16 +108,16 @@ PLATFORMS
101
108
  DEPENDENCIES
102
109
  bundler (~> 1.16)
103
110
  bundler-audit (~> 0.7.0.1)
104
- fasterer (~> 0.8.3)
105
- ffaker (~> 2.17)
106
- overcommit (~> 0.55.0)
111
+ faker (~> 2.16)
112
+ fasterer (~> 0.9.0)
113
+ overcommit (~> 0.57.0)
107
114
  pry-byebug (~> 3.9)
108
- rake (~> 13.0, >= 13.0.1)
109
- reek (~> 6.0, >= 6.0.1)
110
- rspec (~> 3.9)
111
- rubocop (~> 0.89.1)
112
- rubocop-performance (~> 1.7, >= 1.7.1)
113
- rubocop-rspec (~> 1.43, >= 1.43.1)
115
+ rake (~> 13.0, >= 13.0.3)
116
+ reek (~> 6.0, >= 6.0.3)
117
+ rspec (~> 3.10)
118
+ rubocop (~> 1.10)
119
+ rubocop-performance (~> 1.9, >= 1.9.2)
120
+ rubocop-rspec (~> 2.2)
114
121
  simplecov (~> 0.17.1)
115
122
  truemail-rspec!
116
123
 
data/README.md CHANGED
@@ -1,8 +1,15 @@
1
- ![Truemail RSpec helpers](https://repository-images.githubusercontent.com/222414074/393c9600-09f9-11ea-8d21-345619b97b11)
1
+ # ![Truemail RSpec helpers](https://truemail-rb.org/assets/images/truemail_logo.png)
2
2
 
3
- [![Maintainability](https://api.codeclimate.com/v1/badges/d23d82c1c1bdbc271b81/maintainability)](https://codeclimate.com/github/truemail-rb/truemail-rspec/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/d23d82c1c1bdbc271b81/test_coverage)](https://codeclimate.com/github/truemail-rb/truemail-rspec/test_coverage) [![CircleCI](https://circleci.com/gh/truemail-rb/truemail-rspec/tree/master.svg?style=svg)](https://circleci.com/gh/truemail-rb/truemail-rspec/tree/master) [![Gem Version](https://badge.fury.io/rb/truemail-rspec.svg)](https://badge.fury.io/rb/truemail-rspec) [![Downloads](https://img.shields.io/gem/dt/truemail-rspec.svg?colorA=004d99&colorB=0073e6)](https://rubygems.org/gems/truemail-rspec) [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v1.4%20adopted-ff69b4.svg)](CODE_OF_CONDUCT.md)
3
+ [![Maintainability](https://api.codeclimate.com/v1/badges/d23d82c1c1bdbc271b81/maintainability)](https://codeclimate.com/github/truemail-rb/truemail-rspec/maintainability)
4
+ [![Test Coverage](https://api.codeclimate.com/v1/badges/d23d82c1c1bdbc271b81/test_coverage)](https://codeclimate.com/github/truemail-rb/truemail-rspec/test_coverage)
5
+ [![CircleCI](https://circleci.com/gh/truemail-rb/truemail-rspec/tree/master.svg?style=svg)](https://circleci.com/gh/truemail-rb/truemail-rspec/tree/master)
6
+ [![Gem Version](https://badge.fury.io/rb/truemail-rspec.svg)](https://badge.fury.io/rb/truemail-rspec)
7
+ [![Downloads](https://img.shields.io/gem/dt/truemail-rspec.svg?colorA=004d99&colorB=0073e6)](https://rubygems.org/gems/truemail-rspec)
8
+ [![Gitter](https://badges.gitter.im/truemail-rb/community.svg)](https://gitter.im/truemail-rb/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
9
+ [![GitHub](https://img.shields.io/github/license/truemail-rb/truemail-rspec)](LICENSE.txt)
10
+ [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v1.4%20adopted-ff69b4.svg)](CODE_OF_CONDUCT.md)
4
11
 
5
- `truemail-rspec` gem helps you create `Truemail::Configuration` and `Truemail::Validator` instances for your RSpec environment.
12
+ `truemail-rspec` gem helps you to create `Truemail::Configuration`, `Truemail::Auditor` and `Truemail::Validator` instances for your RSpec environment.
6
13
 
7
14
  > Actual and maintainable documentation :books: for developers is living [here](https://truemail-rb.org/truemail-rspec).
8
15
 
@@ -35,6 +42,7 @@ Ruby MRI 2.5.0+
35
42
  ## Features
36
43
 
37
44
  - Ability to create `Truemail::Configuration` instance with random or with predefined params
45
+ - Ability to create `Truemail::Auditor` instance with random or with predefined params
38
46
  - Ability to create `Truemail::Validator` instance with random or with predefined params
39
47
 
40
48
  ## Installation
@@ -124,6 +132,7 @@ create_validator(
124
132
  email, # optional, type:String, by default random email
125
133
  mail_servers, # optional, type:Array(String), by default array with random ip addresses
126
134
  success: true, # optional, type:Bool, by default true
135
+ rcptto_error: 'custom context of rcptto error' # optional, type:String, by default it's equal to 'user not found'
127
136
  configuration: create_configuration # optional, type:Truemail::Configuration, by default creates random configuration
128
137
  )
129
138
 
@@ -134,15 +143,16 @@ create_validator(
134
143
 
135
144
  ## Truemail family
136
145
 
137
- All Truemail extensions: https://github.com/truemail-rb
146
+ All Truemail solutions: https://truemail-rb.org
138
147
 
139
148
  | Name | Type | Description |
140
149
  | --- | --- | --- |
141
- | [truemail](https://github.com/rubygarage/truemail) | ruby gem | Configurable plain Ruby email validator, main core |
142
- | [truemail server](https://github.com/truemail-rb/truemail-rack) | ruby app | Lightweight rack based web API wrapper for Truemail |
150
+ | [truemail](https://github.com/truemail-rb/truemail) | ruby gem | Configurable framework agnostic plain Ruby email validator, main core |
151
+ | [truemail server](https://github.com/truemail-rb/truemail-rack) | ruby app | Lightweight rack based web API wrapper for Truemail gem |
143
152
  | [truemail-rack-docker](https://github.com/truemail-rb/truemail-rack-docker-image) | docker image | Lightweight rack based web API [dockerized image](https://hub.docker.com/r/truemail/truemail-rack) :whale: of Truemail server |
144
- | [truemail-ruby-client](https://github.com/truemail-rb/truemail-ruby-client) | ruby gem | Truemail web API client library for Ruby |
145
- | [truemail-crystal-client](https://github.com/truemail-rb/truemail-crystal-client) | crystal shard | Truemail web API client library for Crystal |
153
+ | [truemail-ruby-client](https://github.com/truemail-rb/truemail-ruby-client) | ruby gem | Web API Ruby client for Truemail Server |
154
+ | [truemail-crystal-client](https://github.com/truemail-rb/truemail-crystal-client) | crystal shard | Web API Crystal client for Truemail Server |
155
+ | [truemail-java-client](https://github.com/truemail-rb/truemail-java-client) | java lib | Web API Java client for Truemail Server |
146
156
 
147
157
  ## Contributing
148
158
 
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'faker'
3
4
  require 'truemail/rspec/version'
4
5
  require 'truemail/rspec/configuration_helper'
5
6
  require 'truemail/rspec/auditor_helper'
@@ -5,7 +5,7 @@ module Truemail
5
5
  module AuditorHelper
6
6
  def create_auditor(
7
7
  success: true,
8
- current_host_ip: FFaker::Internet.ip_v4_address,
8
+ current_host_ip: ::Faker::Internet.ip_v4_address,
9
9
  warnings: { ip: Truemail::Audit::Ip::IPIFY_ERROR },
10
10
  configuration: create_configuration
11
11
  )
@@ -12,7 +12,7 @@ module Truemail
12
12
  end
13
13
 
14
14
  def create_configuration(**configuration_settings)
15
- configuration_settings[:verifier_email] = FFaker::Internet.email unless configuration_settings[:verifier_email]
15
+ configuration_settings[:verifier_email] = ::Faker::Internet.email unless configuration_settings[:verifier_email]
16
16
  Truemail::Configuration.new(&configuration_block(**configuration_settings))
17
17
  end
18
18
  end
@@ -4,17 +4,18 @@ module Truemail
4
4
  module RSpec
5
5
  module ValidatorHelper
6
6
  def create_servers_list
7
- Array.new(rand(1..4)) { FFaker::Internet.ip_v4_address }
7
+ Array.new(rand(1..4)) { ::Faker::Internet.ip_v4_address }
8
8
  end
9
9
 
10
- def create_validator(
10
+ def create_validator( # rubocop:disable Metrics/ParameterLists
11
11
  validation_type = nil,
12
- email = FFaker::Internet.email,
12
+ email = ::Faker::Internet.email,
13
13
  mail_servers = create_servers_list,
14
+ rcptto_error: 'user not found',
14
15
  success: true,
15
16
  configuration: create_configuration
16
17
  )
17
- set_expected_result(validation_type, email, mail_servers, success, configuration)
18
+ set_expected_result(validation_type, email, mail_servers, success, configuration, rcptto_error)
18
19
  stub_validation_layers
19
20
  validator_instance = ValidatorFactory.call(validation_type, success, email, configuration)
20
21
  unstub_validation_layers
@@ -23,14 +24,15 @@ module Truemail
23
24
 
24
25
  private
25
26
 
26
- attr_reader :validation_type, :email, :success, :configuration, :mail_servers
27
+ attr_reader :validation_type, :email, :success, :configuration, :mail_servers, :rcptto_error
27
28
 
28
- def set_expected_result(validation_type, email, mail_servers, success, configuration)
29
+ def set_expected_result(validation_type, email, mail_servers, success, configuration, rcptto_error) # rubocop:disable Metrics/ParameterLists
29
30
  @validation_type = validation_type
30
31
  @email = email
31
32
  @mail_servers = mail_servers
32
33
  @success = success
33
34
  @configuration = configuration
35
+ @rcptto_error = rcptto_error
34
36
  end
35
37
 
36
38
  def stub_validation_layers
@@ -74,7 +76,7 @@ module Truemail
74
76
  response.helo = true
75
77
  response.mailfrom = true
76
78
  response.rcptto = false
77
- response.errors[:rcptto] = 'user not found'
79
+ response.errors[:rcptto] = rcptto_error
78
80
  end
79
81
 
80
82
  request
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Truemail
4
4
  module RSpec
5
- VERSION = '0.2.1'
5
+ VERSION = '0.4.0'
6
6
  end
7
7
  end
@@ -33,17 +33,18 @@ Gem::Specification.new do |spec|
33
33
 
34
34
  spec.add_development_dependency 'bundler', '~> 1.16'
35
35
  spec.add_development_dependency 'bundler-audit', '~> 0.7.0.1'
36
- spec.add_development_dependency 'fasterer', '~> 0.8.3'
37
- spec.add_development_dependency 'ffaker', '~> 2.17'
38
- spec.add_development_dependency 'overcommit', '~> 0.55.0'
36
+ spec.add_development_dependency 'faker', '~> 2.16'
37
+ spec.add_development_dependency 'fasterer', '~> 0.9.0'
38
+ spec.add_development_dependency 'overcommit', '~> 0.57.0'
39
39
  spec.add_development_dependency 'pry-byebug', '~> 3.9'
40
- spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.1'
41
- spec.add_development_dependency 'reek', '~> 6.0', '>= 6.0.1'
42
- spec.add_development_dependency 'rspec', '~> 3.9'
43
- spec.add_development_dependency 'rubocop', '~> 0.89.1'
44
- spec.add_development_dependency 'rubocop-performance', '~> 1.7', '>= 1.7.1'
45
- spec.add_development_dependency 'rubocop-rspec', '~> 1.43', '>= 1.43.1'
40
+ spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.3'
41
+ spec.add_development_dependency 'reek', '~> 6.0', '>= 6.0.3'
42
+ spec.add_development_dependency 'rspec', '~> 3.10'
43
+ spec.add_development_dependency 'rubocop', '~> 1.10'
44
+ spec.add_development_dependency 'rubocop-performance', '~> 1.9', '>= 1.9.2'
45
+ spec.add_development_dependency 'rubocop-rspec', '~> 2.2'
46
46
  spec.add_development_dependency 'simplecov', '~> 0.17.1'
47
- spec.add_runtime_dependency 'rspec', '~> 3.9'
48
- spec.add_runtime_dependency 'truemail', '~> 1.4', '>= 1.4.1'
47
+ spec.add_runtime_dependency 'faker', '~> 2.16'
48
+ spec.add_runtime_dependency 'rspec', '~> 3.10'
49
+ spec.add_runtime_dependency 'truemail', '>= 2.3'
49
50
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: truemail-rspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vladislav Trotsenko
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-09-21 00:00:00.000000000 Z
11
+ date: 2021-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -39,47 +39,47 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: 0.7.0.1
41
41
  - !ruby/object:Gem::Dependency
42
- name: fasterer
42
+ name: faker
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.8.3
47
+ version: '2.16'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.8.3
54
+ version: '2.16'
55
55
  - !ruby/object:Gem::Dependency
56
- name: ffaker
56
+ name: fasterer
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '2.17'
61
+ version: 0.9.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '2.17'
68
+ version: 0.9.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: overcommit
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 0.55.0
75
+ version: 0.57.0
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 0.55.0
82
+ version: 0.57.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: pry-byebug
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -103,7 +103,7 @@ dependencies:
103
103
  version: '13.0'
104
104
  - - ">="
105
105
  - !ruby/object:Gem::Version
106
- version: 13.0.1
106
+ version: 13.0.3
107
107
  type: :development
108
108
  prerelease: false
109
109
  version_requirements: !ruby/object:Gem::Requirement
@@ -113,7 +113,7 @@ dependencies:
113
113
  version: '13.0'
114
114
  - - ">="
115
115
  - !ruby/object:Gem::Version
116
- version: 13.0.1
116
+ version: 13.0.3
117
117
  - !ruby/object:Gem::Dependency
118
118
  name: reek
119
119
  requirement: !ruby/object:Gem::Requirement
@@ -123,7 +123,7 @@ dependencies:
123
123
  version: '6.0'
124
124
  - - ">="
125
125
  - !ruby/object:Gem::Version
126
- version: 6.0.1
126
+ version: 6.0.3
127
127
  type: :development
128
128
  prerelease: false
129
129
  version_requirements: !ruby/object:Gem::Requirement
@@ -133,75 +133,69 @@ dependencies:
133
133
  version: '6.0'
134
134
  - - ">="
135
135
  - !ruby/object:Gem::Version
136
- version: 6.0.1
136
+ version: 6.0.3
137
137
  - !ruby/object:Gem::Dependency
138
138
  name: rspec
139
139
  requirement: !ruby/object:Gem::Requirement
140
140
  requirements:
141
141
  - - "~>"
142
142
  - !ruby/object:Gem::Version
143
- version: '3.9'
143
+ version: '3.10'
144
144
  type: :development
145
145
  prerelease: false
146
146
  version_requirements: !ruby/object:Gem::Requirement
147
147
  requirements:
148
148
  - - "~>"
149
149
  - !ruby/object:Gem::Version
150
- version: '3.9'
150
+ version: '3.10'
151
151
  - !ruby/object:Gem::Dependency
152
152
  name: rubocop
153
153
  requirement: !ruby/object:Gem::Requirement
154
154
  requirements:
155
155
  - - "~>"
156
156
  - !ruby/object:Gem::Version
157
- version: 0.89.1
157
+ version: '1.10'
158
158
  type: :development
159
159
  prerelease: false
160
160
  version_requirements: !ruby/object:Gem::Requirement
161
161
  requirements:
162
162
  - - "~>"
163
163
  - !ruby/object:Gem::Version
164
- version: 0.89.1
164
+ version: '1.10'
165
165
  - !ruby/object:Gem::Dependency
166
166
  name: rubocop-performance
167
167
  requirement: !ruby/object:Gem::Requirement
168
168
  requirements:
169
169
  - - "~>"
170
170
  - !ruby/object:Gem::Version
171
- version: '1.7'
171
+ version: '1.9'
172
172
  - - ">="
173
173
  - !ruby/object:Gem::Version
174
- version: 1.7.1
174
+ version: 1.9.2
175
175
  type: :development
176
176
  prerelease: false
177
177
  version_requirements: !ruby/object:Gem::Requirement
178
178
  requirements:
179
179
  - - "~>"
180
180
  - !ruby/object:Gem::Version
181
- version: '1.7'
181
+ version: '1.9'
182
182
  - - ">="
183
183
  - !ruby/object:Gem::Version
184
- version: 1.7.1
184
+ version: 1.9.2
185
185
  - !ruby/object:Gem::Dependency
186
186
  name: rubocop-rspec
187
187
  requirement: !ruby/object:Gem::Requirement
188
188
  requirements:
189
189
  - - "~>"
190
190
  - !ruby/object:Gem::Version
191
- version: '1.43'
192
- - - ">="
193
- - !ruby/object:Gem::Version
194
- version: 1.43.1
191
+ version: '2.2'
195
192
  type: :development
196
193
  prerelease: false
197
194
  version_requirements: !ruby/object:Gem::Requirement
198
195
  requirements:
199
196
  - - "~>"
200
197
  - !ruby/object:Gem::Version
201
- version: '1.43'
202
- - - ">="
203
- - !ruby/object:Gem::Version
204
- version: 1.43.1
198
+ version: '2.2'
205
199
  - !ruby/object:Gem::Dependency
206
200
  name: simplecov
207
201
  requirement: !ruby/object:Gem::Requirement
@@ -217,39 +211,47 @@ dependencies:
217
211
  - !ruby/object:Gem::Version
218
212
  version: 0.17.1
219
213
  - !ruby/object:Gem::Dependency
220
- name: rspec
214
+ name: faker
221
215
  requirement: !ruby/object:Gem::Requirement
222
216
  requirements:
223
217
  - - "~>"
224
218
  - !ruby/object:Gem::Version
225
- version: '3.9'
219
+ version: '2.16'
226
220
  type: :runtime
227
221
  prerelease: false
228
222
  version_requirements: !ruby/object:Gem::Requirement
229
223
  requirements:
230
224
  - - "~>"
231
225
  - !ruby/object:Gem::Version
232
- version: '3.9'
226
+ version: '2.16'
233
227
  - !ruby/object:Gem::Dependency
234
- name: truemail
228
+ name: rspec
235
229
  requirement: !ruby/object:Gem::Requirement
236
230
  requirements:
237
231
  - - "~>"
238
232
  - !ruby/object:Gem::Version
239
- version: '1.4'
240
- - - ">="
241
- - !ruby/object:Gem::Version
242
- version: 1.4.1
233
+ version: '3.10'
243
234
  type: :runtime
244
235
  prerelease: false
245
236
  version_requirements: !ruby/object:Gem::Requirement
246
237
  requirements:
247
238
  - - "~>"
248
239
  - !ruby/object:Gem::Version
249
- version: '1.4'
240
+ version: '3.10'
241
+ - !ruby/object:Gem::Dependency
242
+ name: truemail
243
+ requirement: !ruby/object:Gem::Requirement
244
+ requirements:
245
+ - - ">="
246
+ - !ruby/object:Gem::Version
247
+ version: '2.3'
248
+ type: :runtime
249
+ prerelease: false
250
+ version_requirements: !ruby/object:Gem::Requirement
251
+ requirements:
250
252
  - - ">="
251
253
  - !ruby/object:Gem::Version
252
- version: 1.4.1
254
+ version: '2.3'
253
255
  description: Truemail RSpec helpers
254
256
  email:
255
257
  - admin@bestweb.com.ua
@@ -259,7 +261,11 @@ extra_rdoc_files: []
259
261
  files:
260
262
  - ".circleci/config.yml"
261
263
  - ".codeclimate.yml"
262
- - ".github/ISSUE_TEMPLATE.md"
264
+ - ".github/BRANCH_NAMING_CONVENTION.md"
265
+ - ".github/ISSUE_TEMPLATE/bug_report.md"
266
+ - ".github/ISSUE_TEMPLATE/feature_request.md"
267
+ - ".github/ISSUE_TEMPLATE/issue_report.md"
268
+ - ".github/ISSUE_TEMPLATE/question.md"
263
269
  - ".github/PULL_REQUEST_TEMPLATE.md"
264
270
  - ".gitignore"
265
271
  - ".overcommit.yml"