sibit 0.20.0 → 0.20.1
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/lib/sibit/btc.rb +6 -2
- data/lib/sibit/version.rb +1 -1
- data/test/test_btc.rb +12 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3b0578e225f53b1d3904fae19aa6f41ba7aea719bd137587821b3e2fba2a0373
|
|
4
|
+
data.tar.gz: 82178b4a20da5d18d99101649c31ad8fd3188c88a4ea74577cf2413d1bf6f9e2
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 756a8a1273e053f4a880220f8d33db38544e36f4a0d38118ee72cc1421d21311900859b9fbac5732c24260a9c48d7599f0865970db27e7046543ad52b2ceb223
|
|
7
|
+
data.tar.gz: 64650acdb47d4671028075dd84e1d3f7f5c8eefb9c67e5b45212e5d6c5aaec1e1576419a126808b20a4e11fc6dc2bd16ea5f473accbb0d1dac936c2896308ecc
|
data/lib/sibit/btc.rb
CHANGED
|
@@ -173,9 +173,13 @@ class Sibit
|
|
|
173
173
|
psize = 50
|
|
174
174
|
all = []
|
|
175
175
|
loop do
|
|
176
|
-
|
|
176
|
+
data = Sibit::Json.new(http: @http, log: @log).get(
|
|
177
177
|
URI("https://chain.api.btc.com/v3/block/#{hash}/tx?page=#{page}&pagesize=#{psize}")
|
|
178
|
-
)['data']
|
|
178
|
+
)['data']
|
|
179
|
+
raise Sibit::Error, "The block #{hash} has no data at page #{page}" if data.nil?
|
|
180
|
+
list = data['list']
|
|
181
|
+
raise Sibit::Error, "The list is empty for block #{hash} at page #{page}" if list.nil?
|
|
182
|
+
txns = list.map do |t|
|
|
179
183
|
{
|
|
180
184
|
hash: t['hash'],
|
|
181
185
|
outputs: t['outputs'].reject { |o| o['spent_by_tx'] }.map do |o|
|
data/lib/sibit/version.rb
CHANGED
data/test/test_btc.rb
CHANGED
|
@@ -86,6 +86,18 @@ class TestBtc < Minitest::Test
|
|
|
86
86
|
assert_equal(123, balance)
|
|
87
87
|
end
|
|
88
88
|
|
|
89
|
+
def test_fetch_block_broken
|
|
90
|
+
hash = '000000000000000007341915521967247f1dec17b3a311b8a8f4495392f1439b'
|
|
91
|
+
stub_request(:get, "https://chain.api.btc.com/v3/block/#{hash}")
|
|
92
|
+
.to_return(body: '{"data": {"next_block_hash": "n", "hash": "h", "prev_block_hash": "p"}}')
|
|
93
|
+
stub_request(:get, "https://chain.api.btc.com/v3/block/#{hash}/tx?page=1&pagesize=50")
|
|
94
|
+
.to_return(body: '{}')
|
|
95
|
+
sibit = Sibit::Btc.new
|
|
96
|
+
assert_raises Sibit::Error do
|
|
97
|
+
sibit.block(hash)
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
89
101
|
def test_fetch_block
|
|
90
102
|
hash = '000000000000000007341915521967247f1dec17b3a311b8a8f4495392f1439b'
|
|
91
103
|
stub_request(:get, "https://chain.api.btc.com/v3/block/#{hash}")
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sibit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.20.
|
|
4
|
+
version: 0.20.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Yegor Bugayenko
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2020-
|
|
11
|
+
date: 2020-08-13 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: backtrace
|