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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5aaf968788710bfc570f154269d75830058841b3936b542246de4557be3b4727
4
- data.tar.gz: 3ebe69aa575bc2eb84e277c7ee77bdf055ff112597926e167db84903fb4a7ad4
3
+ metadata.gz: 14cf6d4a2b730702849ca49317fdb3a054562f3e41de01b4e88737dc1da09ff8
4
+ data.tar.gz: b07cf758750e1532189f57e88ba61b06f4a2c5b9c570f76187c52d2e38c1e2f6
5
5
  SHA512:
6
- metadata.gz: f6e6941d7990f128258308bcf24205162fc968c3c03a74f451c765059b53a3ded73ea0ef7a545edd36456d93f0318f66b016640b2c02986f8c0b117ed8ab28b1
7
- data.tar.gz: 516f7151529e111845044c8c3c238b549d4fc989d460f6568e9a2f1586d083f4d355b53d0dc939a3f2d714dc4834fe920eab1bba31d287abd57a43d8fc223f80
6
+ metadata.gz: 665f453be4cd3bfbc10a66dfce4cc41b842ef1e36fdd22f8aacbe2def6f1ca542043647f528910320fa498d10c31cabc86d74b9fb5a8f5f4d79b6b02ae34eff6
7
+ data.tar.gz: 7f229a5a880117b42d7a070a83d5040e147402db193139929ea192f0451e2c7934f81b048146ed79369a2b0d985dab2f82dd80ee750f58ae452472254a2ddf95
data/.circleci/config.yml CHANGED
@@ -6,7 +6,7 @@ defaults: &defaults
6
6
  - image: cimg/ruby:<< parameters.ruby-version >>
7
7
 
8
8
  orbs:
9
- ruby: circleci/ruby@1.8.0
9
+ ruby: circleci/ruby@2.0.0
10
10
 
11
11
  references:
12
12
  restore_bundle_cache: &restore_bundle_cache
@@ -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.11'
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.9.2'
40
+ spec.add_development_dependency 'truemail-rspec', '~> 1.0'
41
41
  spec.add_development_dependency 'webmock', '~> 3.18', '>= 3.18.1'
42
42
  end
@@ -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.11'
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.13', '>= 2.13.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.9.2'
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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Truemail
4
- VERSION = '3.0.0'
4
+ VERSION = '3.0.1'
5
5
  end
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.11'
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.9.2'
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.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-10-24 00:00:00.000000000 Z
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.11'
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.11'
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.9.2
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.9.2
142
+ version: '1.0'
143
143
  - !ruby/object:Gem::Dependency
144
144
  name: webmock
145
145
  requirement: !ruby/object:Gem::Requirement