Skip to content

Commit 0e4ada5

Browse files
authored
Technical/Update gem dependencies (#269)
* Updated gemspecs * Updated codeclimate config * Changed rspec helpers namespaces * Updated reek config
1 parent 30ddb66 commit 0e4ada5

20 files changed

+201
-190
lines changed

.circleci/gemspecs/compatible

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Gem::Specification.new do |spec|
1616
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
1717
spec.require_paths = %w[lib]
1818

19-
spec.add_runtime_dependency 'net-smtp', '~> 0.3.3' if ::Gem::Version.new(::RUBY_VERSION) >= ::Gem::Version.new('3.1.0')
19+
spec.add_runtime_dependency 'net-smtp', '~> 0.4.0' if ::Gem::Version.new(::RUBY_VERSION) >= ::Gem::Version.new('3.1.0')
2020
spec.add_runtime_dependency 'simpleidn', '~> 0.2.1'
2121

2222
spec.add_development_dependency 'dns_mock'

.circleci/gemspecs/latest

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,23 +16,23 @@ Gem::Specification.new do |spec|
1616
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
1717
spec.require_paths = %w[lib]
1818

19-
spec.add_runtime_dependency 'net-smtp', '~> 0.3.3'
19+
spec.add_runtime_dependency 'net-smtp', '~> 0.4.0'
2020
spec.add_runtime_dependency 'simpleidn', '~> 0.2.1'
2121

2222
spec.add_development_dependency 'bundler-audit', '~> 0.9.1'
23-
spec.add_development_dependency 'dns_mock', '~> 1.5', '>= 1.5.15'
23+
spec.add_development_dependency 'dns_mock', '~> 1.5', '>= 1.5.16'
2424
spec.add_development_dependency 'fasterer', '~> 0.10.1'
25-
spec.add_development_dependency 'ffaker', '~> 2.21'
25+
spec.add_development_dependency 'ffaker', '~> 2.23'
2626
spec.add_development_dependency 'json_matchers', '~> 0.11.1'
2727
spec.add_development_dependency 'pry-byebug', '~> 3.10', '>= 3.10.1'
28-
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
28+
spec.add_development_dependency 'rake', '~> 13.1'
2929
spec.add_development_dependency 'reek', '~> 6.1', '>= 6.1.4'
3030
spec.add_development_dependency 'rspec', '~> 3.12'
31-
spec.add_development_dependency 'rubocop', '~> 1.56'
32-
spec.add_development_dependency 'rubocop-performance', '~> 1.19'
33-
spec.add_development_dependency 'rubocop-rspec', '~> 2.23', '>= 2.23.2'
31+
spec.add_development_dependency 'rubocop', '~> 1.57', '>= 1.57.2'
32+
spec.add_development_dependency 'rubocop-performance', '~> 1.19', '>= 1.19.1'
33+
spec.add_development_dependency 'rubocop-rspec', '~> 2.25'
3434
spec.add_development_dependency 'simplecov', '~> 0.22.0'
35-
spec.add_development_dependency 'smtp_mock', '~> 1.3', '>= 1.3.4'
36-
spec.add_development_dependency 'truemail-rspec', '~> 1.1'
37-
spec.add_development_dependency 'webmock', '~> 3.18', '>= 3.18.1'
35+
spec.add_development_dependency 'smtp_mock', '~> 1.3', '>= 1.3.5'
36+
spec.add_development_dependency 'truemail-rspec', '~> 1.2'
37+
spec.add_development_dependency 'webmock', '~> 3.19', '>= 3.19.1'
3838
end

.codeclimate.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ checks:
99
plugins:
1010
rubocop:
1111
enabled: true
12-
channel: rubocop-1-56
12+
channel: rubocop-1-57
1313
config:
1414
file: .circleci/linter_configs/.rubocop.yml
1515

.reek.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ detectors:
5656

5757
ControlParameter:
5858
exclude:
59-
- Truemail::GenerateEmailHelper#calculate_email_size
59+
- Truemail::RspecHelper::GenerateEmail#calculate_email_size
6060
- Truemail::Worker#success
6161
- Truemail#raise_unless
6262
- Truemail::Configuration#raise_unless
@@ -65,7 +65,7 @@ detectors:
6565
FeatureEnvy:
6666
exclude:
6767
- Truemail::Validate::Smtp#not_includes_user_not_found_errors
68-
- Truemail::GenerateEmailHelper#prepare_user_name
68+
- Truemail::RspecHelper::GenerateEmail#prepare_user_name
6969
- Truemail::ConfigurationHelper#create_configuration
7070
- Truemail::Log::Serializer::Base#smtp_debug
7171
- Truemail::Log::Serializer::Text#data_composer

CHANGELOG.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -356,8 +356,8 @@ Optimized DNS (MX) validation flow. Removed needless DNS request for case when c
356356

357357
### Updated
358358

359-
- Updated gem codebase, refactored `Truemail::ContextHelper`
360-
- Updated tests with `Truemail::DnsHelper#dns_mock_gateway`
359+
- Updated gem codebase, refactored `Truemail::RspecHelper::Context`
360+
- Updated tests with `Truemail::RspecHelper::Dns#dns_mock_gateway`
361361
- Updated gem development dependencies
362362
- Updated gem version
363363

spec/spec_helper.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99

1010
RSpec::Mocks.configuration.allow_message_expectations_on_nil = true
1111
RSpec.configure do |config|
12-
config.include Truemail::ContextHelper
13-
config.include Truemail::DnsHelper
14-
config.include Truemail::IpifyHelper
12+
config.include Truemail::RspecHelper::Context
13+
config.include Truemail::RspecHelper::Dns
14+
config.include Truemail::RspecHelper::Ipify
1515
config.order = :random
1616
config.example_status_persistence_file_path = '.rspec_status'
1717
config.disable_monkey_patching!

spec/support/helpers/context.rb

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# frozen_string_literal: true
2+
3+
module Truemail
4+
module RspecHelper
5+
module Context
6+
NON_ASCII_WORDS = %w[mañana ĉapelo dấu παράδειγμα 屋企].freeze
7+
8+
def random_email
9+
ffaker.email
10+
end
11+
12+
def random_uniq_email
13+
ffaker.unique.email
14+
end
15+
16+
def random_internationalized_email
17+
"#{ffaker.user_name}@#{Truemail::RspecHelper::Context::NON_ASCII_WORDS.sample}.#{ffaker.domain_suffix}"
18+
end
19+
20+
def random_ip_address
21+
ffaker.ip_v4_address
22+
end
23+
24+
def random_domain_name
25+
ffaker.domain_name
26+
end
27+
28+
def random_uniq_domain_name
29+
ffaker.unique.domain_name
30+
end
31+
32+
def rdns_lookup_host_address(host_address)
33+
DnsMock::Representer::RdnsLookup.call(host_address)
34+
end
35+
36+
def domain_from_email(email)
37+
email[Truemail::RegexConstant::REGEX_DOMAIN_FROM_EMAIL, 1]
38+
end
39+
40+
def email_punycode_domain(email)
41+
DnsMock::Representer::Punycode.call(domain_from_email(email))
42+
end
43+
44+
def attempts_getter
45+
->(smtp_request_instance) { smtp_request_instance.send(:attempts) }
46+
end
47+
48+
private
49+
50+
def ffaker
51+
FFaker::Internet
52+
end
53+
end
54+
end
55+
end

spec/support/helpers/context_helper.rb

Lines changed: 0 additions & 53 deletions
This file was deleted.

spec/support/helpers/dns.rb

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# frozen_string_literal: true
2+
3+
module Truemail
4+
module RspecHelper
5+
module Dns
6+
LOCALHOST_IP_ADDRESS = '127.0.0.1'
7+
8+
def dns_mock_gateway
9+
["#{Truemail::RspecHelper::Dns::LOCALHOST_IP_ADDRESS}:#{dns_mock_server.port}"]
10+
end
11+
12+
def dns_mock_records_by_email(email, dimension: 1)
13+
mx_records = ::Array.new(dimension) { random_domain_name }
14+
a_records = ::Array.new(dimension) { [Truemail::RspecHelper::Dns::LOCALHOST_IP_ADDRESS] }
15+
mx_records_dns_mock = mx_records.zip(a_records).to_h.transform_values { |value| { a: value } }
16+
{ domain_from_email(email) => { mx: mx_records } }.merge(mx_records_dns_mock)
17+
end
18+
end
19+
end
20+
end

spec/support/helpers/dns_helper.rb

Lines changed: 0 additions & 18 deletions
This file was deleted.

0 commit comments

Comments
 (0)