zold 0.16.13 → 0.16.14
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/bin/zold +3 -2
- data/lib/zold/commands/create.rb +1 -1
- data/lib/zold/commands/pay.rb +1 -1
- data/lib/zold/endless.rb +1 -1
- data/lib/zold/gem.rb +1 -1
- data/lib/zold/node/farm.rb +15 -8
- data/lib/zold/node/front.rb +12 -2
- data/lib/zold/version.rb +1 -1
- data/test/commands/routines/test_reconnect.rb +1 -1
- data/test/commands/routines/test_spread.rb +1 -1
- data/test/commands/test_alias.rb +1 -1
- data/test/commands/test_calculate.rb +1 -1
- data/test/commands/test_clean.rb +1 -1
- data/test/commands/test_create.rb +1 -1
- data/test/commands/test_diff.rb +1 -1
- data/test/commands/test_fetch.rb +1 -1
- data/test/commands/test_invoice.rb +1 -1
- data/test/commands/test_list.rb +1 -1
- data/test/commands/test_merge.rb +1 -1
- data/test/commands/test_node.rb +1 -1
- data/test/commands/test_pay.rb +1 -1
- data/test/commands/test_propagate.rb +1 -1
- data/test/commands/test_pull.rb +1 -1
- data/test/commands/test_push.rb +1 -1
- data/test/commands/test_remote.rb +1 -1
- data/test/commands/test_remove.rb +1 -1
- data/test/commands/test_show.rb +1 -1
- data/test/commands/test_taxes.rb +1 -1
- data/test/node/test_async_entrance.rb +1 -1
- data/test/node/test_emission.rb +1 -1
- data/test/node/test_entrance.rb +1 -1
- data/test/node/test_farm.rb +1 -1
- data/test/node/test_farmers.rb +1 -1
- data/test/node/test_front.rb +2 -1
- data/test/node/test_nodup_entrance.rb +1 -1
- data/test/node/test_safe_entrance.rb +1 -1
- data/test/node/test_spread_entrance.rb +1 -1
- data/test/node/test_sync_entrance.rb +1 -1
- data/test/node/test_trace.rb +1 -1
- data/test/test__helper.rb +16 -2
- data/test/test_age.rb +1 -1
- data/test/test_amount.rb +1 -1
- data/test/test_cached_wallets.rb +1 -1
- data/test/test_copies.rb +1 -1
- data/test/test_dir_items.rb +2 -2
- data/test/test_gem.rb +1 -1
- data/test/test_hexnum.rb +1 -1
- data/test/test_http.rb +1 -1
- data/test/test_id.rb +1 -1
- data/test/test_key.rb +1 -1
- data/test/test_log.rb +1 -1
- data/test/test_metronome.rb +1 -1
- data/test/test_patch.rb +1 -1
- data/test/test_prefixes.rb +1 -1
- data/test/test_remotes.rb +1 -1
- data/test/test_signature.rb +1 -1
- data/test/test_size.rb +1 -1
- data/test/test_sync_wallets.rb +1 -1
- data/test/test_tax.rb +1 -1
- data/test/test_tree_wallets.rb +1 -1
- data/test/test_txn.rb +1 -1
- data/test/test_upgrades.rb +1 -1
- data/test/test_verbose_thread.rb +1 -1
- data/test/test_version.rb +1 -1
- data/test/test_wallet.rb +1 -1
- data/test/test_wallets.rb +1 -1
- data/test/test_zold.rb +5 -4
- data/test/upgrades/test_protocol_up.rb +1 -1
- data/zold.gemspec +1 -0
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 51c68760612879b65f070ac7b07fc10849c687fa1dd69000a0d5128a0e6f414d
|
4
|
+
data.tar.gz: 2e533397cfcfab38a17237d92f1c10e58262622154eca4abd0678cead502d20a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9981735a709e7f33ca4e532d0585b32c6c8ef55bf0a57f596bae45fd64dd823b15b156275e96dfef80259cca8f4b3277521a08c7bb14190f946011e315559a63
|
7
|
+
data.tar.gz: 1848c9278157073de768bca4d137cc12e06d547d9c82d5cf7a60a9868a36482310cef92f4718dec17702c7a7f4b7eeb5bd2f10b79d241c6d0b0a4a17d82e1bb1
|
data/bin/zold
CHANGED
@@ -27,6 +27,7 @@ start = Time.now
|
|
27
27
|
|
28
28
|
require 'slop'
|
29
29
|
require 'rainbow'
|
30
|
+
require 'backtrace'
|
30
31
|
require_relative '../lib/zold'
|
31
32
|
require_relative '../lib/zold/version'
|
32
33
|
require_relative '../lib/zold/wallet'
|
@@ -166,7 +167,7 @@ Available options:"
|
|
166
167
|
|
167
168
|
wallets = Zold::SyncWallets.new(
|
168
169
|
Zold::CachedWallets.new(
|
169
|
-
command == 'node' ? Zold::TreeWallets.new(
|
170
|
+
command == 'node' ? Zold::TreeWallets.new(home) : Zold::Wallets.new(home)
|
170
171
|
),
|
171
172
|
log: log
|
172
173
|
)
|
@@ -245,7 +246,7 @@ Available options:"
|
|
245
246
|
end
|
246
247
|
rescue StandardError => ex
|
247
248
|
log.error("#{ex.message} (#{ex.class.name})")
|
248
|
-
puts(ex
|
249
|
+
puts(Backtrace.new(ex)) if opts['trace']
|
249
250
|
exit -1
|
250
251
|
end
|
251
252
|
|
data/lib/zold/commands/create.rb
CHANGED
@@ -46,7 +46,7 @@ Available options:"
|
|
46
46
|
o.string '--public-key',
|
47
47
|
'The location of RSA public key (default: ~/.ssh/id_rsa.pub)',
|
48
48
|
require: true,
|
49
|
-
default: '~/.ssh/id_rsa.pub'
|
49
|
+
default: File.expand_path('~/.ssh/id_rsa.pub')
|
50
50
|
o.string '--network',
|
51
51
|
"The name of the network (default: #{Wallet::MAIN_NETWORK}",
|
52
52
|
require: true,
|
data/lib/zold/commands/pay.rb
CHANGED
@@ -52,7 +52,7 @@ Available options:"
|
|
52
52
|
o.string '--private-key',
|
53
53
|
'The location of RSA private key (default: ~/.ssh/id_rsa)',
|
54
54
|
require: true,
|
55
|
-
default: '~/.ssh/id_rsa'
|
55
|
+
default: File.expand_path('~/.ssh/id_rsa')
|
56
56
|
o.bool '--force',
|
57
57
|
'Ignore all validations',
|
58
58
|
default: false
|
data/lib/zold/endless.rb
CHANGED
data/lib/zold/gem.rb
CHANGED
@@ -34,7 +34,7 @@ module Zold
|
|
34
34
|
class Gem
|
35
35
|
def last_version
|
36
36
|
JsonPage.new(
|
37
|
-
Http.new(uri: 'https://rubygems.org/api/v1/versions/zold/latest.json'
|
37
|
+
Http.new(uri: 'https://rubygems.org/api/v1/versions/zold/latest.json').get.body
|
38
38
|
).to_hash['version']
|
39
39
|
rescue StandardError => _
|
40
40
|
'0.0.0'
|
data/lib/zold/node/farm.rb
CHANGED
@@ -128,17 +128,24 @@ module Zold
|
|
128
128
|
end
|
129
129
|
end
|
130
130
|
end
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
cleanup
|
135
|
-
|
136
|
-
|
131
|
+
unless threads.zero?
|
132
|
+
ready = false
|
133
|
+
@threads << Thread.new do
|
134
|
+
Endless.new('cleanup', log: @log).run do
|
135
|
+
cleanup(host, port, strength, threads)
|
136
|
+
ready = true
|
137
|
+
sleep(1)
|
138
|
+
end
|
137
139
|
end
|
140
|
+
loop { break if ready }
|
138
141
|
end
|
139
|
-
|
142
|
+
if @threads.empty?
|
143
|
+
cleanup(host, port, strength, threads)
|
144
|
+
@log.info('Farm started with no threads (there will be no score)')
|
145
|
+
else
|
146
|
+
@log.info("Farm started with #{@threads.count} threads (one for cleanup) \
|
140
147
|
at #{host}:#{port}, strength is #{strength}")
|
141
|
-
|
148
|
+
end
|
142
149
|
begin
|
143
150
|
yield(self)
|
144
151
|
ensure
|
data/lib/zold/node/front.rb
CHANGED
@@ -29,6 +29,7 @@ require 'sinatra/base'
|
|
29
29
|
require 'concurrent'
|
30
30
|
require 'backtrace'
|
31
31
|
require 'zache'
|
32
|
+
require 'posix/spawn'
|
32
33
|
require_relative '../version'
|
33
34
|
require_relative '../size'
|
34
35
|
require_relative '../wallet'
|
@@ -143,6 +144,11 @@ in #{Age.new(@start, limit: 1)}")
|
|
143
144
|
settings.version
|
144
145
|
end
|
145
146
|
|
147
|
+
get '/protocol' do
|
148
|
+
content_type('text/plain')
|
149
|
+
settings.protocol.to_s
|
150
|
+
end
|
151
|
+
|
146
152
|
get '/pid' do
|
147
153
|
content_type('text/plain')
|
148
154
|
Process.pid.to_s
|
@@ -405,7 +411,7 @@ in #{Age.new(@start, limit: 1)}")
|
|
405
411
|
|
406
412
|
get '/ps' do
|
407
413
|
content_type('text/plain')
|
408
|
-
|
414
|
+
processes.join("\n")
|
409
415
|
end
|
410
416
|
|
411
417
|
not_found do
|
@@ -455,10 +461,14 @@ in #{Age.new(@start, limit: 1)}")
|
|
455
461
|
|
456
462
|
def processes_count
|
457
463
|
settings.zache.get(:processes, lifetime: settings.network == Wallet::MAIN_NETWORK ? 60 : 0) do
|
458
|
-
|
464
|
+
processes.count
|
459
465
|
end
|
460
466
|
end
|
461
467
|
|
468
|
+
def processes
|
469
|
+
POSIX::Spawn::Child.new('ps', 'ax').out.split("\n").select { |t| t.include?('zold') }
|
470
|
+
end
|
471
|
+
|
462
472
|
def score
|
463
473
|
settings.zache.get(:score, lifetime: settings.network == Wallet::MAIN_NETWORK ? 60 : 0) do
|
464
474
|
b = settings.farm.best
|
data/lib/zold/version.rb
CHANGED
@@ -31,7 +31,7 @@ require_relative '../../../lib/zold/commands/routines/reconnect.rb'
|
|
31
31
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
32
32
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
33
33
|
# License:: MIT
|
34
|
-
class TestReconnect <
|
34
|
+
class TestReconnect < Zold::Test
|
35
35
|
def test_reconnects
|
36
36
|
Dir.mktmpdir do |dir|
|
37
37
|
remotes = Zold::Remotes.new(file: File.join(dir, 'remotes.csv'))
|
@@ -32,7 +32,7 @@ require_relative '../../../lib/zold/node/entrance.rb'
|
|
32
32
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
33
33
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
34
34
|
# License:: MIT
|
35
|
-
class TestSpread <
|
35
|
+
class TestSpread < Zold::Test
|
36
36
|
def test_spread_wallets
|
37
37
|
FakeHome.new(log: test_log).run do |home|
|
38
38
|
5.times { home.create_wallet }
|
data/test/commands/test_alias.rb
CHANGED
@@ -5,7 +5,7 @@ require_relative '../test__helper'
|
|
5
5
|
require_relative '../fake_home'
|
6
6
|
require_relative '../../lib/zold/commands/alias'
|
7
7
|
|
8
|
-
class TestAlias <
|
8
|
+
class TestAlias < Zold::Test
|
9
9
|
# alias set <wallet> <alias>
|
10
10
|
# @todo #322:30min Implement the set command and unskip this test.
|
11
11
|
# The syntax is already documented in the alias command in the help.
|
@@ -29,7 +29,7 @@ require_relative '../../lib/zold/commands/calculate'
|
|
29
29
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
30
30
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
31
31
|
# License:: MIT
|
32
|
-
class TestCalculate <
|
32
|
+
class TestCalculate < Zold::Test
|
33
33
|
def test_calculates_score
|
34
34
|
score = Zold::Calculate.new(log: test_log).run(
|
35
35
|
['score', '--strength=2', '--max=8', '--invoice=NOSUFFIX@ffffffffffffffff']
|
data/test/commands/test_clean.rb
CHANGED
@@ -32,7 +32,7 @@ require_relative '../../lib/zold/commands/clean'
|
|
32
32
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
33
33
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
34
34
|
# License:: MIT
|
35
|
-
class TestClean <
|
35
|
+
class TestClean < Zold::Test
|
36
36
|
def test_cleans_copies
|
37
37
|
FakeHome.new(log: test_log).run do |home|
|
38
38
|
wallet = home.create_wallet
|
@@ -31,7 +31,7 @@ require_relative '../../lib/zold/commands/create'
|
|
31
31
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
32
32
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
33
33
|
# License:: MIT
|
34
|
-
class TestCreate <
|
34
|
+
class TestCreate < Zold::Test
|
35
35
|
def test_creates_wallet
|
36
36
|
Dir.mktmpdir do |dir|
|
37
37
|
wallets = Zold::Wallets.new(dir)
|
data/test/commands/test_diff.rb
CHANGED
@@ -38,7 +38,7 @@ require_relative '../../lib/zold/commands/diff'
|
|
38
38
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
39
39
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
40
40
|
# License:: MIT
|
41
|
-
class TestDiff <
|
41
|
+
class TestDiff < Zold::Test
|
42
42
|
def test_diff_with_copies
|
43
43
|
FakeHome.new(log: test_log).run do |home|
|
44
44
|
wallet = home.create_wallet
|
data/test/commands/test_fetch.rb
CHANGED
@@ -40,7 +40,7 @@ require_relative '../../lib/zold/commands/fetch'
|
|
40
40
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
41
41
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
42
42
|
# License:: MIT
|
43
|
-
class TestFetch <
|
43
|
+
class TestFetch < Zold::Test
|
44
44
|
def test_fetches_wallet
|
45
45
|
FakeHome.new(log: test_log).run do |home|
|
46
46
|
wallet = home.create_wallet
|
@@ -33,7 +33,7 @@ require_relative '../../lib/zold/commands/invoice'
|
|
33
33
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
34
34
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
35
35
|
# License:: MIT
|
36
|
-
class TestInvoice <
|
36
|
+
class TestInvoice < Zold::Test
|
37
37
|
def test_generates_invoice
|
38
38
|
Dir.mktmpdir do |dir|
|
39
39
|
id = Zold::Id.new
|
data/test/commands/test_list.rb
CHANGED
@@ -32,7 +32,7 @@ require_relative '../../lib/zold/commands/list'
|
|
32
32
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
33
33
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
34
34
|
# License:: MIT
|
35
|
-
class TestList <
|
35
|
+
class TestList < Zold::Test
|
36
36
|
def test_lists_wallets_with_balances
|
37
37
|
Dir.mktmpdir do |dir|
|
38
38
|
id = Zold::Id.new
|
data/test/commands/test_merge.rb
CHANGED
@@ -40,7 +40,7 @@ require_relative '../../lib/zold/commands/pay'
|
|
40
40
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
41
41
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
42
42
|
# License:: MIT
|
43
|
-
class TestMerge <
|
43
|
+
class TestMerge < Zold::Test
|
44
44
|
def test_merges_wallet
|
45
45
|
FakeHome.new(log: test_log).run do |home|
|
46
46
|
wallet = home.create_wallet
|
data/test/commands/test_node.rb
CHANGED
@@ -38,7 +38,7 @@ require_relative '../node/fake_node'
|
|
38
38
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
39
39
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
40
40
|
# License:: MIT
|
41
|
-
class TestNode <
|
41
|
+
class TestNode < Zold::Test
|
42
42
|
# @todo #306:30min This test is failing from time to time
|
43
43
|
# We should find a way to check that tests involved in thread concurrency
|
44
44
|
# are always working
|
data/test/commands/test_pay.rb
CHANGED
@@ -34,7 +34,7 @@ require_relative '../../lib/zold/commands/pay'
|
|
34
34
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
35
35
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
36
36
|
# License:: MIT
|
37
|
-
class TestPay <
|
37
|
+
class TestPay < Zold::Test
|
38
38
|
def test_sends_from_wallet_to_wallet
|
39
39
|
FakeHome.new(log: test_log).run do |home|
|
40
40
|
source = home.create_wallet
|
@@ -31,7 +31,7 @@ require_relative '../../lib/zold/commands/pay'
|
|
31
31
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
32
32
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
33
33
|
# License:: MIT
|
34
|
-
class TestPropagate <
|
34
|
+
class TestPropagate < Zold::Test
|
35
35
|
def test_propagates_wallet
|
36
36
|
FakeHome.new(log: test_log).run do |home|
|
37
37
|
wallet = home.create_wallet
|
data/test/commands/test_pull.rb
CHANGED
@@ -32,7 +32,7 @@ require_relative '../../lib/zold/commands/pull'
|
|
32
32
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
33
33
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
34
34
|
# License:: MIT
|
35
|
-
class TestPull <
|
35
|
+
class TestPull < Zold::Test
|
36
36
|
def test_pull_wallet
|
37
37
|
FakeHome.new(log: test_log).run do |home|
|
38
38
|
remotes = home.remotes
|
data/test/commands/test_push.rb
CHANGED
@@ -35,7 +35,7 @@ require_relative '../../lib/zold/commands/push'
|
|
35
35
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
36
36
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
37
37
|
# License:: MIT
|
38
|
-
class TestPush <
|
38
|
+
class TestPush < Zold::Test
|
39
39
|
def test_pushes_wallet
|
40
40
|
FakeHome.new(log: test_log).run do |home|
|
41
41
|
wallet = home.create_wallet
|
@@ -36,7 +36,7 @@ require_relative '../../lib/zold/commands/remote'
|
|
36
36
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
37
37
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
38
38
|
# License:: MIT
|
39
|
-
class TestRemote <
|
39
|
+
class TestRemote < Zold::Test
|
40
40
|
def test_updates_remote
|
41
41
|
Dir.mktmpdir do |dir|
|
42
42
|
remotes = Zold::Remotes.new(file: File.join(dir, 'a/b/c/remotes'))
|
@@ -29,7 +29,7 @@ require_relative '../../lib/zold/commands/remove'
|
|
29
29
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
30
30
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
31
31
|
# License:: MIT
|
32
|
-
class TestRemove <
|
32
|
+
class TestRemove < Zold::Test
|
33
33
|
def test_removes_one_wallet
|
34
34
|
FakeHome.new(log: test_log).run do |home|
|
35
35
|
wallet = home.create_wallet
|
data/test/commands/test_show.rb
CHANGED
@@ -33,7 +33,7 @@ require_relative '../../lib/zold/commands/show'
|
|
33
33
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
34
34
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
35
35
|
# License:: MIT
|
36
|
-
class TestShow <
|
36
|
+
class TestShow < Zold::Test
|
37
37
|
def test_checks_wallet_balance
|
38
38
|
Dir.mktmpdir do |dir|
|
39
39
|
id = Zold::Id.new
|
data/test/commands/test_taxes.rb
CHANGED
@@ -36,7 +36,7 @@ require_relative '../../lib/zold/commands/taxes'
|
|
36
36
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
37
37
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
38
38
|
# License:: MIT
|
39
|
-
class TestTaxes <
|
39
|
+
class TestTaxes < Zold::Test
|
40
40
|
def test_pays_taxes
|
41
41
|
FakeHome.new(log: test_log).run do |home|
|
42
42
|
wallets = home.wallets
|
@@ -32,7 +32,7 @@ require_relative 'fake_entrance'
|
|
32
32
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
33
33
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
34
34
|
# License:: MIT
|
35
|
-
class TestAsyncEntrance <
|
35
|
+
class TestAsyncEntrance < Zold::Test
|
36
36
|
def test_renders_json
|
37
37
|
FakeHome.new(log: test_log).run do |home|
|
38
38
|
Zold::AsyncEntrance.new(FakeEntrance.new, home.dir, log: test_log).start do |e|
|
data/test/node/test_emission.rb
CHANGED
@@ -26,7 +26,7 @@ require_relative '../test__helper'
|
|
26
26
|
require_relative '../../lib/zold/node/emission'
|
27
27
|
require_relative '../../lib/zold/amount'
|
28
28
|
|
29
|
-
class EmissionTest <
|
29
|
+
class EmissionTest < Zold::Test
|
30
30
|
def test_emission
|
31
31
|
(1..10).each do |year|
|
32
32
|
FakeHome.new(log: test_log).run do |home|
|
data/test/node/test_entrance.rb
CHANGED
@@ -35,7 +35,7 @@ require_relative '../../lib/zold/commands/pay'
|
|
35
35
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
36
36
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
37
37
|
# License:: MIT
|
38
|
-
class TestEntrance <
|
38
|
+
class TestEntrance < Zold::Test
|
39
39
|
def test_pushes_wallet
|
40
40
|
sid = Zold::Id::ROOT
|
41
41
|
tid = Zold::Id.new
|
data/test/node/test_farm.rb
CHANGED
@@ -27,7 +27,7 @@ require_relative '../test__helper'
|
|
27
27
|
require_relative '../../lib/zold/log'
|
28
28
|
require_relative '../../lib/zold/node/farm'
|
29
29
|
|
30
|
-
class FarmTest <
|
30
|
+
class FarmTest < Zold::Test
|
31
31
|
def test_renders_in_json
|
32
32
|
Dir.mktmpdir do |dir|
|
33
33
|
farm = Zold::Farm.new('NOPREFIX6@ffffffffffffffff', File.join(dir, 'f'), log: test_log)
|
data/test/node/test_farmers.rb
CHANGED
@@ -26,7 +26,7 @@ require 'zold/score'
|
|
26
26
|
require_relative '../test__helper'
|
27
27
|
require_relative '../../lib/zold/node/farmers'
|
28
28
|
|
29
|
-
class FarmersTest <
|
29
|
+
class FarmersTest < Zold::Test
|
30
30
|
def test_calculates_next_score
|
31
31
|
before = Zold::Score.new(host: 'some-host', port: 9999, invoice: 'NOPREFIX4@ffffffffffffffff', strength: 3)
|
32
32
|
farmer = Zold::Farmers::Spawn.new(log: test_log)
|
data/test/node/test_front.rb
CHANGED
@@ -33,7 +33,7 @@ require_relative '../../lib/zold/http'
|
|
33
33
|
require_relative '../../lib/zold/age'
|
34
34
|
require_relative '../../lib/zold/json_page'
|
35
35
|
|
36
|
-
class FrontTest <
|
36
|
+
class FrontTest < Zold::Test
|
37
37
|
def app
|
38
38
|
Zold::Front
|
39
39
|
end
|
@@ -63,6 +63,7 @@ class FrontTest < Minitest::Test
|
|
63
63
|
'/',
|
64
64
|
'/remotes',
|
65
65
|
'/version',
|
66
|
+
'/protocol',
|
66
67
|
'/farm',
|
67
68
|
'/metronome',
|
68
69
|
'/score',
|
@@ -31,7 +31,7 @@ require_relative 'fake_entrance'
|
|
31
31
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
32
32
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
33
33
|
# License:: MIT
|
34
|
-
class TestAsyncEntrance <
|
34
|
+
class TestAsyncEntrance < Zold::Test
|
35
35
|
def test_ignores_dup
|
36
36
|
FakeHome.new(log: test_log).run do |home|
|
37
37
|
wallet = home.create_wallet
|
@@ -33,7 +33,7 @@ require_relative 'fake_entrance'
|
|
33
33
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
34
34
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
35
35
|
# License:: MIT
|
36
|
-
class TestSafeEntrance <
|
36
|
+
class TestSafeEntrance < Zold::Test
|
37
37
|
def test_rejects_wallet_with_negative_balance
|
38
38
|
FakeHome.new(log: test_log).run do |home|
|
39
39
|
wallet = home.create_wallet
|
@@ -33,7 +33,7 @@ require_relative 'fake_entrance'
|
|
33
33
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
34
34
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
35
35
|
# License:: MIT
|
36
|
-
class TestSpreadEntrance <
|
36
|
+
class TestSpreadEntrance < Zold::Test
|
37
37
|
def test_renders_json
|
38
38
|
FakeHome.new(log: test_log).run do |home|
|
39
39
|
wallet = home.create_wallet(Zold::Id.new)
|
@@ -30,7 +30,7 @@ require_relative 'fake_entrance'
|
|
30
30
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
31
31
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
32
32
|
# License:: MIT
|
33
|
-
class TestSyncEntrance <
|
33
|
+
class TestSyncEntrance < Zold::Test
|
34
34
|
def test_renders_json
|
35
35
|
FakeHome.new(log: test_log).run do
|
36
36
|
Zold::SyncEntrance.new(FakeEntrance.new, log: test_log).start do |e|
|
data/test/node/test_trace.rb
CHANGED
@@ -24,7 +24,7 @@ require 'minitest/autorun'
|
|
24
24
|
require_relative '../test__helper'
|
25
25
|
require_relative '../../lib/zold/node/trace'
|
26
26
|
|
27
|
-
class TraceTest <
|
27
|
+
class TraceTest < Zold::Test
|
28
28
|
def test_records_log_lines
|
29
29
|
trace = Zold::Trace.new(test_log, 2)
|
30
30
|
trace.error('This should not be visible')
|
data/test/test__helper.rb
CHANGED
@@ -23,7 +23,9 @@
|
|
23
23
|
gem 'openssl'
|
24
24
|
require 'openssl'
|
25
25
|
require 'minitest/autorun'
|
26
|
+
require 'minitest/hooks/test'
|
26
27
|
require 'concurrent'
|
28
|
+
require 'timeout'
|
27
29
|
|
28
30
|
STDOUT.sync = true
|
29
31
|
|
@@ -36,8 +38,20 @@ if ENV['CI'] == 'true'
|
|
36
38
|
SimpleCov.formatter = SimpleCov::Formatter::Codecov
|
37
39
|
end
|
38
40
|
|
39
|
-
module
|
40
|
-
class Test
|
41
|
+
module Zold
|
42
|
+
class Test < Minitest::Test
|
43
|
+
include Minitest::Hooks
|
44
|
+
|
45
|
+
# We need this in order to make sure any test is faster than a minute. This
|
46
|
+
# should help spotting tests that hang out sometimes. The number of seconds
|
47
|
+
# to wait can be increased, but try to make it as little as possible,
|
48
|
+
# in order to catch problems ealier.
|
49
|
+
def around
|
50
|
+
Timeout.timeout(120) do
|
51
|
+
super
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
41
55
|
def assert_wait(max: 30)
|
42
56
|
assert_equal_wait(true, max: max) { yield }
|
43
57
|
end
|
data/test/test_age.rb
CHANGED
@@ -27,7 +27,7 @@ require_relative '../lib/zold/age'
|
|
27
27
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
28
28
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
29
29
|
# License:: MIT
|
30
|
-
class TestAge <
|
30
|
+
class TestAge < Zold::Test
|
31
31
|
def test_prints_age
|
32
32
|
assert_equal('10m', Zold::Age.new(Time.now - 10 * 60).to_s)
|
33
33
|
assert_equal('5.5s', Zold::Age.new(Time.now - 5.5).to_s)
|
data/test/test_amount.rb
CHANGED
@@ -27,7 +27,7 @@ require_relative '../lib/zold/amount'
|
|
27
27
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
28
28
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
29
29
|
# License:: MIT
|
30
|
-
class TestAmount <
|
30
|
+
class TestAmount < Zold::Test
|
31
31
|
def test_parses_zld
|
32
32
|
amount = Zold::Amount.new(zld: 14.95)
|
33
33
|
assert(
|
data/test/test_cached_wallets.rb
CHANGED
@@ -33,7 +33,7 @@ require_relative '../lib/zold/amount'
|
|
33
33
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
34
34
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
35
35
|
# License:: MIT
|
36
|
-
class TestCachedWallets <
|
36
|
+
class TestCachedWallets < Zold::Test
|
37
37
|
def test_adds_wallet
|
38
38
|
FakeHome.new(log: test_log).run do |home|
|
39
39
|
wallets = Zold::CachedWallets.new(home.wallets)
|
data/test/test_copies.rb
CHANGED
@@ -35,7 +35,7 @@ require_relative '../lib/zold/wallet'
|
|
35
35
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
36
36
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
37
37
|
# License:: MIT
|
38
|
-
class TestCopies <
|
38
|
+
class TestCopies < Zold::Test
|
39
39
|
def test_adds_and_removes_copies
|
40
40
|
Dir.mktmpdir do |dir|
|
41
41
|
copies = Zold::Copies.new(File.join(dir, 'my/a/copies'), log: test_log)
|
data/test/test_dir_items.rb
CHANGED
@@ -32,12 +32,12 @@ require_relative '../lib/zold/dir_items'
|
|
32
32
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
33
33
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
34
34
|
# License:: MIT
|
35
|
-
class TestDirItems <
|
35
|
+
class TestDirItems < Zold::Test
|
36
36
|
def test_intensive_write_in_threads
|
37
37
|
Dir.mktmpdir do |dir|
|
38
38
|
file = File.join(dir, 'hey.txt')
|
39
39
|
back = Thread.start do
|
40
|
-
Endless.new('test-diritems', log: test_log).run do
|
40
|
+
Zold::Endless.new('test-diritems', log: test_log).run do
|
41
41
|
Zold::DirItems.new(dir).fetch
|
42
42
|
end
|
43
43
|
end
|
data/test/test_gem.rb
CHANGED
@@ -4,7 +4,7 @@ require_relative '../lib/zold/gem'
|
|
4
4
|
require 'webmock/minitest'
|
5
5
|
require 'minitest/autorun'
|
6
6
|
|
7
|
-
class TestGem <
|
7
|
+
class TestGem < Zold::Test
|
8
8
|
def test_last_version
|
9
9
|
version = (1..3).map { rand(9).to_s } .join('.')
|
10
10
|
stub_request(:get, 'https://rubygems.org/api/v1/versions/zold/latest.json').to_return(
|
data/test/test_hexnum.rb
CHANGED
@@ -27,7 +27,7 @@ require_relative '../lib/zold/hexnum'
|
|
27
27
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
28
28
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
29
29
|
# License:: MIT
|
30
|
-
class TestHexnum <
|
30
|
+
class TestHexnum < Zold::Test
|
31
31
|
def test_prints_and_parses
|
32
32
|
[0, 1, 3, 5, 7, 13, 6447, 897_464, -1, -3, -7584, -900_098].each do |n|
|
33
33
|
assert_equal(n, Zold::Hexnum.parse(Zold::Hexnum.new(n, 6).to_s).to_i)
|
data/test/test_http.rb
CHANGED
@@ -31,7 +31,7 @@ require_relative '../lib/zold/http'
|
|
31
31
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
32
32
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
33
33
|
# License:: MIT
|
34
|
-
class TestHttp <
|
34
|
+
class TestHttp < Zold::Test
|
35
35
|
def test_pings_broken_uri
|
36
36
|
stub_request(:get, 'http://bad-host/').to_return(status: 500)
|
37
37
|
res = Zold::Http.new(uri: 'http://bad-host/').get
|
data/test/test_id.rb
CHANGED
@@ -28,7 +28,7 @@ require_relative '../lib/zold/id'
|
|
28
28
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
29
29
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
30
30
|
# License:: MIT
|
31
|
-
class TestId <
|
31
|
+
class TestId < Zold::Test
|
32
32
|
def test_generates_new_id
|
33
33
|
50.times do
|
34
34
|
id = Zold::Id.new
|
data/test/test_key.rb
CHANGED
@@ -29,7 +29,7 @@ require_relative '../lib/zold/key'
|
|
29
29
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
30
30
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
31
31
|
# License:: MIT
|
32
|
-
class TestKey <
|
32
|
+
class TestKey < Zold::Test
|
33
33
|
def test_reads_public_rsa
|
34
34
|
key = Zold::Key.new(file: 'fixtures/id_rsa.pub')
|
35
35
|
assert(key.to_pub.start_with?('MIICI'))
|
data/test/test_log.rb
CHANGED
@@ -29,7 +29,7 @@ require_relative '../lib/zold/log'
|
|
29
29
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
30
30
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
31
31
|
# License:: MIT
|
32
|
-
class TestLog <
|
32
|
+
class TestLog < Zold::Test
|
33
33
|
def test_prints_from_many_threads
|
34
34
|
Threads.new(20).assert do
|
35
35
|
test_log.debug('How are you?')
|
data/test/test_metronome.rb
CHANGED
@@ -28,7 +28,7 @@ require_relative '../lib/zold/metronome'
|
|
28
28
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
29
29
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
30
30
|
# License:: MIT
|
31
|
-
class TestMetronome <
|
31
|
+
class TestMetronome < Zold::Test
|
32
32
|
def test_start_and_stop
|
33
33
|
metronome = Zold::Metronome.new(test_log)
|
34
34
|
list = []
|
data/test/test_patch.rb
CHANGED
@@ -33,7 +33,7 @@ require_relative '../lib/zold/patch'
|
|
33
33
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
34
34
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
35
35
|
# License:: MIT
|
36
|
-
class TestPatch <
|
36
|
+
class TestPatch < Zold::Test
|
37
37
|
def test_builds_patch
|
38
38
|
FakeHome.new(log: test_log).run do |home|
|
39
39
|
first = home.create_wallet
|
data/test/test_prefixes.rb
CHANGED
@@ -32,7 +32,7 @@ require_relative '../lib/zold/prefixes'
|
|
32
32
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
33
33
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
34
34
|
# License:: MIT
|
35
|
-
class TestPrefixes <
|
35
|
+
class TestPrefixes < Zold::Test
|
36
36
|
def test_creates_and_validates
|
37
37
|
FakeHome.new(log: test_log).run do |home|
|
38
38
|
wallet = home.create_wallet
|
data/test/test_remotes.rb
CHANGED
@@ -34,7 +34,7 @@ require_relative '../lib/zold/verbose_thread'
|
|
34
34
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
35
35
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
36
36
|
# License:: MIT
|
37
|
-
class TestRemotes <
|
37
|
+
class TestRemotes < Zold::Test
|
38
38
|
def test_adds_remotes
|
39
39
|
Dir.mktmpdir do |dir|
|
40
40
|
file = File.join(dir, 'remotes')
|
data/test/test_signature.rb
CHANGED
@@ -32,7 +32,7 @@ require_relative '../lib/zold/signature'
|
|
32
32
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
33
33
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
34
34
|
# License:: MIT
|
35
|
-
class TestSignature <
|
35
|
+
class TestSignature < Zold::Test
|
36
36
|
def test_signs_and_validates
|
37
37
|
pvt = Zold::Key.new(file: 'fixtures/id_rsa')
|
38
38
|
pub = Zold::Key.new(file: 'fixtures/id_rsa.pub')
|
data/test/test_size.rb
CHANGED
@@ -27,7 +27,7 @@ require_relative '../lib/zold/size'
|
|
27
27
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
28
28
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
29
29
|
# License:: MIT
|
30
|
-
class TestSize <
|
30
|
+
class TestSize < Zold::Test
|
31
31
|
def test_prints_size
|
32
32
|
assert_equal('?', Zold::Size.new(nil).to_s)
|
33
33
|
assert_equal('10b', Zold::Size.new(10).to_s)
|
data/test/test_sync_wallets.rb
CHANGED
@@ -35,7 +35,7 @@ require_relative '../lib/zold/amount'
|
|
35
35
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
36
36
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
37
37
|
# License:: MIT
|
38
|
-
class TestSyncWallets <
|
38
|
+
class TestSyncWallets < Zold::Test
|
39
39
|
def test_adds_wallet
|
40
40
|
FakeHome.new(log: test_log).run do |home|
|
41
41
|
wallets = home.wallets
|
data/test/test_tax.rb
CHANGED
@@ -37,7 +37,7 @@ require_relative '../lib/zold/prefixes'
|
|
37
37
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
38
38
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
39
39
|
# License:: MIT
|
40
|
-
class TestTax <
|
40
|
+
class TestTax < Zold::Test
|
41
41
|
def test_print_fee
|
42
42
|
test_log.info("Fee in zents: #{Zold::Tax::FEE.to_i}")
|
43
43
|
end
|
data/test/test_tree_wallets.rb
CHANGED
@@ -31,7 +31,7 @@ require_relative '../lib/zold/tree_wallets'
|
|
31
31
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
32
32
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
33
33
|
# License:: MIT
|
34
|
-
class TestTreeWallets <
|
34
|
+
class TestTreeWallets < Zold::Test
|
35
35
|
def test_adds_wallet
|
36
36
|
Dir.mktmpdir do |dir|
|
37
37
|
wallets = Zold::TreeWallets.new(dir)
|
data/test/test_txn.rb
CHANGED
@@ -31,7 +31,7 @@ require_relative '../lib/zold/amount'
|
|
31
31
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
32
32
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
33
33
|
# License:: MIT
|
34
|
-
class TestTxn <
|
34
|
+
class TestTxn < Zold::Test
|
35
35
|
def test_prints_and_parses
|
36
36
|
time = Time.now
|
37
37
|
txn = Zold::Txn.parse(
|
data/test/test_upgrades.rb
CHANGED
@@ -29,7 +29,7 @@ require_relative '../lib/zold/version_file'
|
|
29
29
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
30
30
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
31
31
|
# License:: MIT
|
32
|
-
class TestUpgrades <
|
32
|
+
class TestUpgrades < Zold::Test
|
33
33
|
# @todo #327:30min Uncomment, when you're ready to work on upgrade manager's
|
34
34
|
# test case of absent version file. Start with running the test first.
|
35
35
|
def test_no_version_file_is_ok
|
data/test/test_verbose_thread.rb
CHANGED
@@ -28,7 +28,7 @@ require_relative '../lib/zold/verbose_thread'
|
|
28
28
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
29
29
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
30
30
|
# License:: MIT
|
31
|
-
class TestVerboseThread <
|
31
|
+
class TestVerboseThread < Zold::Test
|
32
32
|
def test_exceptions_are_logged
|
33
33
|
assert_raises RuntimeError do
|
34
34
|
Zold::VerboseThread.new(Zold::Log::Quiet.new).run do
|
data/test/test_version.rb
CHANGED
data/test/test_wallet.rb
CHANGED
@@ -34,7 +34,7 @@ require_relative '../lib/zold/commands/pay'
|
|
34
34
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
35
35
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
36
36
|
# License:: MIT
|
37
|
-
class TestWallet <
|
37
|
+
class TestWallet < Zold::Test
|
38
38
|
def test_reads_empty_wallet
|
39
39
|
FakeHome.new(log: test_log).run do |home|
|
40
40
|
wallet = home.create_wallet
|
data/test/test_wallets.rb
CHANGED
@@ -33,7 +33,7 @@ require_relative '../lib/zold/amount'
|
|
33
33
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
34
34
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
35
35
|
# License:: MIT
|
36
|
-
class TestWallets <
|
36
|
+
class TestWallets < Zold::Test
|
37
37
|
def test_adds_wallet
|
38
38
|
FakeHome.new(log: test_log).run do |home|
|
39
39
|
wallets = home.wallets
|
data/test/test_zold.rb
CHANGED
@@ -26,15 +26,16 @@ require 'open3'
|
|
26
26
|
require 'English'
|
27
27
|
require_relative 'test__helper'
|
28
28
|
require_relative '../lib/zold/version'
|
29
|
+
require_relative '../lib/zold/age'
|
29
30
|
|
30
31
|
# Zold main module test.
|
31
32
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
32
33
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
33
34
|
# License:: MIT
|
34
|
-
class TestZold <
|
35
|
-
|
36
|
-
|
37
|
-
|
35
|
+
class TestZold < Zold::Test
|
36
|
+
Dir.new('fixtures/scripts').select { |f| f =~ /\.sh$/ && !f.start_with?('_') }.each do |f|
|
37
|
+
# next unless f == 'push-and-pull.sh'
|
38
|
+
define_method("test_script_#{f.gsub(/[^a-z]/, '_')}") do
|
38
39
|
start = Time.now
|
39
40
|
test_log.debug("\n\n#{f} running...")
|
40
41
|
Dir.mktmpdir do |dir|
|
@@ -29,7 +29,7 @@ require_relative '../fake_home'
|
|
29
29
|
# Author:: Yegor Bugayenko (yegor256@gmail.com)
|
30
30
|
# Copyright:: Copyright (c) 2018 Yegor Bugayenko
|
31
31
|
# License:: MIT
|
32
|
-
class TestProtocolUp <
|
32
|
+
class TestProtocolUp < Zold::Test
|
33
33
|
def test_upgrades_protocol_in_wallet
|
34
34
|
FakeHome.new(log: test_log).run do |home|
|
35
35
|
id = home.create_wallet.id
|
data/zold.gemspec
CHANGED
@@ -79,6 +79,7 @@ and suggests a different architecture for digital wallet maintenance.'
|
|
79
79
|
s.add_runtime_dependency 'zold-score', '~>0'
|
80
80
|
s.add_development_dependency 'codecov', '~>0'
|
81
81
|
s.add_development_dependency 'minitest', '~>5'
|
82
|
+
s.add_development_dependency 'minitest-hooks', '~>1'
|
82
83
|
s.add_development_dependency 'random-port', '~>0'
|
83
84
|
s.add_development_dependency 'rdoc', '~>4'
|
84
85
|
s.add_development_dependency 'rspec-rails', '~>3'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zold
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.16.
|
4
|
+
version: 0.16.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Yegor Bugayenko
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-11-
|
11
|
+
date: 2018-11-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: backtrace
|
@@ -360,6 +360,20 @@ dependencies:
|
|
360
360
|
- - "~>"
|
361
361
|
- !ruby/object:Gem::Version
|
362
362
|
version: '5'
|
363
|
+
- !ruby/object:Gem::Dependency
|
364
|
+
name: minitest-hooks
|
365
|
+
requirement: !ruby/object:Gem::Requirement
|
366
|
+
requirements:
|
367
|
+
- - "~>"
|
368
|
+
- !ruby/object:Gem::Version
|
369
|
+
version: '1'
|
370
|
+
type: :development
|
371
|
+
prerelease: false
|
372
|
+
version_requirements: !ruby/object:Gem::Requirement
|
373
|
+
requirements:
|
374
|
+
- - "~>"
|
375
|
+
- !ruby/object:Gem::Version
|
376
|
+
version: '1'
|
363
377
|
- !ruby/object:Gem::Dependency
|
364
378
|
name: random-port
|
365
379
|
requirement: !ruby/object:Gem::Requirement
|