mastercoin-wallet 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,16 @@
1
+ module MastercoinWallet
2
+ class Address
3
+ include HTTParty
4
+ base_uri 'mastercoin-explorer.com/api/v1/'
5
+
6
+ attr_accessor :address
7
+
8
+ def initialize(address)
9
+ self.address = address
10
+ end
11
+
12
+ def find
13
+ self.class.get("/addresses/#{self.address}/unspent.json")
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,17 @@
1
+ module MastercoinWallet
2
+ class Transaction
3
+ include HTTParty
4
+ base_uri 'mastercoin-explorer.com/api/v1/'
5
+
6
+ attr_accessor :hash, :json_payload
7
+
8
+ def initialize(hash, json_payload)
9
+ self.hash = hash
10
+ self.json_payload = json_payload
11
+ end
12
+
13
+ def create!
14
+ self.class.post("/transactions.json", body: {transaction: {tx_hash: self.hash, json_payload: json_payload}})
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,34 @@
1
+ module MastercoinWallet
2
+ class Network
3
+ include Observable
4
+
5
+ def initialize
6
+ @mutex = Mutex.new
7
+ end
8
+
9
+ def sync!
10
+ Thread.new do
11
+ @address = Address.new(MastercoinWallet::config.address).find
12
+
13
+ MastercoinWallet.config.set_key(:balance, (@address["balance"] || 0))
14
+ MastercoinWallet.config.set_key(:test_balance, (@address["test_balance"] || 0))
15
+
16
+ ["received_transactions", "sent_transactions", "exodus_transactions", "bitcoin_transactions", "spendable_outputs"].each do |x|
17
+ if @address[x]
18
+ MastercoinWallet.config.set_key(x, @address[x])
19
+ end
20
+ end
21
+
22
+ if @address["spendable_outputs"]
23
+ MastercoinWallet.config.set_key(:btc_balance, "%.8f" % MastercoinWallet.config.spendable_outputs.inject(0){|sum, x| sum += x["value"].to_f})
24
+ end
25
+
26
+ self.changed(true)
27
+
28
+ MastercoinWallet.config.save
29
+
30
+ notify_observers(true)
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,47 @@
1
+ require 'qt'
2
+ require 'httparty'
3
+ require 'qtuitools'
4
+ require 'openssl'
5
+ require 'digest/sha2'
6
+ require 'fileutils'
7
+ require 'json'
8
+ require 'mastercoin-ruby'
9
+ require 'active_support/core_ext/hash/indifferent_access'
10
+ require 'bitcoin'
11
+ require 'observer'
12
+
13
+ module MastercoinWallet
14
+ require 'mastercoin-wallet/gui/images'
15
+
16
+ autoload :Address, 'mastercoin-wallet/models/address'
17
+ autoload :Transaction, 'mastercoin-wallet/models/transaction'
18
+ autoload :MainWindow, 'mastercoin-wallet/gui/main_window'
19
+ autoload :FirstRunWindow, 'mastercoin-wallet/gui/first_run_window'
20
+ autoload :SimpleSendWindow, 'mastercoin-wallet/gui/simple_send_window'
21
+ autoload :Config, 'mastercoin-wallet/config'
22
+ autoload :Network, 'mastercoin-wallet/network'
23
+
24
+ autoload :Ui_FirstRunWindow, 'mastercoin-wallet/gui/ui_first_run'
25
+ autoload :Ui_SimpleSend, 'mastercoin-wallet/gui/ui_simple_send'
26
+
27
+ CONFIG_PATH = "#{Dir.home}/.mastercoin-wallet/"
28
+ FILE_PATH = CONFIG_PATH + "config.json"
29
+
30
+ def self.config
31
+ @@config ||= MastercoinWallet::Config.new
32
+ end
33
+
34
+ def self.network
35
+ @@network ||= MastercoinWallet::Network.new
36
+ end
37
+
38
+ def self.init_logger(level = Logger::DEBUG)
39
+ @@log ||= Logger.new(CONFIG_PATH + "/debug.log")
40
+ @@log.level = level
41
+ @@log
42
+ end
43
+
44
+ def self.log
45
+ @@log ||= MastercoinWallet.init_logger
46
+ end
47
+ end
@@ -0,0 +1,86 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "mastercoin-wallet"
8
+ s.version = "0.0.1"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Maran"]
12
+ s.date = "2013-09-29"
13
+ s.description = "Mastercoin wallet using QT bindings to create a useful gui wallet"
14
+ s.email = "maran.hidskes@gmail.com"
15
+ s.executables = ["mastercoin-wallet"]
16
+ s.extra_rdoc_files = [
17
+ "LICENSE.txt",
18
+ "README.rdoc"
19
+ ]
20
+ s.files = [
21
+ ".document",
22
+ "Gemfile",
23
+ "Gemfile.lock",
24
+ "LICENSE.txt",
25
+ "Makefile",
26
+ "README.rdoc",
27
+ "Rakefile",
28
+ "VERSION",
29
+ "bin/mastercoin-wallet",
30
+ "lib/.DS_Store",
31
+ "lib/mastercoin-wallet.rb",
32
+ "lib/mastercoin-wallet/config.rb",
33
+ "lib/mastercoin-wallet/gui/first_run_window.rb",
34
+ "lib/mastercoin-wallet/gui/first_run_window.ui",
35
+ "lib/mastercoin-wallet/gui/images.rb",
36
+ "lib/mastercoin-wallet/gui/main_window.rb",
37
+ "lib/mastercoin-wallet/gui/simple_send_window.rb",
38
+ "lib/mastercoin-wallet/gui/simple_send_window.ui",
39
+ "lib/mastercoin-wallet/gui/ui_first_run.rb",
40
+ "lib/mastercoin-wallet/gui/ui_simple_send.rb",
41
+ "lib/mastercoin-wallet/models/address.rb",
42
+ "lib/mastercoin-wallet/models/transaction.rb",
43
+ "lib/mastercoin-wallet/network.rb",
44
+ "mastercoin-wallet.gemspec",
45
+ "resources/images.qrc",
46
+ "resources/logo.svg",
47
+ "test/helper.rb",
48
+ "test/test_mastercoin-wallet.rb"
49
+ ]
50
+ s.homepage = "http://github.com/maran/mastercoin-wallet"
51
+ s.licenses = ["CCPL"]
52
+ s.require_paths = ["lib"]
53
+ s.rubygems_version = "1.8.25"
54
+ s.summary = "Wallet implementation for the Mastercoin protocol"
55
+
56
+ if s.respond_to? :specification_version then
57
+ s.specification_version = 3
58
+
59
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
60
+ s.add_runtime_dependency(%q<qtbindings>, [">= 0"])
61
+ s.add_runtime_dependency(%q<httparty>, [">= 0"])
62
+ s.add_runtime_dependency(%q<active_support>, [">= 0"])
63
+ s.add_runtime_dependency(%q<bitcoin-ruby>, ["~> 0.0.1"])
64
+ s.add_runtime_dependency(%q<mastercoin-ruby>, [">= 0"])
65
+ s.add_development_dependency(%q<bundler>, ["~> 1.0"])
66
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.7"])
67
+ else
68
+ s.add_dependency(%q<qtbindings>, [">= 0"])
69
+ s.add_dependency(%q<httparty>, [">= 0"])
70
+ s.add_dependency(%q<active_support>, [">= 0"])
71
+ s.add_dependency(%q<bitcoin-ruby>, ["~> 0.0.1"])
72
+ s.add_dependency(%q<mastercoin-ruby>, [">= 0"])
73
+ s.add_dependency(%q<bundler>, ["~> 1.0"])
74
+ s.add_dependency(%q<jeweler>, ["~> 1.8.7"])
75
+ end
76
+ else
77
+ s.add_dependency(%q<qtbindings>, [">= 0"])
78
+ s.add_dependency(%q<httparty>, [">= 0"])
79
+ s.add_dependency(%q<active_support>, [">= 0"])
80
+ s.add_dependency(%q<bitcoin-ruby>, ["~> 0.0.1"])
81
+ s.add_dependency(%q<mastercoin-ruby>, [">= 0"])
82
+ s.add_dependency(%q<bundler>, ["~> 1.0"])
83
+ s.add_dependency(%q<jeweler>, ["~> 1.8.7"])
84
+ end
85
+ end
86
+
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE RCC><RCC version="1.0">
2
+ <qresource prefix="/">
3
+ <file>logo.svg</file>
4
+ </qresource>
5
+ </RCC>
6
+
@@ -0,0 +1,96 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
5
+ width="595.28px" height="453.54px" viewBox="0 0 595.28 453.54" enable-background="new 0 0 595.28 453.54" xml:space="preserve">
6
+ <path fill="#015093" d="M266.798,157.542L210.35,32.211l-97.583,187.231l-0.009-0.009l-0.687,1.33l-0.679,1.312l0.009,0.009
7
+ L15.476,410.175l137.382-27.207c-9.989-21.076-15.504-44.651-15.313-69.484C138.107,236.154,193.69,171.873,266.798,157.542z"/>
8
+ <path fill="#015093" d="M486.674,221.94l-0.67-1.329l-0.659-1.33l-0.005,0.009L390.509,30.632l-59.633,127.401
9
+ c72.849,15.428,127.431,80.505,126.86,157.797c-0.161,23.709-5.546,46.169-14.982,66.343l137.051,29.278l-93.14-189.502
10
+ L486.674,221.94z"/>
11
+ <g id="c5zQYp_1_">
12
+ <g>
13
+ <path fill="#015093" d="M265.209,364.22c4.604,0.026,13.554-0.99,22.334-3.337c10.065-2.694,19.488-6.692,27.238-13.938
14
+ c10.297-9.628,10.971-21.897,1.619-32.4c-5.845-6.567-13.402-10.627-21.59-13.385c-22.651-7.639-45.4-7.683-68.048-0.009
15
+ c-8.704,2.945-16.597,7.397-22.705,14.545c-6.669,7.808-7.357,17.623-1.624,26.127c4.849,7.201,11.926,11.592,19.685,14.964
16
+ C234.424,362.142,247.398,364.186,265.209,364.22z M342.029,276.56c10.396-0.036,21.345-1.74,32.284-5.577
17
+ c8.745-3.07,16.748-7.416,22.893-14.634c6.08-7.13,7.254-15.964,2.922-24.066c-2.873-5.363-7.326-9.289-12.412-12.492
18
+ c-9.45-5.961-19.89-9.128-30.865-10.726c-16.95-2.454-33.622-1.437-49.872,4.185c-8.888,3.078-17.025,7.469-23.236,14.812
19
+ c-6.666,7.88-7.263,17.562-1.517,26.127c3.819,5.702,9.195,9.619,15.173,12.733C310.923,273.98,325.521,276.337,342.029,276.56z
20
+ M322.635,344.465c-0.401,1.124-0.745,2.275-1.209,3.381c-2.739,6.487-7.683,11.003-13.465,14.671
21
+ c-9.504,6.015-20.024,9.173-31.08,10.753c-16.958,2.418-33.627,1.337-49.88-4.285c-6.143-2.122-11.93-5.014-17.075-9.047
22
+ c-5.349-4.186-9.507-9.218-11.234-15.999c-0.138,3.426-0.174,6.79-0.13,10.154c0.063,5.381,2.213,9.941,5.604,13.974
23
+ c6.162,7.308,14.295,11.592,23.111,14.669c15.777,5.525,32.025,6.56,48.498,4.4c11.458-1.509,22.411-4.72,32.263-10.993
24
+ c5.599-3.579,10.337-7.987,13.184-14.162C323.835,356.324,322.79,350.345,322.635,344.465z M198.549,367.88
25
+ c0,3.362-0.032,6.727,0.005,10.091c0.062,5.363,2.186,9.95,5.577,13.974c6.152,7.3,14.268,11.601,23.084,14.688
26
+ c15.839,5.559,32.141,6.566,48.667,4.398c11.39-1.489,22.223-4.773,32.087-10.895c12.208-7.577,17.195-18.16,14.8-32.115
27
+ c-0.196,0.491-0.308,0.706-0.366,0.929c-1.369,5.122-4.351,9.217-8.213,12.724c-7.148,6.506-15.732,10.297-24.896,12.903
28
+ c-12.519,3.568-25.297,4.452-38.245,3.364c-11.662-0.981-22.896-3.579-33.283-9.092
29
+ C208.976,384.19,201.516,378.193,198.549,367.88z M402.626,256.438c-2.467,6.612-4.363,9.637-8.602,13.51
30
+ c-7.085,6.479-15.585,10.288-24.673,12.894c-14.679,4.212-29.616,4.935-44.687,2.784c-11.038-1.57-21.604-4.667-31.115-10.689
31
+ c-6.88-4.354-12.538-9.789-14.786-17.989c-0.036-0.126-0.214-0.196-0.509-0.474c0,2.874,0.062,5.506-0.018,8.121
32
+ c-0.179,5.8,1.615,10.931,5.336,15.303c3.052,3.578,6.193,7.13,11.021,8.495c6.585,1.865,12.786,4.621,18.657,8.129
33
+ c0.96,0.571,2.089,0.938,3.187,1.195c13.157,3.025,26.439,3.489,39.788,1.589c11.172-1.589,21.862-4.721,31.477-10.842
34
+ c5.537-3.525,10.239-7.861,13.145-13.938C403.644,268.68,402.492,262.505,402.626,256.438z M329.206,310.388
35
+ c1.571,3.907,3.315,7.949,4.792,12.099c0.478,1.33,1.004,1.856,2.356,1.776c6.594-0.357,13.232-0.304,19.769-1.098
36
+ c11.274-1.356,21.946-4.756,31.682-10.823c12.176-7.576,17.177-18.302,14.684-31.999c-0.478,1.347-0.839,2.552-1.325,3.703
37
+ c-2.744,6.478-7.674,11.002-13.466,14.66c-11.938,7.522-25.225,10.734-39.118,11.609
38
+ C342.012,310.735,335.396,310.388,329.206,310.388z M335.247,348.096c0.973,0.063,1.848,0.152,2.718,0.17
39
+ c7.848,0.179,15.629-0.429,23.329-1.963c10.878-2.168,21.225-5.702,30.094-12.608c6.376-4.971,11.114-11.021,11.337-19.587
40
+ c0.09-3.221,0.018-6.433,0.018-9.646c-0.771,1.258-1.151,2.552-1.687,3.774c-2.762,6.301-7.584,10.752-13.251,14.331
41
+ c-11.796,7.459-24.939,10.653-38.673,11.653c-4.747,0.348-9.548,0.062-14.509,0.062
42
+ C334.842,339.084,335.042,343.483,335.247,348.096z M335.261,372.037c0.763,0.053,1.495,0.115,2.218,0.144
43
+ c8.058,0.213,16.044-0.394,23.94-1.982c10.806-2.167,20.979-5.835,29.951-12.501c10.016-7.451,12.916-17.471,11.122-28.991
44
+ c-0.933,2.008-1.775,4.444-3.105,6.567c-4.858,7.755-12.273,12.377-20.42,15.901c-12.773,5.523-26.238,7.46-40.061,7.37
45
+ c-1.392-0.009-2.784,0-4.283,0C334.837,363.061,335.042,367.396,335.261,372.037z"/>
46
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M265.209,364.22c-17.811-0.034-30.785-2.078-43.09-7.433
47
+ c-7.759-3.372-14.835-7.763-19.685-14.964c-5.733-8.504-5.046-18.319,1.624-26.127c6.108-7.147,14.001-11.6,22.705-14.545
48
+ c22.647-7.674,45.396-7.63,68.048,0.009c8.188,2.758,15.745,6.817,21.59,13.385c9.352,10.503,8.678,22.772-1.619,32.4
49
+ c-7.75,7.245-17.173,11.243-27.238,13.938C278.764,363.229,269.813,364.246,265.209,364.22z"/>
50
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M342.029,276.56c-16.508-0.223-31.106-2.579-44.63-9.638
51
+ c-5.979-3.114-11.354-7.031-15.173-12.733c-5.747-8.565-5.149-18.247,1.517-26.127c6.21-7.344,14.348-11.734,23.236-14.812
52
+ c16.25-5.621,32.922-6.639,49.872-4.185c10.976,1.597,21.415,4.765,30.865,10.726c5.086,3.203,9.539,7.129,12.412,12.492
53
+ c4.332,8.103,3.158,16.937-2.922,24.066c-6.145,7.218-14.147,11.563-22.893,14.634
54
+ C363.374,274.819,352.425,276.523,342.029,276.56z"/>
55
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M322.635,344.465c0.155,5.88,1.2,11.859-1.414,17.516
56
+ c-2.847,6.175-7.585,10.583-13.184,14.162c-9.852,6.273-20.805,9.484-32.263,10.993c-16.472,2.159-32.721,1.125-48.498-4.4
57
+ c-8.816-3.077-16.95-7.361-23.111-14.669c-3.391-4.032-5.541-8.593-5.604-13.974c-0.044-3.364-0.008-6.729,0.13-10.154
58
+ c1.727,6.781,5.885,11.813,11.234,15.999c5.145,4.033,10.932,6.925,17.075,9.047c16.253,5.622,32.922,6.703,49.88,4.285
59
+ c11.056-1.58,21.576-4.738,31.08-10.753c5.782-3.668,10.726-8.184,13.465-14.671C321.89,346.74,322.233,345.589,322.635,344.465z"
60
+ />
61
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M198.549,367.88c2.967,10.313,10.427,16.311,19.216,20.97
62
+ c10.386,5.513,21.621,8.11,33.283,9.092c12.948,1.088,25.726,0.204,38.245-3.364c9.164-2.606,17.748-6.397,24.896-12.903
63
+ c3.862-3.507,6.844-7.602,8.213-12.724c0.059-0.223,0.17-0.438,0.366-0.929c2.396,13.955-2.592,24.538-14.8,32.115
64
+ c-9.864,6.121-20.697,9.405-32.087,10.895c-16.526,2.168-32.828,1.16-48.667-4.398c-8.816-3.088-16.932-7.389-23.084-14.688
65
+ c-3.391-4.023-5.514-8.61-5.577-13.974C198.517,374.606,198.549,371.242,198.549,367.88z"/>
66
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M198.549,392.195c2.967,10.314,10.427,16.311,19.216,20.97
67
+ c10.386,5.513,21.621,8.11,33.283,9.092c12.948,1.089,25.726,0.204,38.245-3.364c9.164-2.605,17.748-6.397,24.896-12.903
68
+ c3.862-3.506,6.844-7.602,8.213-12.724c0.059-0.223,0.17-0.437,0.366-0.929c2.396,13.956-2.592,24.539-14.8,32.115
69
+ c-9.864,6.121-20.697,9.405-32.087,10.895c-16.526,2.169-32.828,1.161-48.667-4.398c-8.816-3.088-16.932-7.389-23.084-14.688
70
+ c-3.391-4.024-5.514-8.61-5.577-13.974C198.517,398.923,198.549,395.559,198.549,392.195z"/>
71
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M402.626,256.438c-0.134,6.067,1.018,12.242-1.779,18.087
72
+ c-2.905,6.077-7.607,10.413-13.145,13.938c-9.614,6.121-20.305,9.253-31.477,10.842c-13.349,1.9-26.631,1.437-39.788-1.589
73
+ c-1.098-0.258-2.227-0.624-3.187-1.195c-5.871-3.508-12.072-6.264-18.657-8.129c-4.827-1.365-7.969-4.917-11.021-8.495
74
+ c-3.721-4.372-5.515-9.503-5.336-15.303c0.08-2.615,0.018-5.247,0.018-8.121c0.294,0.277,0.473,0.348,0.509,0.474
75
+ c2.249,8.2,7.906,13.635,14.786,17.989c9.512,6.022,20.077,9.119,31.115,10.689c15.07,2.15,30.008,1.428,44.687-2.784
76
+ c9.088-2.605,17.588-6.415,24.673-12.894C398.263,266.074,400.159,263.05,402.626,256.438z"/>
77
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M329.206,310.388c6.189,0,12.806,0.348,19.373-0.072
78
+ c13.894-0.875,27.18-4.087,39.118-11.609c5.792-3.658,10.722-8.183,13.466-14.66c0.486-1.151,0.848-2.356,1.325-3.703
79
+ c2.493,13.697-2.508,24.423-14.684,31.999c-9.735,6.067-20.407,9.467-31.682,10.823c-6.536,0.794-13.175,0.74-19.769,1.098
80
+ c-1.353,0.08-1.879-0.446-2.356-1.776C332.521,318.337,330.777,314.295,329.206,310.388z"/>
81
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M335.247,348.096c-0.205-4.612-0.405-9.012-0.624-13.812
82
+ c4.961,0,9.762,0.285,14.509-0.062c13.733-1,26.877-4.194,38.673-11.653c5.667-3.579,10.489-8.03,13.251-14.331
83
+ c0.535-1.223,0.915-2.517,1.687-3.774c0,3.213,0.072,6.425-0.018,9.646c-0.223,8.566-4.961,14.616-11.337,19.587
84
+ c-8.869,6.906-19.216,10.44-30.094,12.608c-7.7,1.534-15.481,2.142-23.329,1.963C337.095,348.248,336.22,348.159,335.247,348.096z
85
+ "/>
86
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M335.261,372.037c-0.219-4.641-0.424-8.977-0.638-13.492
87
+ c1.499,0,2.892-0.009,4.283,0c13.822,0.09,27.287-1.847,40.061-7.37c8.146-3.524,15.562-8.146,20.42-15.901
88
+ c1.33-2.123,2.173-4.56,3.105-6.567c1.794,11.521-1.106,21.54-11.122,28.991c-8.973,6.666-19.146,10.334-29.951,12.501
89
+ c-7.896,1.589-15.883,2.195-23.94,1.982C336.756,372.152,336.023,372.09,335.261,372.037z"/>
90
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#015093" d="M335.261,393.792c-0.219-4.64-0.424-8.977-0.638-13.492
91
+ c1.499,0,2.892-0.008,4.283,0c13.822,0.089,27.287-1.847,40.061-7.37c8.146-3.524,15.562-8.147,20.42-15.901
92
+ c1.33-2.124,2.173-4.56,3.105-6.567c1.794,11.52-1.106,21.54-11.122,28.991c-8.973,6.666-19.146,10.334-29.951,12.503
93
+ c-7.896,1.588-15.883,2.193-23.94,1.98C336.756,393.907,336.023,393.847,335.261,393.792z"/>
94
+ </g>
95
+ </g>
96
+ </svg>
data/test/helper.rb ADDED
@@ -0,0 +1,18 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ begin
4
+ Bundler.setup(:default, :development)
5
+ rescue Bundler::BundlerError => e
6
+ $stderr.puts e.message
7
+ $stderr.puts "Run `bundle install` to install missing gems"
8
+ exit e.status_code
9
+ end
10
+ require 'test/unit'
11
+ require 'shoulda'
12
+
13
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
14
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
15
+ require 'mastercoin-wallet'
16
+
17
+ class Test::Unit::TestCase
18
+ end
@@ -0,0 +1,7 @@
1
+ require 'helper'
2
+
3
+ class TestMastercoinWallet < Test::Unit::TestCase
4
+ should "probably rename this file and start testing for real" do
5
+ flunk "hey buddy, you should probably rename this file and start testing for real"
6
+ end
7
+ end
metadata ADDED
@@ -0,0 +1,191 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mastercoin-wallet
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Maran
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-09-29 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: qtbindings
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: httparty
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: active_support
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: bitcoin-ruby
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
69
+ version: 0.0.1
70
+ type: :runtime
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: 0.0.1
78
+ - !ruby/object:Gem::Dependency
79
+ name: mastercoin-ruby
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :runtime
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: bundler
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ~>
100
+ - !ruby/object:Gem::Version
101
+ version: '1.0'
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: '1.0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: jeweler
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ~>
116
+ - !ruby/object:Gem::Version
117
+ version: 1.8.7
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: 1.8.7
126
+ description: Mastercoin wallet using QT bindings to create a useful gui wallet
127
+ email: maran.hidskes@gmail.com
128
+ executables:
129
+ - mastercoin-wallet
130
+ extensions: []
131
+ extra_rdoc_files:
132
+ - LICENSE.txt
133
+ - README.rdoc
134
+ files:
135
+ - .document
136
+ - Gemfile
137
+ - Gemfile.lock
138
+ - LICENSE.txt
139
+ - Makefile
140
+ - README.rdoc
141
+ - Rakefile
142
+ - VERSION
143
+ - bin/mastercoin-wallet
144
+ - lib/.DS_Store
145
+ - lib/mastercoin-wallet.rb
146
+ - lib/mastercoin-wallet/config.rb
147
+ - lib/mastercoin-wallet/gui/first_run_window.rb
148
+ - lib/mastercoin-wallet/gui/first_run_window.ui
149
+ - lib/mastercoin-wallet/gui/images.rb
150
+ - lib/mastercoin-wallet/gui/main_window.rb
151
+ - lib/mastercoin-wallet/gui/simple_send_window.rb
152
+ - lib/mastercoin-wallet/gui/simple_send_window.ui
153
+ - lib/mastercoin-wallet/gui/ui_first_run.rb
154
+ - lib/mastercoin-wallet/gui/ui_simple_send.rb
155
+ - lib/mastercoin-wallet/models/address.rb
156
+ - lib/mastercoin-wallet/models/transaction.rb
157
+ - lib/mastercoin-wallet/network.rb
158
+ - mastercoin-wallet.gemspec
159
+ - resources/images.qrc
160
+ - resources/logo.svg
161
+ - test/helper.rb
162
+ - test/test_mastercoin-wallet.rb
163
+ homepage: http://github.com/maran/mastercoin-wallet
164
+ licenses:
165
+ - CCPL
166
+ post_install_message:
167
+ rdoc_options: []
168
+ require_paths:
169
+ - lib
170
+ required_ruby_version: !ruby/object:Gem::Requirement
171
+ none: false
172
+ requirements:
173
+ - - '>='
174
+ - !ruby/object:Gem::Version
175
+ version: '0'
176
+ segments:
177
+ - 0
178
+ hash: 4113660115839944267
179
+ required_rubygems_version: !ruby/object:Gem::Requirement
180
+ none: false
181
+ requirements:
182
+ - - '>='
183
+ - !ruby/object:Gem::Version
184
+ version: '0'
185
+ requirements: []
186
+ rubyforge_project:
187
+ rubygems_version: 1.8.25
188
+ signing_key:
189
+ specification_version: 3
190
+ summary: Wallet implementation for the Mastercoin protocol
191
+ test_files: []