smtp_mock 1.0.1 → 1.1.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 +4 -4
- data/.circleci/config.yml +2 -2
- data/.circleci/gemspec_compatible +1 -1
- data/.circleci/gemspec_latest +6 -6
- data/.codeclimate.yml +1 -1
- data/.github/DEVELOPMENT_ENVIRONMENT_GUIDE.md +1 -1
- data/.github/FUNDING.yml +1 -0
- data/.reek.yml +2 -2
- data/.rubocop.yml +21 -0
- data/CHANGELOG.md +13 -0
- data/README.md +1 -0
- data/lib/smtp_mock/cli/resolver.rb +41 -25
- data/lib/smtp_mock/dependency.rb +2 -2
- data/lib/smtp_mock/version.rb +1 -1
- data/smtp_mock.gemspec +1 -1
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6609f9f6630224a07d5f7326e569a4dede87bd77d68a06ce5087a3aed8e2e7cb
|
4
|
+
data.tar.gz: 16f4fdd27fa57274e8768e4111c4710d04640c0624a9f34b6caf0e4bc07b82ab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 715a635bd7592994cd52a99b8b3cc638eec058720ebe6fd846d58d2ebfc73404908044f51149a5a9138e3fbf1ba595c1a03de1b64af228218d1a11e4ffdf7218
|
7
|
+
data.tar.gz: a2fe9ea5c0769b9796dd9117ff2290047a48f61b145276fc6bedb64e775ac1cc57c9fc56abe028adb5891b8021f0eda53e20162e86309617824152c444ba4a3f
|
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.
|
9
|
+
ruby: circleci/ruby@1.7.1
|
10
10
|
|
11
11
|
references:
|
12
12
|
restore_bundle_cache: &restore_bundle_cache
|
@@ -122,7 +122,7 @@ jobs:
|
|
122
122
|
- checkout
|
123
123
|
- <<: *use_compatible_gemspec
|
124
124
|
- ruby/install-deps:
|
125
|
-
bundler-version: "2.3.
|
125
|
+
bundler-version: "2.3.13"
|
126
126
|
with-cache: false
|
127
127
|
path: './vendor/custom_bundle'
|
128
128
|
- <<: *system_dependencies
|
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
|
|
30
30
|
|
31
31
|
spec.add_runtime_dependency 'dry-struct', '~> 1.4'
|
32
32
|
|
33
|
-
spec.add_development_dependency 'ffaker', '~> 2.
|
33
|
+
spec.add_development_dependency 'ffaker', '~> 2.21'
|
34
34
|
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
|
35
35
|
spec.add_development_dependency 'rspec', '~> 3.11'
|
36
36
|
end
|
data/.circleci/gemspec_latest
CHANGED
@@ -32,16 +32,16 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.add_runtime_dependency 'dry-struct', '~> 1.4'
|
33
33
|
|
34
34
|
spec.add_development_dependency 'bundler-audit', '~> 0.9.0.1'
|
35
|
-
spec.add_development_dependency 'fasterer', '~> 0.
|
36
|
-
spec.add_development_dependency 'ffaker', '~> 2.
|
35
|
+
spec.add_development_dependency 'fasterer', '~> 0.10.0'
|
36
|
+
spec.add_development_dependency 'ffaker', '~> 2.21'
|
37
37
|
spec.add_development_dependency 'net-smtp', '~> 0.3.1'
|
38
|
-
spec.add_development_dependency 'overcommit', '~> 0.
|
38
|
+
spec.add_development_dependency 'overcommit', '~> 0.59.1'
|
39
39
|
spec.add_development_dependency 'pry-byebug', '~> 3.9'
|
40
40
|
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
|
41
|
-
spec.add_development_dependency 'reek', '~> 6.1'
|
41
|
+
spec.add_development_dependency 'reek', '~> 6.1', '>= 6.1.1'
|
42
42
|
spec.add_development_dependency 'rspec', '~> 3.11'
|
43
|
-
spec.add_development_dependency 'rubocop', '~> 1.
|
43
|
+
spec.add_development_dependency 'rubocop', '~> 1.29', '>= 1.29.1'
|
44
44
|
spec.add_development_dependency 'rubocop-performance', '~> 1.13', '>= 1.13.3'
|
45
|
-
spec.add_development_dependency 'rubocop-rspec', '~> 2.
|
45
|
+
spec.add_development_dependency 'rubocop-rspec', '~> 2.10'
|
46
46
|
spec.add_development_dependency 'simplecov', '~> 0.21.2'
|
47
47
|
end
|
data/.codeclimate.yml
CHANGED
data/.github/FUNDING.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
github: [bestwebua]
|
data/.reek.yml
CHANGED
@@ -14,13 +14,13 @@ detectors:
|
|
14
14
|
NestedIterators:
|
15
15
|
exclude:
|
16
16
|
- SmtpMock::CommandLineArgsBuilder#define_attribute
|
17
|
-
- SmtpMock::Cli::Resolver#resolve
|
18
17
|
|
19
18
|
TooManyStatements:
|
20
19
|
exclude:
|
21
|
-
- SmtpMock::Cli::Resolver#resolve
|
22
20
|
- SmtpMock::Server#run
|
23
21
|
- SmtpMock::ServerHelper#create_fake_servers
|
22
|
+
- SmtpMock::Cli::Resolver#install
|
23
|
+
- SmtpMock::Cli::Resolver#resolve
|
24
24
|
|
25
25
|
TooManyInstanceVariables:
|
26
26
|
exclude:
|
data/.rubocop.yml
CHANGED
@@ -169,6 +169,18 @@ Style/OpenStructUse:
|
|
169
169
|
Style/NestedFileDirname:
|
170
170
|
Enabled: true
|
171
171
|
|
172
|
+
Style/EnvHome:
|
173
|
+
Enabled: true
|
174
|
+
|
175
|
+
Style/FetchEnvVar:
|
176
|
+
Enabled: true
|
177
|
+
|
178
|
+
Style/ObjectThen:
|
179
|
+
Enabled: true
|
180
|
+
|
181
|
+
Style/RedundantInitialize:
|
182
|
+
Enabled: true
|
183
|
+
|
172
184
|
Layout/LineLength:
|
173
185
|
Max: 150
|
174
186
|
|
@@ -284,6 +296,9 @@ Lint/IncompatibleIoSelectWithFiberScheduler:
|
|
284
296
|
Lint/RequireRelativeSelfPath:
|
285
297
|
Enabled: true
|
286
298
|
|
299
|
+
Lint/RefinementImportMethods:
|
300
|
+
Enabled: true
|
301
|
+
|
287
302
|
Lint/UselessRuby2Keywords:
|
288
303
|
Enabled: true
|
289
304
|
|
@@ -296,6 +311,9 @@ Gemspec/RequireMFA:
|
|
296
311
|
Security/IoMethods:
|
297
312
|
Enabled: true
|
298
313
|
|
314
|
+
Security/CompoundHash:
|
315
|
+
Enabled: true
|
316
|
+
|
299
317
|
Performance/AncestorsInclude:
|
300
318
|
Enabled: true
|
301
319
|
|
@@ -400,3 +418,6 @@ RSpec/BeEq:
|
|
400
418
|
|
401
419
|
RSpec/BeNil:
|
402
420
|
Enabled: true
|
421
|
+
|
422
|
+
RSpec/VerifiedDoubleReference:
|
423
|
+
Enabled: false
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,19 @@
|
|
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
5
|
|
6
|
+
## [1.1.0] - 2022-05-17
|
7
|
+
|
8
|
+
### Added
|
9
|
+
|
10
|
+
- Ability to check `smtpmock` version from cli
|
11
|
+
|
12
|
+
### Updated
|
13
|
+
|
14
|
+
- Updated gemspecs
|
15
|
+
- Updated codeclimate/circleci configs
|
16
|
+
- Updated gem development dependencies
|
17
|
+
- Updated gem version
|
18
|
+
|
6
19
|
## [1.0.1] - 2022-03-10
|
7
20
|
|
8
21
|
### Added
|
data/README.md
CHANGED
@@ -80,6 +80,7 @@ This gem includes easy system dependency manager. Run `bundle exec smtp_mock` wi
|
|
80
80
|
| `-i`, `--install=PATH` | Install `smtpmock` to the existing path | `bundle exec smtp_mock -i ~/existent_dir` |
|
81
81
|
| `-u`, `--uninstall` | Uninstall `smtpmock` | `bundle exec smtp_mock -u` |
|
82
82
|
| `-g`, `--upgrade` | Upgrade to latest version of `smtpmock` | `bundle exec smtp_mock -g` |
|
83
|
+
| `-v`, `--version` | Prints current version of `smtpmock` | `bundle exec smtp_mock -v` |
|
83
84
|
| `-h`, `--help` | Prints help | `bundle exec smtp_mock -h` |
|
84
85
|
|
85
86
|
### DSL
|
@@ -8,45 +8,61 @@ module SmtpMock
|
|
8
8
|
USE_CASE = 'Usage: smtp_mock [options], example: `bundle exec smtp_mock -s -i ~/existent_dir`'
|
9
9
|
DOWNLOAD_SCRIPT = 'https://raw.githubusercontent.com/mocktools/go-smtp-mock/master/script/download.sh'
|
10
10
|
|
11
|
-
def resolve(command_line_args) # rubocop:disable Metrics/
|
11
|
+
def resolve(command_line_args) # rubocop:disable Metrics/AbcSize
|
12
12
|
opt_parser = ::OptionParser.new do |parser|
|
13
13
|
parser.banner = SmtpMock::Cli::Resolver::USE_CASE
|
14
|
-
|
15
14
|
parser.on('-s', '--sudo', 'Run command as sudo') { self.sudo = true }
|
15
|
+
parser.on('-iPATH', '--install=PATH', 'Install smtpmock to the existing path', &install)
|
16
|
+
parser.on('-u', '--uninstall', 'Uninstall smtpmock', &uninstall)
|
17
|
+
parser.on('-g', '--upgrade', 'Upgrade to latest version of smtpmock', &upgrade)
|
18
|
+
parser.on('-v', '--version', 'Prints current smtpmock version', &version)
|
19
|
+
parser.on('-h', '--help', 'Prints help') { self.message = parser.to_s }
|
16
20
|
|
17
|
-
|
18
|
-
|
19
|
-
return self.message = 'smtpmock is already installed' if ::File.exist?(binary_path)
|
20
|
-
|
21
|
-
install_to(install_path)
|
22
|
-
::Kernel.system("#{as_sudo}ln -s #{binary_path} #{SmtpMock::Dependency::SYMLINK}")
|
23
|
-
self.message = 'smtpmock was installed successfully'
|
24
|
-
end
|
21
|
+
self.success = true
|
22
|
+
end
|
25
23
|
|
26
|
-
|
27
|
-
|
24
|
+
opt_parser.parse(command_line_args) # TODO: add error handler
|
25
|
+
end
|
28
26
|
|
29
|
-
|
30
|
-
::Kernel.system("rm #{current_smtpmock_path}")
|
31
|
-
self.message = 'smtpmock was uninstalled successfully'
|
32
|
-
end
|
27
|
+
private
|
33
28
|
|
34
|
-
|
35
|
-
|
29
|
+
def install
|
30
|
+
lambda do |argument|
|
31
|
+
self.install_path = argument
|
32
|
+
return self.message = 'smtpmock is already installed' if ::File.exist?(binary_path)
|
36
33
|
|
37
|
-
|
38
|
-
|
39
|
-
|
34
|
+
install_to(install_path)
|
35
|
+
::Kernel.system("#{as_sudo}ln -s #{binary_path} #{SmtpMock::Dependency::SYMLINK}")
|
36
|
+
self.message = 'smtpmock was installed successfully'
|
37
|
+
end
|
38
|
+
end
|
40
39
|
|
41
|
-
|
40
|
+
def uninstall
|
41
|
+
lambda do |_|
|
42
|
+
return if not_installed?
|
42
43
|
|
43
|
-
|
44
|
+
::Kernel.system("#{as_sudo}unlink #{SmtpMock::Dependency::SYMLINK}")
|
45
|
+
::Kernel.system("rm #{current_smtpmock_path}")
|
46
|
+
self.message = 'smtpmock was uninstalled successfully'
|
44
47
|
end
|
48
|
+
end
|
45
49
|
|
46
|
-
|
50
|
+
def upgrade
|
51
|
+
lambda do |_|
|
52
|
+
return if not_installed?
|
53
|
+
|
54
|
+
install_to(current_smtpmock_path[%r{(.+)/.+}, 1])
|
55
|
+
self.message = 'smtpmock was upgraded successfully'
|
56
|
+
end
|
47
57
|
end
|
48
58
|
|
49
|
-
|
59
|
+
def version
|
60
|
+
lambda do |_|
|
61
|
+
return if not_installed?
|
62
|
+
|
63
|
+
self.message = SmtpMock::Dependency.version
|
64
|
+
end
|
65
|
+
end
|
50
66
|
|
51
67
|
def binary_path
|
52
68
|
"#{install_path}/smtpmock"
|
data/lib/smtp_mock/dependency.rb
CHANGED
@@ -26,8 +26,6 @@ module SmtpMock
|
|
26
26
|
"#{SmtpMock::Dependency::BINARY_SHORTCUT} #{command_line_args}".strip
|
27
27
|
end
|
28
28
|
|
29
|
-
private
|
30
|
-
|
31
29
|
def version
|
32
30
|
::Kernel.public_send(
|
33
31
|
:`,
|
@@ -35,6 +33,8 @@ module SmtpMock
|
|
35
33
|
)[SmtpMock::Dependency::VERSION_REGEX_PATTERN, 1]
|
36
34
|
end
|
37
35
|
|
36
|
+
private
|
37
|
+
|
38
38
|
def minimal_version?(current_version)
|
39
39
|
!!current_version && current_version >= SmtpMock::SMTPMOCK_MIN_VERSION
|
40
40
|
end
|
data/lib/smtp_mock/version.rb
CHANGED
data/smtp_mock.gemspec
CHANGED
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
|
|
31
31
|
|
32
32
|
spec.add_runtime_dependency 'dry-struct', '~> 1.4'
|
33
33
|
|
34
|
-
spec.add_development_dependency 'ffaker', '~> 2.
|
34
|
+
spec.add_development_dependency 'ffaker', '~> 2.21'
|
35
35
|
spec.add_development_dependency 'net-smtp', '~> 0.3.1' if ::RUBY_VERSION >= '3.1.0'
|
36
36
|
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.6'
|
37
37
|
spec.add_development_dependency 'rspec', '~> 3.11'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smtp_mock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vladislav Trotsenko
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-05-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: dry-struct
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '2.
|
33
|
+
version: '2.21'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '2.
|
40
|
+
version: '2.21'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -87,6 +87,7 @@ files:
|
|
87
87
|
- ".codeclimate.yml"
|
88
88
|
- ".github/BRANCH_NAMING_CONVENTION.md"
|
89
89
|
- ".github/DEVELOPMENT_ENVIRONMENT_GUIDE.md"
|
90
|
+
- ".github/FUNDING.yml"
|
90
91
|
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
91
92
|
- ".github/ISSUE_TEMPLATE/feature_request.md"
|
92
93
|
- ".github/ISSUE_TEMPLATE/issue_report.md"
|