truemail-rspec 0.9.2 → 1.0.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c2faac1f1dcb4dd429c9cd3854f899b7f1f569449a0027783ebf3d927515d0ba
4
- data.tar.gz: b83a0f7f733887075e36676c8ab7336f08f505e8334b07cc26d80b97bac7f73d
3
+ metadata.gz: 8ebf85309e59ff11f0a9bbb91765f27fb18d434174e0957a90e020b273070fa9
4
+ data.tar.gz: 5c930279fb803f145eb4cf6696a0e120e15de41cfff0bb9943a65a1e9c7ec77a
5
5
  SHA512:
6
- metadata.gz: 3ea23929d026d4287d03ba1c09e03e3a000574181a495e284ab6adda5afdeb322929cbc4fac1722381276cf23d70794197f35612241a5b763793efc0b93ccc77
7
- data.tar.gz: f799058f2e8689d8aa575a99117b62b8939336391f308a051df094d31cb5af9bafa2e3822047598aa10fbf40533c42f86e5654abf0ff151a9c52234b40d3f82b
6
+ metadata.gz: 50675d24c85368c6937b0054361f3b5d4ef3b881a548b0321ce47972935a6dc0d35e50a932e55ccd9dd4d36be3d6b8548081a6302700117f3cbf1586d6c17e91
7
+ data.tar.gz: 405fd4652c5ceebdc7c2f94fe9bf5445477805c35edfc85ae12f00ddd8fa92665484ee28ee151cde6273989d417c1184579c298e50ffb76237bcd4411d463410
data/.circleci/config.yml CHANGED
@@ -115,7 +115,7 @@ jobs:
115
115
  - checkout
116
116
  - <<: *use_compatible_gemspec
117
117
  - ruby/install-deps:
118
- bundler-version: "2.3.23"
118
+ bundler-version: "2.3.24"
119
119
  with-cache: false
120
120
  path: './vendor/custom_bundle'
121
121
  - run:
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
31
31
 
32
32
  spec.add_runtime_dependency 'ffaker', '~> 2.21'
33
33
  spec.add_runtime_dependency 'rspec', '~> 3.11'
34
- spec.add_runtime_dependency 'truemail', '~> 2.7', '>= 2.7.4'
34
+ spec.add_runtime_dependency 'truemail', '~> 3.0'
35
35
 
36
36
  spec.add_development_dependency 'ffaker', '~> 2.21'
37
37
  spec.add_development_dependency 'pry-byebug', '~> 3.9'
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
32
32
  spec.add_runtime_dependency 'ffaker', '~> 2.21'
33
33
  spec.add_runtime_dependency 'net-smtp', '~> 0.3.2'
34
34
  spec.add_runtime_dependency 'rspec', '~> 3.11'
35
- spec.add_runtime_dependency 'truemail', '~> 2.7', '>= 2.7.4'
35
+ spec.add_runtime_dependency 'truemail', '~> 3.0'
36
36
 
37
37
  spec.add_development_dependency 'bundler-audit', '~> 0.9.1'
38
38
  spec.add_development_dependency 'fasterer', '~> 0.10.0'
@@ -42,7 +42,7 @@ Gem::Specification.new do |spec|
42
42
  spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
43
43
  spec.add_development_dependency 'reek', '~> 6.1', '>= 6.1.1'
44
44
  spec.add_development_dependency 'rspec', '~> 3.11'
45
- spec.add_development_dependency 'rubocop', '~> 1.36'
45
+ spec.add_development_dependency 'rubocop', '~> 1.37'
46
46
  spec.add_development_dependency 'rubocop-performance', '~> 1.15'
47
47
  spec.add_development_dependency 'rubocop-rspec', '~> 2.13', '>= 2.13.2'
48
48
  spec.add_development_dependency 'simplecov', '~> 0.21.2'
data/.codeclimate.yml CHANGED
@@ -7,7 +7,7 @@ checks:
7
7
  plugins:
8
8
  rubocop:
9
9
  enabled: true
10
- channel: rubocop-1-36
10
+ channel: rubocop-1-37
11
11
 
12
12
  reek:
13
13
  enabled: true
data/CHANGELOG.md CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
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).
4
4
 
5
+ ## [1.0.0] - 2022-10-25
6
+
7
+ ### Added
8
+
9
+ - Ability to create `Truemail::Validator` instance for `Whitelist/Blacklist` validation layer
10
+
11
+ ### Updated
12
+
13
+ - Updated `Truemail::RSpec::ValidatorHelper::ValidatorFactory#process_validator_params`, tests
14
+ - Updated gem runtime dependencies
15
+ - Updated gem development dependencies
16
+ - Updated gem readme, gem version
17
+
5
18
  ## [0.9.2] - 2022-10-09
6
19
 
7
20
  ### Updated
data/README.md CHANGED
@@ -129,7 +129,7 @@ create_servers_list(42) # => returns array with 42 random ip addresses
129
129
 
130
130
  ```ruby
131
131
  create_validator(
132
- validation_type, # optional, type:Symbol, can be :whitelist, :regex, :mx, :mx_blacklist or :smtp, by default creates :smtp validation
132
+ validation_type, # optional, type:Symbol, can be :emails_list, :domains_list, :regex, :mx, :mx_blacklist or :smtp, by default creates :smtp validation
133
133
  email, # optional, type:String, by default random email
134
134
  mail_servers, # optional, type:Array(String), by default array with random ip addresses
135
135
  success: true, # optional, type:Bool, by default true
@@ -3,6 +3,8 @@
3
3
  module Truemail
4
4
  module RSpec
5
5
  module ValidatorHelper
6
+ VALIDATION_LIST_TYPE_REGEX_PATTERN = /(emails|domains)(_list)/.freeze
7
+
6
8
  def create_servers_list(size = nil)
7
9
  ::Array.new(size || ::Random.rand(1..4)) { ::FFaker::Internet.ip_v4_address }
8
10
  end
@@ -122,13 +124,15 @@ module Truemail
122
124
  attr_reader :success, :email, :mail_servers, :configuration
123
125
  attr_accessor :validation_type
124
126
 
125
- def process_validator_params
127
+ def process_validator_params # rubocop:disable Metrics/AbcSize
126
128
  case validation_type
127
- when :whitelist
129
+ when Truemail::RSpec::ValidatorHelper::VALIDATION_LIST_TYPE_REGEX_PATTERN
130
+ list_type = validation_type[Truemail::RSpec::ValidatorHelper::VALIDATION_LIST_TYPE_REGEX_PATTERN, 1]
128
131
  self.validation_type = nil
129
- method = success ? :whitelisted_domains : :blacklisted_domains
130
- domain = email[Truemail::RegexConstant::REGEX_EMAIL_PATTERN, 3]
131
- configuration.tap { |config| config.public_send(method) << domain }
132
+ method = success ? :"whitelisted_#{list_type}" : :"blacklisted_#{list_type}"
133
+ configuration.tap do |config|
134
+ config.public_send(method) << (list_type.eql?('emails') ? email : email[Truemail::RegexConstant::REGEX_EMAIL_PATTERN, 3])
135
+ end
132
136
  when :mx_blacklist
133
137
  configuration.blacklisted_mx_ip_addresses.push(*mail_servers) unless success
134
138
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Truemail
4
4
  module RSpec
5
- VERSION = '0.9.2'
5
+ VERSION = '1.0.0'
6
6
  end
7
7
  end
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
32
32
  spec.add_runtime_dependency 'ffaker', '~> 2.21'
33
33
  spec.add_runtime_dependency 'net-smtp', '~> 0.3.2' if ::RUBY_VERSION >= '3.1.0'
34
34
  spec.add_runtime_dependency 'rspec', '~> 3.11'
35
- spec.add_runtime_dependency 'truemail', '~> 2.7', '>= 2.7.4'
35
+ spec.add_runtime_dependency 'truemail', '~> 3.0'
36
36
 
37
37
  spec.add_development_dependency 'ffaker', '~> 2.21'
38
38
  spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
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.9.2
4
+ version: 1.0.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: 2022-10-09 00:00:00.000000000 Z
11
+ date: 2022-10-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffaker
@@ -44,20 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '2.7'
48
- - - ">="
49
- - !ruby/object:Gem::Version
50
- version: 2.7.4
47
+ version: '3.0'
51
48
  type: :runtime
52
49
  prerelease: false
53
50
  version_requirements: !ruby/object:Gem::Requirement
54
51
  requirements:
55
52
  - - "~>"
56
53
  - !ruby/object:Gem::Version
57
- version: '2.7'
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- version: 2.7.4
54
+ version: '3.0'
61
55
  - !ruby/object:Gem::Dependency
62
56
  name: ffaker
63
57
  requirement: !ruby/object:Gem::Requirement