truemail 3.0.0 → 3.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +1 -1
- data/.circleci/gemspec_compatible +2 -2
- data/.circleci/gemspec_latest +4 -4
- data/CHANGELOG.md +12 -0
- data/README.md +50 -0
- data/lib/truemail/version.rb +1 -1
- data/truemail.gemspec +3 -3
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 14cf6d4a2b730702849ca49317fdb3a054562f3e41de01b4e88737dc1da09ff8
|
4
|
+
data.tar.gz: b07cf758750e1532189f57e88ba61b06f4a2c5b9c570f76187c52d2e38c1e2f6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 665f453be4cd3bfbc10a66dfce4cc41b842ef1e36fdd22f8aacbe2def6f1ca542043647f528910320fa498d10c31cabc86d74b9fb5a8f5f4d79b6b02ae34eff6
|
7
|
+
data.tar.gz: 7f229a5a880117b42d7a070a83d5040e147402db193139929ea192f0451e2c7934f81b048146ed79369a2b0d985dab2f82dd80ee750f58ae452472254a2ddf95
|
data/.circleci/config.yml
CHANGED
@@ -35,8 +35,8 @@ Gem::Specification.new do |spec|
|
|
35
35
|
spec.add_development_dependency 'ffaker', '~> 2.21'
|
36
36
|
spec.add_development_dependency 'json_matchers', '~> 0.11.1'
|
37
37
|
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
|
38
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
38
|
+
spec.add_development_dependency 'rspec', '~> 3.12'
|
39
39
|
spec.add_development_dependency 'smtp_mock', '~> 1.2', '>= 1.2.2'
|
40
|
-
spec.add_development_dependency 'truemail-rspec', '~> 0
|
40
|
+
spec.add_development_dependency 'truemail-rspec', '~> 1.0'
|
41
41
|
spec.add_development_dependency 'webmock', '~> 3.18', '>= 3.18.1'
|
42
42
|
end
|
data/.circleci/gemspec_latest
CHANGED
@@ -41,12 +41,12 @@ Gem::Specification.new do |spec|
|
|
41
41
|
spec.add_development_dependency 'pry-byebug', '~> 3.10', '>= 3.10.1'
|
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
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
45
|
-
spec.add_development_dependency 'rubocop', '~> 1.37'
|
44
|
+
spec.add_development_dependency 'rspec', '~> 3.12'
|
45
|
+
spec.add_development_dependency 'rubocop', '~> 1.37', '>= 1.37.1'
|
46
46
|
spec.add_development_dependency 'rubocop-performance', '~> 1.15'
|
47
|
-
spec.add_development_dependency 'rubocop-rspec', '~> 2.
|
47
|
+
spec.add_development_dependency 'rubocop-rspec', '~> 2.14', '>= 2.14.2'
|
48
48
|
spec.add_development_dependency 'simplecov', '~> 0.21.2'
|
49
49
|
spec.add_development_dependency 'smtp_mock', '~> 1.2', '>= 1.2.2'
|
50
|
-
spec.add_development_dependency 'truemail-rspec', '~> 0
|
50
|
+
spec.add_development_dependency 'truemail-rspec', '~> 1.0'
|
51
51
|
spec.add_development_dependency 'webmock', '~> 3.18', '>= 3.18.1'
|
52
52
|
end
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,18 @@
|
|
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
|
+
## [3.0.1] - 2022.11.01
|
6
|
+
|
7
|
+
### Fixed
|
8
|
+
|
9
|
+
- Fixed wrong semantic version comparison in gemspec runtime dependency definition
|
10
|
+
|
11
|
+
### Updated
|
12
|
+
|
13
|
+
- Updated RSpec helpers
|
14
|
+
- Updated gemspecs, circleci config
|
15
|
+
- Updated gem version
|
16
|
+
|
5
17
|
## [3.0.0] - 2022.10.24
|
6
18
|
|
7
19
|
### Added
|
data/README.md
CHANGED
@@ -1451,6 +1451,56 @@ Truemail.configure do |config|
|
|
1451
1451
|
end
|
1452
1452
|
```
|
1453
1453
|
|
1454
|
+
Or you can use end-to-end approach and mock DNS and SMTP services with [`dns_mock`](https://github.com/mocktools/ruby-dns-mock), [`smtp_mock`](https://github.com/mocktools/ruby-smtp-mock) for your test environment like in example below:
|
1455
|
+
|
1456
|
+
```ruby
|
1457
|
+
# Gemfile
|
1458
|
+
|
1459
|
+
group :test do
|
1460
|
+
gem 'dns_mock', require: false
|
1461
|
+
gem 'smtp_mock', require: false
|
1462
|
+
end
|
1463
|
+
|
1464
|
+
# spec/spec_helper.rb
|
1465
|
+
|
1466
|
+
require 'dns_mock/test_framework/rspec'
|
1467
|
+
require 'smtp_mock/test_framework/rspec'
|
1468
|
+
|
1469
|
+
RSpec.configure do |config|
|
1470
|
+
config.include DnsMock::TestFramework::RSpec::Helper
|
1471
|
+
config.include SmtpMock::TestFramework::RSpec::Helper
|
1472
|
+
end
|
1473
|
+
|
1474
|
+
# spec/integration_spec.rb
|
1475
|
+
|
1476
|
+
RSpec.describe 'integration tests' do
|
1477
|
+
let(:target_email) { random_email }
|
1478
|
+
let(:dns_mock_records) { dns_mock_records_by_email(target_email, dimension: 2) }
|
1479
|
+
|
1480
|
+
before do
|
1481
|
+
dns_mock_server.assign_mocks(dns_mock_records)
|
1482
|
+
smtp_mock_server(**smtp_mock_server_options)
|
1483
|
+
|
1484
|
+
Truemail.configuration.tap do |config|
|
1485
|
+
config.dns = %W[127.0.0.1:#{dns_mock_server.port}]
|
1486
|
+
config.smtp_port = smtp_mock_server.port
|
1487
|
+
end
|
1488
|
+
end
|
1489
|
+
|
1490
|
+
context 'when checks real email' do
|
1491
|
+
let(:smtp_mock_server_options) { {} }
|
1492
|
+
|
1493
|
+
it { expect(Truemail.validate(target_email).result).to be_valid }
|
1494
|
+
end
|
1495
|
+
|
1496
|
+
context 'when checks fake email' do
|
1497
|
+
let(:smtp_mock_server_options) { { not_registered_emails: [target_email] } }
|
1498
|
+
|
1499
|
+
it { expect(Truemail.validate(target_email).result).not_to be_valid }
|
1500
|
+
end
|
1501
|
+
end
|
1502
|
+
```
|
1503
|
+
|
1454
1504
|
---
|
1455
1505
|
|
1456
1506
|
## Truemail family
|
data/lib/truemail/version.rb
CHANGED
data/truemail.gemspec
CHANGED
@@ -29,15 +29,15 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| ::File.basename(f) }
|
30
30
|
spec.require_paths = ['lib']
|
31
31
|
|
32
|
-
spec.add_runtime_dependency 'net-smtp', '~> 0.3.2' if ::RUBY_VERSION >= '3.1.0'
|
32
|
+
spec.add_runtime_dependency 'net-smtp', '~> 0.3.2' if ::Gem::Version.new(::RUBY_VERSION) >= ::Gem::Version.new('3.1.0')
|
33
33
|
spec.add_runtime_dependency 'simpleidn', '~> 0.2.1'
|
34
34
|
|
35
35
|
spec.add_development_dependency 'dns_mock', '~> 1.5', '>= 1.5.5'
|
36
36
|
spec.add_development_dependency 'ffaker', '~> 2.21'
|
37
37
|
spec.add_development_dependency 'json_matchers', '~> 0.11.1'
|
38
38
|
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
|
39
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
39
|
+
spec.add_development_dependency 'rspec', '~> 3.12'
|
40
40
|
spec.add_development_dependency 'smtp_mock', '~> 1.2', '>= 1.2.2'
|
41
|
-
spec.add_development_dependency 'truemail-rspec', '~> 0
|
41
|
+
spec.add_development_dependency 'truemail-rspec', '~> 1.0'
|
42
42
|
spec.add_development_dependency 'webmock', '~> 3.18', '>= 3.18.1'
|
43
43
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: truemail
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.1
|
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-
|
11
|
+
date: 2022-11-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: simpleidn
|
@@ -98,14 +98,14 @@ dependencies:
|
|
98
98
|
requirements:
|
99
99
|
- - "~>"
|
100
100
|
- !ruby/object:Gem::Version
|
101
|
-
version: '3.
|
101
|
+
version: '3.12'
|
102
102
|
type: :development
|
103
103
|
prerelease: false
|
104
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
105
|
requirements:
|
106
106
|
- - "~>"
|
107
107
|
- !ruby/object:Gem::Version
|
108
|
-
version: '3.
|
108
|
+
version: '3.12'
|
109
109
|
- !ruby/object:Gem::Dependency
|
110
110
|
name: smtp_mock
|
111
111
|
requirement: !ruby/object:Gem::Requirement
|
@@ -132,14 +132,14 @@ dependencies:
|
|
132
132
|
requirements:
|
133
133
|
- - "~>"
|
134
134
|
- !ruby/object:Gem::Version
|
135
|
-
version: 0
|
135
|
+
version: '1.0'
|
136
136
|
type: :development
|
137
137
|
prerelease: false
|
138
138
|
version_requirements: !ruby/object:Gem::Requirement
|
139
139
|
requirements:
|
140
140
|
- - "~>"
|
141
141
|
- !ruby/object:Gem::Version
|
142
|
-
version: 0
|
142
|
+
version: '1.0'
|
143
143
|
- !ruby/object:Gem::Dependency
|
144
144
|
name: webmock
|
145
145
|
requirement: !ruby/object:Gem::Requirement
|