block_explorer 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +8 -2
- data/lib/block_explorer/block_chain.rb +14 -2
- data/lib/block_explorer/version.rb +1 -1
- data/spec/block_explorer/block_explorer_spec.rb +22 -3
- data/spec/cassettes/BlockExplorer/_getreceivedbyaddress/minconf.yml +34 -0
- data/spec/cassettes/BlockExplorer/_getreceivedbyaddress/without_minconf.yml +34 -0
- data/spec/cassettes/BlockExplorer/{mytransactions → _mytransactions}/getting_transactions_for_2_addresses.yml +126 -10
- data/spec/cassettes/BlockExplorer/{mytransactions → _mytransactions}/getting_transactions_for_one_address.yml +2 -2
- metadata +21 -42
data/README.md
CHANGED
@@ -20,8 +20,14 @@ Or install it yourself as:
|
|
20
20
|
|
21
21
|
`mytransactions` returns Ruby hash of raw transactions relating to the specified address(es).
|
22
22
|
|
23
|
-
BlockExplorer.mytransactions
|
24
|
-
BlockExplorer.mytransactions
|
23
|
+
BlockExplorer.mytransactions(address)
|
24
|
+
BlockExplorer.mytransactions([address1, address2])
|
25
|
+
|
26
|
+
|
27
|
+
`getreceivedbyaddress` returns BigDecimal of the total amount of bitcoins sent to the address.
|
28
|
+
|
29
|
+
BlockExplorer.getreceivedbyaddress(address)
|
30
|
+
BlockExplorer.getreceivedbyaddress(address, 3) # return received amount where transactions have minconf=3
|
25
31
|
|
26
32
|
|
27
33
|
## Contributing
|
@@ -1,7 +1,8 @@
|
|
1
1
|
module BlockExplorer
|
2
2
|
module BlockChain
|
3
|
-
MyTransactions =
|
4
|
-
RawTx =
|
3
|
+
MyTransactions = "#{BlockExplorer::Domain}/q/mytransactions"
|
4
|
+
RawTx = "#{BlockExplorer::Domain}/rawtx"
|
5
|
+
GetReceivedByAddress = "#{BlockExplorer::Domain}/q/getreceivedbyaddress"
|
5
6
|
|
6
7
|
def mytransactions(addresses)
|
7
8
|
if addresses.is_a?(String)
|
@@ -11,6 +12,17 @@ module BlockExplorer
|
|
11
12
|
get_json "#{MyTransactions}/#{addresses.join('.')}"
|
12
13
|
end
|
13
14
|
|
15
|
+
def getreceivedbyaddress(address, minconf = 0)
|
16
|
+
if minconf > 0
|
17
|
+
url = "#{GetReceivedByAddress}/#{address}/#{minconf}"
|
18
|
+
else
|
19
|
+
url = "#{GetReceivedByAddress}/#{address}"
|
20
|
+
end
|
21
|
+
|
22
|
+
puts url
|
23
|
+
BigDecimal(open(url).read)
|
24
|
+
end
|
25
|
+
|
14
26
|
# def rawtx(hash)
|
15
27
|
# get_json "#{RawTx}/#{hash}"
|
16
28
|
# end
|
@@ -1,10 +1,10 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe BlockExplorer do
|
4
|
+
let(:addressA) { '1JDfUiJHZ6pDY6wWYTx86RYjDCW7QxCofs' }
|
5
|
+
let(:addressB) { '1KxepETPK2Xz8e5FaZE62y7Rww4LWuJUhG' }
|
4
6
|
|
5
|
-
context 'mytransactions' do
|
6
|
-
let(:addressA) { '1JDfUiJHZ6pDY6wWYTx86RYjDCW7QxCofs' }
|
7
|
-
let(:addressB) { '1KxepETPK2Xz8e5FaZE62y7Rww4LWuJUhG' }
|
7
|
+
context '#mytransactions' do
|
8
8
|
|
9
9
|
context 'getting transactions for one address' do
|
10
10
|
use_vcr_cassette
|
@@ -33,4 +33,23 @@ describe BlockExplorer do
|
|
33
33
|
end
|
34
34
|
|
35
35
|
end
|
36
|
+
|
37
|
+
context '#getreceivedbyaddress' do
|
38
|
+
context "without minconf" do
|
39
|
+
use_vcr_cassette
|
40
|
+
|
41
|
+
it "returns the total received" do
|
42
|
+
BlockExplorer.getreceivedbyaddress(addressA).should == BigDecimal("0.1")
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
context "minconf" do
|
47
|
+
use_vcr_cassette
|
48
|
+
|
49
|
+
it "returns 0 if minconf is very high" do
|
50
|
+
BlockExplorer.getreceivedbyaddress(addressA, 99999999).should == BigDecimal("0")
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
end
|
36
55
|
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://blockexplorer.com/q/getreceivedbyaddress/1JDfUiJHZ6pDY6wWYTx86RYjDCW7QxCofs/99999999
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- ! '*/*'
|
12
|
+
User-Agent:
|
13
|
+
- Ruby
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: OK
|
18
|
+
headers:
|
19
|
+
Date:
|
20
|
+
- Wed, 06 Jun 2012 22:26:38 GMT
|
21
|
+
Server:
|
22
|
+
- Apache/2.2
|
23
|
+
Cache-Control:
|
24
|
+
- no-cache
|
25
|
+
Content-Length:
|
26
|
+
- '1'
|
27
|
+
Content-Type:
|
28
|
+
- text/plain; charset=iso-8859-1
|
29
|
+
body:
|
30
|
+
encoding: US-ASCII
|
31
|
+
string: '0'
|
32
|
+
http_version:
|
33
|
+
recorded_at: Wed, 06 Jun 2012 22:26:39 GMT
|
34
|
+
recorded_with: VCR 2.1.1
|
@@ -0,0 +1,34 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://blockexplorer.com/q/getreceivedbyaddress/1JDfUiJHZ6pDY6wWYTx86RYjDCW7QxCofs
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- ! '*/*'
|
12
|
+
User-Agent:
|
13
|
+
- Ruby
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: OK
|
18
|
+
headers:
|
19
|
+
Date:
|
20
|
+
- Wed, 06 Jun 2012 22:26:38 GMT
|
21
|
+
Server:
|
22
|
+
- Apache/2.2
|
23
|
+
Cache-Control:
|
24
|
+
- no-cache
|
25
|
+
Content-Length:
|
26
|
+
- '10'
|
27
|
+
Content-Type:
|
28
|
+
- text/plain; charset=iso-8859-1
|
29
|
+
body:
|
30
|
+
encoding: US-ASCII
|
31
|
+
string: '0.10000000'
|
32
|
+
http_version:
|
33
|
+
recorded_at: Wed, 06 Jun 2012 22:26:38 GMT
|
34
|
+
recorded_with: VCR 2.1.1
|
@@ -17,11 +17,11 @@ http_interactions:
|
|
17
17
|
message: OK
|
18
18
|
headers:
|
19
19
|
Date:
|
20
|
-
-
|
20
|
+
- Wed, 06 Jun 2012 22:24:20 GMT
|
21
21
|
Server:
|
22
22
|
- Apache/2.2
|
23
23
|
Etag:
|
24
|
-
- W/"
|
24
|
+
- W/"00000000000002bd1a1fb89927d422d5c12e72972480af645b39a9610d3c48a5-1"
|
25
25
|
Transfer-Encoding:
|
26
26
|
- chunked
|
27
27
|
Content-Type:
|
@@ -1401,9 +1401,67 @@ http_interactions:
|
|
1401
1401
|
\ \"value\":\"0.05000000\",\n \"scriptPubKey\":\"OP_DUP OP_HASH160
|
1402
1402
|
992fdaebf1da1e6e16ea3cdefe57a386f5185343 OP_EQUALVERIFY OP_CHECKSIG\",\n \"address\":\"1ExyiPLKNQHLUNvNpEeGQn8Lc9simTUiMw\"\n
|
1403
1403
|
\ }\n ],\n \"block\":\"000000000000045c46c1cfb3e25fe079f812bc38784276616cf6c1925cb67e67\",\n
|
1404
|
-
\ \"blocknumber\":\"181098\",\n \"time\":\"2012-05-21 23:33:32\"\n }
|
1404
|
+
\ \"blocknumber\":\"181098\",\n \"time\":\"2012-05-21 23:33:32\"\n },\n
|
1405
|
+
\ \"a855909c622814c41e2ef6c3d6b8c3a99c232f5114102e5fa43d01780c441b41\":{\n
|
1406
|
+
\ \"hash\":\"a855909c622814c41e2ef6c3d6b8c3a99c232f5114102e5fa43d01780c441b41\",\n
|
1407
|
+
\ \"ver\":1,\n \"vin_sz\":2,\n \"vout_sz\":2,\n \"lock_time\":0,\n
|
1408
|
+
\ \"size\":437,\n \"in\":[\n {\n \"prev_out\":{\n \"hash\":\"d681d519b507b14c5fd5e8f8149834defb5864496b1966ae2b7f43946f3a9704\",\n
|
1409
|
+
\ \"n\":1\n },\n \"scriptSig\":\"3045022100b9198f0a985dfc5897ebc12d814db7cbe027189b2818e984b78ba25789ca8726022059a6f5e06628c36dac5ec08490aa153331c243d6ffa7f0d3196d381c709e72fd01
|
1410
|
+
042d42d7d4c4ac424ffe3dc0c4732e3632750078fa6dee6d33d22e1be3d6c8465f35d9f2d0aa20d4bc1b3a1c272c5ce002d220d27525d18b2c22b94d7837363878\",\n
|
1411
|
+
\ \"address\":\"1KxepETPK2Xz8e5FaZE62y7Rww4LWuJUhG\"\n },\n {\n
|
1412
|
+
\ \"prev_out\":{\n \"hash\":\"4535aeea2749f685c720e54fdec5f90f6e3f98bfb02cdcbf333f40c967ec4895\",\n
|
1413
|
+
\ \"n\":3\n },\n \"scriptSig\":\"304402202d0e569aceb807a285a2c1e3da469dcd79a426c98a0883469aa98211d9e57399022036f07a5c831380eb18eb7dcd66a1ce5f3a3f49a5c2753d292bb5b1046f506fe701
|
1414
|
+
048e53d21aab25df62db3d1e89fcb3d8e9b878e7e08703c48705fcbbb025b6d06874fa217c97a3695bd68f3b641c18d7eb255441aa8347833005a5499ae2c43721\",\n
|
1415
|
+
\ \"address\":\"1ydcpgQ7UJWghwCe2RD7JgQMYj9pUKz4J\"\n }\n ],\n
|
1416
|
+
\ \"out\":[\n {\n \"value\":\"9.00000000\",\n \"scriptPubKey\":\"OP_DUP
|
1417
|
+
OP_HASH160 694eca3c53fef42553d64cda457675a8860e4298 OP_EQUALVERIFY OP_CHECKSIG\",\n
|
1418
|
+
\ \"address\":\"1AbpLZqf9GPgaBX1PJQ6Wx2gGGo7MLp1TG\"\n },\n {\n
|
1419
|
+
\ \"value\":\"23.76860000\",\n \"scriptPubKey\":\"OP_DUP OP_HASH160
|
1420
|
+
c062b718a9c3ef9dad5e5b84af3cbe119064b172 OP_EQUALVERIFY OP_CHECKSIG\",\n \"address\":\"1JYEzgjvxjbyDLHuLPLAVwRASU5M8kdpfG\"\n
|
1421
|
+
\ }\n ],\n \"block\":\"00000000000008f8f825b66d4d3ccfb2a0f7d425470edaea80eccca8db39b104\",\n
|
1422
|
+
\ \"blocknumber\":\"181147\",\n \"time\":\"2012-05-22 09:55:03\"\n },\n
|
1423
|
+
\ \"23772d8b8bed5f40d2e5ac2a50493f17aceb0e7259cbd99fdeca07ffff8dc199\":{\n
|
1424
|
+
\ \"hash\":\"23772d8b8bed5f40d2e5ac2a50493f17aceb0e7259cbd99fdeca07ffff8dc199\",\n
|
1425
|
+
\ \"ver\":1,\n \"vin_sz\":4,\n \"vout_sz\":2,\n \"lock_time\":0,\n
|
1426
|
+
\ \"size\":799,\n \"in\":[\n {\n \"prev_out\":{\n \"hash\":\"c694bf0e37da560c51e83387df88f871a84052f6f6b1ba681a68cb37c046a8e4\",\n
|
1427
|
+
\ \"n\":1\n },\n \"scriptSig\":\"3046022100960ff20325957fa6afd46065bd2c6d7489548f15b25e7057259dcc07df4ad0bd022100e09b4f19f9e03835bbdec860c2e98d82b53498193df5ee2752c452371412d36801
|
1428
|
+
04b136ce85bda01b08a973730021ca13c1e20e9228843d4e5a9e9d2aa471ec937ea0aea8839d8b7a8b1f3071aa0fa731e50dbfe26d7277f2d0829736a6b812a812\",\n
|
1429
|
+
\ \"address\":\"1CbjkAtHvkgmRgtHRVPNyaQB5ccdTD2EaK\"\n },\n {\n
|
1430
|
+
\ \"prev_out\":{\n \"hash\":\"b4c7d340023020d8191efe0d0f94e76c49f463b576ce655af1b5aa253335ed7a\",\n
|
1431
|
+
\ \"n\":1\n },\n \"scriptSig\":\"3044022051b33ce7900142ebd81acf4669836692f80471be75e8cc9c5da0722577f5a7290220553f0b5de1dee9beade960a37b9e968c3be2480ed06983aeaa502d9ac9d7e80a01
|
1432
|
+
04ee567adec5be0c2874f51ee3bac943c0b68486ef61b42ceb39e8f299e83f552c8ba099250f3213f7979a95c04fb54844a0c5433c085ffbcba7855220dba45ab1\",\n
|
1433
|
+
\ \"address\":\"1ArHxEe1yq3bptNoXzV2aceHQbbFqRBosV\"\n },\n {\n
|
1434
|
+
\ \"prev_out\":{\n \"hash\":\"e2f6014875b2e3f04dc8dd8245240411101ae302eeae85b4545223190c0092a8\",\n
|
1435
|
+
\ \"n\":0\n },\n \"scriptSig\":\"304502207d9a7efc1d96edcaa26c040faeacfc709eb984e37f1a7e63a79bd339c1428031022100890600e30a68a929a646636a577aacd65e4351eab213b79d46137364d97a202701
|
1436
|
+
04bfd1b80138412d6f38c3c0334030a2cdc2b3e4b53f9ec38325be16a1cd2e0c6c421cc1c0cc717bd7e447be52a528e404b81a51651c2b80b66921746f6a78c8b6\",\n
|
1437
|
+
\ \"address\":\"12ymEhZMb4bD7goZ3wdLZJd3DW6XNhgTG2\"\n },\n {\n
|
1438
|
+
\ \"prev_out\":{\n \"hash\":\"2a5f7739d0651813ef88b5f07eec1b80eb5fbadefd5a5731776860767960dbd5\",\n
|
1439
|
+
\ \"n\":1\n },\n \"scriptSig\":\"3046022100acdef7259bf2b0a1a5751383b538ff8d08dfcea127fe1d8a398dc82780f1677c02210089ed228a164603dffaafc89ffa99d9bbbb3d6a40c7877427b6f5d49007dfe1c401
|
1440
|
+
042d42d7d4c4ac424ffe3dc0c4732e3632750078fa6dee6d33d22e1be3d6c8465f35d9f2d0aa20d4bc1b3a1c272c5ce002d220d27525d18b2c22b94d7837363878\",\n
|
1441
|
+
\ \"address\":\"1KxepETPK2Xz8e5FaZE62y7Rww4LWuJUhG\"\n }\n ],\n
|
1442
|
+
\ \"out\":[\n {\n \"value\":\"41.00000000\",\n \"scriptPubKey\":\"OP_DUP
|
1443
|
+
OP_HASH160 4fec4ef14060e1a057eb45053d6757656ad87e98 OP_EQUALVERIFY OP_CHECKSIG\",\n
|
1444
|
+
\ \"address\":\"18HbU9aZ4P5GDzLNEvmZytmh5rQkos9rRr\"\n },\n {\n
|
1445
|
+
\ \"value\":\"22.39517434\",\n \"scriptPubKey\":\"OP_DUP OP_HASH160
|
1446
|
+
a6f3f1edac78e75c60814e8bb90bb31b1fe050f2 OP_EQUALVERIFY OP_CHECKSIG\",\n \"address\":\"1GDmQSdUyXW58sx22wEsU8pUwASPeZaTz1\"\n
|
1447
|
+
\ }\n ],\n \"block\":\"00000000000009c6a7b3e37e794aa3b2b4ada2569f44a1f36191fb5e7463f62a\",\n
|
1448
|
+
\ \"blocknumber\":\"182075\",\n \"time\":\"2012-05-29 08:50:00\"\n },\n
|
1449
|
+
\ \"abd98c380bdf940d868f4495b9ab8dc3f8c88a9db104d6f90ce56b32d677f147\":{\n
|
1450
|
+
\ \"hash\":\"abd98c380bdf940d868f4495b9ab8dc3f8c88a9db104d6f90ce56b32d677f147\",\n
|
1451
|
+
\ \"ver\":1,\n \"vin_sz\":1,\n \"vout_sz\":2,\n \"lock_time\":0,\n
|
1452
|
+
\ \"size\":258,\n \"in\":[\n {\n \"prev_out\":{\n \"hash\":\"e7bcb67bdae8088ad9f51e704791d4d8809493be4d686e1e10ce28edf5090631\",\n
|
1453
|
+
\ \"n\":1\n },\n \"scriptSig\":\"304502206c97960d78607b9e1c09d99d1ae91d07688b6c36c488e943abf2f879b577b25f022100dc9f0be4fa517d75d03bad63baa0ed9562a4e41465dc2cb23513230a3df6475401
|
1454
|
+
042d42d7d4c4ac424ffe3dc0c4732e3632750078fa6dee6d33d22e1be3d6c8465f35d9f2d0aa20d4bc1b3a1c272c5ce002d220d27525d18b2c22b94d7837363878\",\n
|
1455
|
+
\ \"address\":\"1KxepETPK2Xz8e5FaZE62y7Rww4LWuJUhG\"\n }\n ],\n
|
1456
|
+
\ \"out\":[\n {\n \"value\":\"7.62910000\",\n \"scriptPubKey\":\"OP_DUP
|
1457
|
+
OP_HASH160 1849f7cbcb8d4def811a3e3e666ec93ccf8a0552 OP_EQUALVERIFY OP_CHECKSIG\",\n
|
1458
|
+
\ \"address\":\"13DRpzGj1fAX9nj8YrJJ97jg5gge8K2SRk\"\n },\n {\n
|
1459
|
+
\ \"value\":\"3.00000000\",\n \"scriptPubKey\":\"OP_DUP OP_HASH160
|
1460
|
+
1c57b3950175c9d85871459fe60d1a14ddf5b3d3 OP_EQUALVERIFY OP_CHECKSIG\",\n \"address\":\"13aryyiDxzXCBysc7uWg3vH7EK7qDCXPWv\"\n
|
1461
|
+
\ }\n ],\n \"block\":\"00000000000002bd1a1fb89927d422d5c12e72972480af645b39a9610d3c48a5\",\n
|
1462
|
+
\ \"blocknumber\":\"182560\",\n \"time\":\"2012-06-01 22:06:01\"\n }\n}"
|
1405
1463
|
http_version:
|
1406
|
-
recorded_at:
|
1464
|
+
recorded_at: Wed, 06 Jun 2012 22:24:21 GMT
|
1407
1465
|
- request:
|
1408
1466
|
method: get
|
1409
1467
|
uri: https://blockexplorer.com/q/mytransactions/1JDfUiJHZ6pDY6wWYTx86RYjDCW7QxCofs
|
@@ -1421,7 +1479,7 @@ http_interactions:
|
|
1421
1479
|
message: OK
|
1422
1480
|
headers:
|
1423
1481
|
Date:
|
1424
|
-
-
|
1482
|
+
- Wed, 06 Jun 2012 22:24:21 GMT
|
1425
1483
|
Server:
|
1426
1484
|
- Apache/2.2
|
1427
1485
|
Etag:
|
@@ -1459,7 +1517,7 @@ http_interactions:
|
|
1459
1517
|
\ \"block\":\"00000000000004e0e2245a428d80ba7ad3f50a4bf01c78eb11fc8539151d7b9b\",\n
|
1460
1518
|
\ \"blocknumber\":\"166328\",\n \"time\":\"2012-02-11 12:55:43\"\n }\n}"
|
1461
1519
|
http_version:
|
1462
|
-
recorded_at:
|
1520
|
+
recorded_at: Wed, 06 Jun 2012 22:24:21 GMT
|
1463
1521
|
- request:
|
1464
1522
|
method: get
|
1465
1523
|
uri: https://blockexplorer.com/q/mytransactions/1KxepETPK2Xz8e5FaZE62y7Rww4LWuJUhG
|
@@ -1477,11 +1535,11 @@ http_interactions:
|
|
1477
1535
|
message: OK
|
1478
1536
|
headers:
|
1479
1537
|
Date:
|
1480
|
-
-
|
1538
|
+
- Wed, 06 Jun 2012 22:24:21 GMT
|
1481
1539
|
Server:
|
1482
1540
|
- Apache/2.2
|
1483
1541
|
Etag:
|
1484
|
-
- W/"
|
1542
|
+
- W/"00000000000002bd1a1fb89927d422d5c12e72972480af645b39a9610d3c48a5-1"
|
1485
1543
|
Transfer-Encoding:
|
1486
1544
|
- chunked
|
1487
1545
|
Content-Type:
|
@@ -2835,7 +2893,65 @@ http_interactions:
|
|
2835
2893
|
\ \"value\":\"0.05000000\",\n \"scriptPubKey\":\"OP_DUP OP_HASH160
|
2836
2894
|
992fdaebf1da1e6e16ea3cdefe57a386f5185343 OP_EQUALVERIFY OP_CHECKSIG\",\n \"address\":\"1ExyiPLKNQHLUNvNpEeGQn8Lc9simTUiMw\"\n
|
2837
2895
|
\ }\n ],\n \"block\":\"000000000000045c46c1cfb3e25fe079f812bc38784276616cf6c1925cb67e67\",\n
|
2838
|
-
\ \"blocknumber\":\"181098\",\n \"time\":\"2012-05-21 23:33:32\"\n }
|
2896
|
+
\ \"blocknumber\":\"181098\",\n \"time\":\"2012-05-21 23:33:32\"\n },\n
|
2897
|
+
\ \"a855909c622814c41e2ef6c3d6b8c3a99c232f5114102e5fa43d01780c441b41\":{\n
|
2898
|
+
\ \"hash\":\"a855909c622814c41e2ef6c3d6b8c3a99c232f5114102e5fa43d01780c441b41\",\n
|
2899
|
+
\ \"ver\":1,\n \"vin_sz\":2,\n \"vout_sz\":2,\n \"lock_time\":0,\n
|
2900
|
+
\ \"size\":437,\n \"in\":[\n {\n \"prev_out\":{\n \"hash\":\"d681d519b507b14c5fd5e8f8149834defb5864496b1966ae2b7f43946f3a9704\",\n
|
2901
|
+
\ \"n\":1\n },\n \"scriptSig\":\"3045022100b9198f0a985dfc5897ebc12d814db7cbe027189b2818e984b78ba25789ca8726022059a6f5e06628c36dac5ec08490aa153331c243d6ffa7f0d3196d381c709e72fd01
|
2902
|
+
042d42d7d4c4ac424ffe3dc0c4732e3632750078fa6dee6d33d22e1be3d6c8465f35d9f2d0aa20d4bc1b3a1c272c5ce002d220d27525d18b2c22b94d7837363878\",\n
|
2903
|
+
\ \"address\":\"1KxepETPK2Xz8e5FaZE62y7Rww4LWuJUhG\"\n },\n {\n
|
2904
|
+
\ \"prev_out\":{\n \"hash\":\"4535aeea2749f685c720e54fdec5f90f6e3f98bfb02cdcbf333f40c967ec4895\",\n
|
2905
|
+
\ \"n\":3\n },\n \"scriptSig\":\"304402202d0e569aceb807a285a2c1e3da469dcd79a426c98a0883469aa98211d9e57399022036f07a5c831380eb18eb7dcd66a1ce5f3a3f49a5c2753d292bb5b1046f506fe701
|
2906
|
+
048e53d21aab25df62db3d1e89fcb3d8e9b878e7e08703c48705fcbbb025b6d06874fa217c97a3695bd68f3b641c18d7eb255441aa8347833005a5499ae2c43721\",\n
|
2907
|
+
\ \"address\":\"1ydcpgQ7UJWghwCe2RD7JgQMYj9pUKz4J\"\n }\n ],\n
|
2908
|
+
\ \"out\":[\n {\n \"value\":\"9.00000000\",\n \"scriptPubKey\":\"OP_DUP
|
2909
|
+
OP_HASH160 694eca3c53fef42553d64cda457675a8860e4298 OP_EQUALVERIFY OP_CHECKSIG\",\n
|
2910
|
+
\ \"address\":\"1AbpLZqf9GPgaBX1PJQ6Wx2gGGo7MLp1TG\"\n },\n {\n
|
2911
|
+
\ \"value\":\"23.76860000\",\n \"scriptPubKey\":\"OP_DUP OP_HASH160
|
2912
|
+
c062b718a9c3ef9dad5e5b84af3cbe119064b172 OP_EQUALVERIFY OP_CHECKSIG\",\n \"address\":\"1JYEzgjvxjbyDLHuLPLAVwRASU5M8kdpfG\"\n
|
2913
|
+
\ }\n ],\n \"block\":\"00000000000008f8f825b66d4d3ccfb2a0f7d425470edaea80eccca8db39b104\",\n
|
2914
|
+
\ \"blocknumber\":\"181147\",\n \"time\":\"2012-05-22 09:55:03\"\n },\n
|
2915
|
+
\ \"23772d8b8bed5f40d2e5ac2a50493f17aceb0e7259cbd99fdeca07ffff8dc199\":{\n
|
2916
|
+
\ \"hash\":\"23772d8b8bed5f40d2e5ac2a50493f17aceb0e7259cbd99fdeca07ffff8dc199\",\n
|
2917
|
+
\ \"ver\":1,\n \"vin_sz\":4,\n \"vout_sz\":2,\n \"lock_time\":0,\n
|
2918
|
+
\ \"size\":799,\n \"in\":[\n {\n \"prev_out\":{\n \"hash\":\"c694bf0e37da560c51e83387df88f871a84052f6f6b1ba681a68cb37c046a8e4\",\n
|
2919
|
+
\ \"n\":1\n },\n \"scriptSig\":\"3046022100960ff20325957fa6afd46065bd2c6d7489548f15b25e7057259dcc07df4ad0bd022100e09b4f19f9e03835bbdec860c2e98d82b53498193df5ee2752c452371412d36801
|
2920
|
+
04b136ce85bda01b08a973730021ca13c1e20e9228843d4e5a9e9d2aa471ec937ea0aea8839d8b7a8b1f3071aa0fa731e50dbfe26d7277f2d0829736a6b812a812\",\n
|
2921
|
+
\ \"address\":\"1CbjkAtHvkgmRgtHRVPNyaQB5ccdTD2EaK\"\n },\n {\n
|
2922
|
+
\ \"prev_out\":{\n \"hash\":\"b4c7d340023020d8191efe0d0f94e76c49f463b576ce655af1b5aa253335ed7a\",\n
|
2923
|
+
\ \"n\":1\n },\n \"scriptSig\":\"3044022051b33ce7900142ebd81acf4669836692f80471be75e8cc9c5da0722577f5a7290220553f0b5de1dee9beade960a37b9e968c3be2480ed06983aeaa502d9ac9d7e80a01
|
2924
|
+
04ee567adec5be0c2874f51ee3bac943c0b68486ef61b42ceb39e8f299e83f552c8ba099250f3213f7979a95c04fb54844a0c5433c085ffbcba7855220dba45ab1\",\n
|
2925
|
+
\ \"address\":\"1ArHxEe1yq3bptNoXzV2aceHQbbFqRBosV\"\n },\n {\n
|
2926
|
+
\ \"prev_out\":{\n \"hash\":\"e2f6014875b2e3f04dc8dd8245240411101ae302eeae85b4545223190c0092a8\",\n
|
2927
|
+
\ \"n\":0\n },\n \"scriptSig\":\"304502207d9a7efc1d96edcaa26c040faeacfc709eb984e37f1a7e63a79bd339c1428031022100890600e30a68a929a646636a577aacd65e4351eab213b79d46137364d97a202701
|
2928
|
+
04bfd1b80138412d6f38c3c0334030a2cdc2b3e4b53f9ec38325be16a1cd2e0c6c421cc1c0cc717bd7e447be52a528e404b81a51651c2b80b66921746f6a78c8b6\",\n
|
2929
|
+
\ \"address\":\"12ymEhZMb4bD7goZ3wdLZJd3DW6XNhgTG2\"\n },\n {\n
|
2930
|
+
\ \"prev_out\":{\n \"hash\":\"2a5f7739d0651813ef88b5f07eec1b80eb5fbadefd5a5731776860767960dbd5\",\n
|
2931
|
+
\ \"n\":1\n },\n \"scriptSig\":\"3046022100acdef7259bf2b0a1a5751383b538ff8d08dfcea127fe1d8a398dc82780f1677c02210089ed228a164603dffaafc89ffa99d9bbbb3d6a40c7877427b6f5d49007dfe1c401
|
2932
|
+
042d42d7d4c4ac424ffe3dc0c4732e3632750078fa6dee6d33d22e1be3d6c8465f35d9f2d0aa20d4bc1b3a1c272c5ce002d220d27525d18b2c22b94d7837363878\",\n
|
2933
|
+
\ \"address\":\"1KxepETPK2Xz8e5FaZE62y7Rww4LWuJUhG\"\n }\n ],\n
|
2934
|
+
\ \"out\":[\n {\n \"value\":\"41.00000000\",\n \"scriptPubKey\":\"OP_DUP
|
2935
|
+
OP_HASH160 4fec4ef14060e1a057eb45053d6757656ad87e98 OP_EQUALVERIFY OP_CHECKSIG\",\n
|
2936
|
+
\ \"address\":\"18HbU9aZ4P5GDzLNEvmZytmh5rQkos9rRr\"\n },\n {\n
|
2937
|
+
\ \"value\":\"22.39517434\",\n \"scriptPubKey\":\"OP_DUP OP_HASH160
|
2938
|
+
a6f3f1edac78e75c60814e8bb90bb31b1fe050f2 OP_EQUALVERIFY OP_CHECKSIG\",\n \"address\":\"1GDmQSdUyXW58sx22wEsU8pUwASPeZaTz1\"\n
|
2939
|
+
\ }\n ],\n \"block\":\"00000000000009c6a7b3e37e794aa3b2b4ada2569f44a1f36191fb5e7463f62a\",\n
|
2940
|
+
\ \"blocknumber\":\"182075\",\n \"time\":\"2012-05-29 08:50:00\"\n },\n
|
2941
|
+
\ \"abd98c380bdf940d868f4495b9ab8dc3f8c88a9db104d6f90ce56b32d677f147\":{\n
|
2942
|
+
\ \"hash\":\"abd98c380bdf940d868f4495b9ab8dc3f8c88a9db104d6f90ce56b32d677f147\",\n
|
2943
|
+
\ \"ver\":1,\n \"vin_sz\":1,\n \"vout_sz\":2,\n \"lock_time\":0,\n
|
2944
|
+
\ \"size\":258,\n \"in\":[\n {\n \"prev_out\":{\n \"hash\":\"e7bcb67bdae8088ad9f51e704791d4d8809493be4d686e1e10ce28edf5090631\",\n
|
2945
|
+
\ \"n\":1\n },\n \"scriptSig\":\"304502206c97960d78607b9e1c09d99d1ae91d07688b6c36c488e943abf2f879b577b25f022100dc9f0be4fa517d75d03bad63baa0ed9562a4e41465dc2cb23513230a3df6475401
|
2946
|
+
042d42d7d4c4ac424ffe3dc0c4732e3632750078fa6dee6d33d22e1be3d6c8465f35d9f2d0aa20d4bc1b3a1c272c5ce002d220d27525d18b2c22b94d7837363878\",\n
|
2947
|
+
\ \"address\":\"1KxepETPK2Xz8e5FaZE62y7Rww4LWuJUhG\"\n }\n ],\n
|
2948
|
+
\ \"out\":[\n {\n \"value\":\"7.62910000\",\n \"scriptPubKey\":\"OP_DUP
|
2949
|
+
OP_HASH160 1849f7cbcb8d4def811a3e3e666ec93ccf8a0552 OP_EQUALVERIFY OP_CHECKSIG\",\n
|
2950
|
+
\ \"address\":\"13DRpzGj1fAX9nj8YrJJ97jg5gge8K2SRk\"\n },\n {\n
|
2951
|
+
\ \"value\":\"3.00000000\",\n \"scriptPubKey\":\"OP_DUP OP_HASH160
|
2952
|
+
1c57b3950175c9d85871459fe60d1a14ddf5b3d3 OP_EQUALVERIFY OP_CHECKSIG\",\n \"address\":\"13aryyiDxzXCBysc7uWg3vH7EK7qDCXPWv\"\n
|
2953
|
+
\ }\n ],\n \"block\":\"00000000000002bd1a1fb89927d422d5c12e72972480af645b39a9610d3c48a5\",\n
|
2954
|
+
\ \"blocknumber\":\"182560\",\n \"time\":\"2012-06-01 22:06:01\"\n }\n}"
|
2839
2955
|
http_version:
|
2840
|
-
recorded_at:
|
2956
|
+
recorded_at: Wed, 06 Jun 2012 22:24:22 GMT
|
2841
2957
|
recorded_with: VCR 2.1.1
|
@@ -17,7 +17,7 @@ http_interactions:
|
|
17
17
|
message: OK
|
18
18
|
headers:
|
19
19
|
Date:
|
20
|
-
-
|
20
|
+
- Wed, 06 Jun 2012 22:24:20 GMT
|
21
21
|
Server:
|
22
22
|
- Apache/2.2
|
23
23
|
Etag:
|
@@ -55,5 +55,5 @@ http_interactions:
|
|
55
55
|
\ \"block\":\"00000000000004e0e2245a428d80ba7ad3f50a4bf01c78eb11fc8539151d7b9b\",\n
|
56
56
|
\ \"blocknumber\":\"166328\",\n \"time\":\"2012-02-11 12:55:43\"\n }\n}"
|
57
57
|
http_version:
|
58
|
-
recorded_at:
|
58
|
+
recorded_at: Wed, 06 Jun 2012 22:24:20 GMT
|
59
59
|
recorded_with: VCR 2.1.1
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: block_explorer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-06-06 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirement: &70154692882420 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,15 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ! '>='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '0'
|
24
|
+
version_requirements: *70154692882420
|
30
25
|
- !ruby/object:Gem::Dependency
|
31
26
|
name: vcr
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
27
|
+
requirement: &70154692881160 !ruby/object:Gem::Requirement
|
33
28
|
none: false
|
34
29
|
requirements:
|
35
30
|
- - ! '>='
|
@@ -37,15 +32,10 @@ dependencies:
|
|
37
32
|
version: '0'
|
38
33
|
type: :development
|
39
34
|
prerelease: false
|
40
|
-
version_requirements:
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - ! '>='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
35
|
+
version_requirements: *70154692881160
|
46
36
|
- !ruby/object:Gem::Dependency
|
47
37
|
name: ir_b
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirement: &70154692880020 !ruby/object:Gem::Requirement
|
49
39
|
none: false
|
50
40
|
requirements:
|
51
41
|
- - ! '>='
|
@@ -53,15 +43,10 @@ dependencies:
|
|
53
43
|
version: '0'
|
54
44
|
type: :development
|
55
45
|
prerelease: false
|
56
|
-
version_requirements:
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
46
|
+
version_requirements: *70154692880020
|
62
47
|
- !ruby/object:Gem::Dependency
|
63
48
|
name: guard-rspec
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirement: &70154692815140 !ruby/object:Gem::Requirement
|
65
50
|
none: false
|
66
51
|
requirements:
|
67
52
|
- - ! '>='
|
@@ -69,15 +54,10 @@ dependencies:
|
|
69
54
|
version: '0'
|
70
55
|
type: :development
|
71
56
|
prerelease: false
|
72
|
-
version_requirements:
|
73
|
-
none: false
|
74
|
-
requirements:
|
75
|
-
- - ! '>='
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
version: '0'
|
57
|
+
version_requirements: *70154692815140
|
78
58
|
- !ruby/object:Gem::Dependency
|
79
59
|
name: webmock
|
80
|
-
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirement: &70154692813280 !ruby/object:Gem::Requirement
|
81
61
|
none: false
|
82
62
|
requirements:
|
83
63
|
- - ! '>='
|
@@ -85,12 +65,7 @@ dependencies:
|
|
85
65
|
version: '0'
|
86
66
|
type: :development
|
87
67
|
prerelease: false
|
88
|
-
version_requirements:
|
89
|
-
none: false
|
90
|
-
requirements:
|
91
|
-
- - ! '>='
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: '0'
|
68
|
+
version_requirements: *70154692813280
|
94
69
|
description: ! 'BlockExplorer is a Ruby wrapper for the Block Explorer API. Block
|
95
70
|
Explorer (http://blockexplorer.com) is a popular bitcoin blockchain explorer. '
|
96
71
|
email:
|
@@ -112,8 +87,10 @@ files:
|
|
112
87
|
- lib/block_explorer/constants.rb
|
113
88
|
- lib/block_explorer/version.rb
|
114
89
|
- spec/block_explorer/block_explorer_spec.rb
|
115
|
-
- spec/cassettes/BlockExplorer/
|
116
|
-
- spec/cassettes/BlockExplorer/
|
90
|
+
- spec/cassettes/BlockExplorer/_getreceivedbyaddress/minconf.yml
|
91
|
+
- spec/cassettes/BlockExplorer/_getreceivedbyaddress/without_minconf.yml
|
92
|
+
- spec/cassettes/BlockExplorer/_mytransactions/getting_transactions_for_2_addresses.yml
|
93
|
+
- spec/cassettes/BlockExplorer/_mytransactions/getting_transactions_for_one_address.yml
|
117
94
|
- spec/spec_helper.rb
|
118
95
|
homepage: ''
|
119
96
|
licenses: []
|
@@ -135,12 +112,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
135
112
|
version: '0'
|
136
113
|
requirements: []
|
137
114
|
rubyforge_project:
|
138
|
-
rubygems_version: 1.8.
|
115
|
+
rubygems_version: 1.8.10
|
139
116
|
signing_key:
|
140
117
|
specification_version: 3
|
141
118
|
summary: Ruby wrapper for the Block Explorer API
|
142
119
|
test_files:
|
143
120
|
- spec/block_explorer/block_explorer_spec.rb
|
144
|
-
- spec/cassettes/BlockExplorer/
|
145
|
-
- spec/cassettes/BlockExplorer/
|
121
|
+
- spec/cassettes/BlockExplorer/_getreceivedbyaddress/minconf.yml
|
122
|
+
- spec/cassettes/BlockExplorer/_getreceivedbyaddress/without_minconf.yml
|
123
|
+
- spec/cassettes/BlockExplorer/_mytransactions/getting_transactions_for_2_addresses.yml
|
124
|
+
- spec/cassettes/BlockExplorer/_mytransactions/getting_transactions_for_one_address.yml
|
146
125
|
- spec/spec_helper.rb
|