ticker_fetcher 0.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.
data/.document ADDED
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
data/.gitignore ADDED
@@ -0,0 +1,21 @@
1
+ ## MAC OS
2
+ .DS_Store
3
+
4
+ ## TEXTMATE
5
+ *.tmproj
6
+ tmtags
7
+
8
+ ## EMACS
9
+ *~
10
+ \#*
11
+ .\#*
12
+
13
+ ## VIM
14
+ *.swp
15
+
16
+ ## PROJECT::GENERAL
17
+ coverage
18
+ rdoc
19
+ pkg
20
+
21
+ ## PROJECT::SPECIFIC
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2009 Matt White
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.rdoc ADDED
@@ -0,0 +1,17 @@
1
+ = ticker_fetcher
2
+
3
+ Description goes here.
4
+
5
+ == Note on Patches/Pull Requests
6
+
7
+ * Fork the project.
8
+ * Make your feature addition or bug fix.
9
+ * Add tests for it. This is important so I don't break it in a
10
+ future version unintentionally.
11
+ * Commit, do not mess with rakefile, version, or history.
12
+ (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
13
+ * Send me a pull request. Bonus points for topic branches.
14
+
15
+ == Copyright
16
+
17
+ Copyright (c) 2010 Matt White. See LICENSE for details.
data/Rakefile ADDED
@@ -0,0 +1,54 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ begin
5
+ require 'jeweler'
6
+ Jeweler::Tasks.new do |gem|
7
+ gem.name = "ticker_fetcher"
8
+ gem.summary = %Q{Fetches all tickers for NYSE, NASDAQ, and AMEX exchanges.}
9
+ gem.description = %Q{Retrieves tickers, names, and SEC descriptions for all securities listed on the 3 major US exchanges (NYSE, NASDAQ, AMEX).}
10
+ gem.email = "mattw922@gmail.com"
11
+ gem.homepage = "http://github.com/whitethunder/ticker_fetcher"
12
+ gem.authors = ["Matt White"]
13
+ gem.add_development_dependency "fastercsv", ">= 1.5.0"
14
+ gem.add_development_dependency "flexmock", ">= 0.8.2"
15
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
16
+ end
17
+ Jeweler::GemcutterTasks.new
18
+ rescue LoadError
19
+ puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
20
+ end
21
+
22
+ require 'rake/testtask'
23
+ Rake::TestTask.new(:test) do |test|
24
+ test.libs << 'lib' << 'test'
25
+ test.pattern = 'test/**/test_*.rb'
26
+ test.verbose = true
27
+ end
28
+
29
+ begin
30
+ require 'rcov/rcovtask'
31
+ Rcov::RcovTask.new do |test|
32
+ test.libs << 'test'
33
+ test.pattern = 'test/**/test_*.rb'
34
+ test.verbose = true
35
+ end
36
+ rescue LoadError
37
+ task :rcov do
38
+ abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
39
+ end
40
+ end
41
+
42
+ task :test => :check_dependencies
43
+
44
+ task :default => :test
45
+
46
+ require 'rake/rdoctask'
47
+ Rake::RDocTask.new do |rdoc|
48
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
49
+
50
+ rdoc.rdoc_dir = 'rdoc'
51
+ rdoc.title = "ticker_fetcher #{version}"
52
+ rdoc.rdoc_files.include('README*')
53
+ rdoc.rdoc_files.include('lib/**/*.rb')
54
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.0
@@ -0,0 +1,44 @@
1
+ require 'rubygems'
2
+ require 'open-uri'
3
+ require 'fastercsv'
4
+
5
+ class TickerFetcher
6
+ attr_accessor :exchanges
7
+
8
+ # Passing 1 or more exchange names will retrieve only those exchanges. Default
9
+ # is to retrieve all.
10
+ def initialize
11
+ @exchanges = {}
12
+ @exchange_urls = {
13
+ 'NASD' => 'http://www.nasdaq.com/asp/symbols.asp?exchange=Q&start=0',
14
+ 'AMEX' => 'http://www.nasdaq.com/asp/symbols.asp?exchange=1&start=0',
15
+ 'NYSE' => 'http://www.nasdaq.com/asp/symbols.asp?exchange=N&start=0'
16
+ }
17
+ end
18
+
19
+ def retrieve(*exchanges_to_get)
20
+ @exchange_urls.delete_if { |k,v| !exchanges_to_get.flatten.include?(k.upcase) } unless exchanges_to_get.empty?
21
+ @exchange_urls.each { |exchange, url| @exchanges[exchange] = parse_exchange(exchange, url) }
22
+ end
23
+
24
+ def parse_exchange(exchange, url)
25
+ data = open(url)
26
+ parse_csv(data)
27
+ end
28
+
29
+ private
30
+
31
+ def parse_csv(data)
32
+ tickers = []
33
+ FasterCSV.parse(data) { |row|
34
+ name = row[0]
35
+ ticker = row[1].strip.gsub('"', '')
36
+ unless(ticker.nil? || ticker.empty? || ticker == 'Symbol')
37
+ ticker = ticker.gsub('/', '.').gsub('^', '-') if ticker =~ /\W/
38
+ description = row[5].strip
39
+ tickers << [ticker, name, description]
40
+ end
41
+ }
42
+ tickers
43
+ end
44
+ end
@@ -0,0 +1,41 @@
1
+ "Some Exchange Securities as of 12/31/2010","","",""
2
+ "Name","Symbol","Security Type","Shares Outstanding","Market Value (millions)","Description (as filed with the SEC)"
3
+ "StupidCompany, Inc.","SC","Common Stock","26,656,000","$75.7","For more than 30 years, StupidCompany, Inc. - ""Your Premier Provider of All Things Stupid"" -
4
+ has been providing customers around the world with the stupidest crap you can imagine.
5
+
6
+ Customers can ""call, click, or come in"" to shop for stupid crap."
7
+ "AwesomeCompany, Inc.","AC^B","Common Stock","26,656,000","$75.7","For more than 40 years, AwesomeCompany, Inc. - ""Your Premier Provider of All Things Awesome"" -
8
+ has been providing customers around the world with the awesomest awesome you can imagine.
9
+
10
+ Customers can ""call, click, or come in"" to shop for awesome."
11
+ "Company, Inc.","C-A","Common Stock","26,656,000","$75.7","For more than 50 years, Company, Inc. - ""Your Premier Provider of All Things"" -
12
+ has been providing customers around the world with evarything.
13
+
14
+ Customers can ""call, click, or come in"" to shop."
15
+ "Zygo Corporation","ZIGO","Common Stock","17,411,000","$162.8","Zygo Corporation (<93>ZYGO,<92><92> <93>we,<92><92> <93>us,<92><92> <93>our,<92><92> or <93>Company<92><92>) designs,
16
+ develops, and manufactures ultra-high precision measurement solutions to improve
17
+ our customers<92> manufacturing yields, and top-tier optical sub-systems and
18
+ components for original equipment manufacturers (<93>OEM<94>) and end-user
19
+ applications. We operate with two divisions. Our Metrology Solutions Division
20
+ (also referred to herein as the <93>Metrology segment<94>) manufactures products to
21
+ improve quality, increase productivity, and decrease the overall cost of product
22
+ development and manufacturing for high-technology companies, particularly in
23
+ their semiconductor manufacturing processes. Our Optical Systems Division (also
24
+ referred to herein as the <93>Optics segment<94>) provides leading-edge product
25
+ development and manufacturing services that leverage a variety of core
26
+ technologies across medical, defense, semiconductor, laser fusion research,
27
+ biomedical, and other industrial markets.&nbsp;&nbsp;... More...""http://secfilings.nasdaq.com/edgar_conv_html%2f2007%2f09%2f20%2f0000930413-07-007562.html#FIS_BUSINESS"" &nbsp;&nbsp;"
28
+ "ZymoGenetics, Inc.","ZGEN","Common Stock","85,473,000","$555.6","This Annual Report on Form 10-K contains, in addition to historical information,
29
+ forward-looking statements within the meaning of the Private Securities
30
+ Litigation Reform Act of 1995 that involve risks and uncertainties. This Act
31
+ provides a <93>safe harbor<94> for forward-looking statements to encourage companies
32
+ to provide prospective information about themselves. All statements other than
33
+ statements of historical fact, including statements regarding company and
34
+ industry prospects and future results of operations, financial position and cash
35
+ flows, made in this Annual Report on Form 10-K are forward-looking. We use words
36
+ such as <93>anticipate,<94> <93>believe,<94> <93>continue,<94> <93>could,<94> <93>estimate,<94> <93>expect,<94>
37
+ <93>future,<94> <93>intend,<94> <93>may,<94> <93>potential,<94> <93>seek,<94> <93>should,<94> <93>target<94> and similar
38
+ expressions, including negatives, to identify forward-looking statements.
39
+ Forward-looking statements reflect management<92>s current expectations, plans or
40
+ projections and are inherently uncertain.&nbsp;&nbsp;... More...""http://secfilings.nasdaq.com/edgar_conv_html%2f2008%2f02%2f29%2f0001193125-08-043300.html#FIS_BUSINESS"" &nbsp;&nbsp;"
41
+ "© Copyright 2010, The NASDAQ Stock Market, Inc. All Rights Reserved.","","",""
data/test/helper.rb ADDED
@@ -0,0 +1,10 @@
1
+ require 'rubygems'
2
+ require 'test/unit'
3
+ require 'flexmock/test_unit'
4
+
5
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
6
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
7
+ require 'ticker_fetcher'
8
+
9
+ class Test::Unit::TestCase
10
+ end
@@ -0,0 +1,41 @@
1
+ "Some Exchange Securities as of 12/31/2010","","",""
2
+ "Name","Symbol","Security Type","Shares Outstanding","Market Value (millions)","Description (as filed with the SEC)"
3
+ "StupidCompany, Inc.","SC","Common Stock","26,656,000","$75.7","For more than 30 years, StupidCompany, Inc. - ""Your Premier Provider of All Things Stupid"" -
4
+ has been providing customers around the world with the stupidest crap you can imagine.
5
+
6
+ Customers can ""call, click, or come in"" to shop for stupid crap."
7
+ "AwesomeCompany, Inc.","AC^B","Common Stock","26,656,000","$75.7","For more than 40 years, AwesomeCompany, Inc. - ""Your Premier Provider of All Things Awesome"" -
8
+ has been providing customers around the world with the awesomest awesome you can imagine.
9
+
10
+ Customers can ""call, click, or come in"" to shop for awesome."
11
+ "Company, Inc.","C-A","Common Stock","26,656,000","$75.7","For more than 50 years, Company, Inc. - ""Your Premier Provider of All Things"" -
12
+ has been providing customers around the world with evarything.
13
+
14
+ Customers can ""call, click, or come in"" to shop."
15
+ "Zygo Corporation","ZIGO","Common Stock","17,411,000","$162.8","Zygo Corporation (<93>ZYGO,<92><92> <93>we,<92><92> <93>us,<92><92> <93>our,<92><92> or <93>Company<92><92>) designs,
16
+ develops, and manufactures ultra-high precision measurement solutions to improve
17
+ our customers<92> manufacturing yields, and top-tier optical sub-systems and
18
+ components for original equipment manufacturers (<93>OEM<94>) and end-user
19
+ applications. We operate with two divisions. Our Metrology Solutions Division
20
+ (also referred to herein as the <93>Metrology segment<94>) manufactures products to
21
+ improve quality, increase productivity, and decrease the overall cost of product
22
+ development and manufacturing for high-technology companies, particularly in
23
+ their semiconductor manufacturing processes. Our Optical Systems Division (also
24
+ referred to herein as the <93>Optics segment<94>) provides leading-edge product
25
+ development and manufacturing services that leverage a variety of core
26
+ technologies across medical, defense, semiconductor, laser fusion research,
27
+ biomedical, and other industrial markets.&nbsp;&nbsp;... More...""http://secfilings.nasdaq.com/edgar_conv_html%2f2007%2f09%2f20%2f0000930413-07-007562.html#FIS_BUSINESS"" &nbsp;&nbsp;"
28
+ "ZymoGenetics, Inc.","ZGEN","Common Stock","85,473,000","$555.6","This Annual Report on Form 10-K contains, in addition to historical information,
29
+ forward-looking statements within the meaning of the Private Securities
30
+ Litigation Reform Act of 1995 that involve risks and uncertainties. This Act
31
+ provides a <93>safe harbor<94> for forward-looking statements to encourage companies
32
+ to provide prospective information about themselves. All statements other than
33
+ statements of historical fact, including statements regarding company and
34
+ industry prospects and future results of operations, financial position and cash
35
+ flows, made in this Annual Report on Form 10-K are forward-looking. We use words
36
+ such as <93>anticipate,<94> <93>believe,<94> <93>continue,<94> <93>could,<94> <93>estimate,<94> <93>expect,<94>
37
+ <93>future,<94> <93>intend,<94> <93>may,<94> <93>potential,<94> <93>seek,<94> <93>should,<94> <93>target<94> and similar
38
+ expressions, including negatives, to identify forward-looking statements.
39
+ Forward-looking statements reflect management<92>s current expectations, plans or
40
+ projections and are inherently uncertain.&nbsp;&nbsp;... More...""http://secfilings.nasdaq.com/edgar_conv_html%2f2008%2f02%2f29%2f0001193125-08-043300.html#FIS_BUSINESS"" &nbsp;&nbsp;"
41
+ "© Copyright 2010, The NASDAQ Stock Market, Inc. All Rights Reserved.","","",""
@@ -0,0 +1,41 @@
1
+ "Some Exchange Securities as of 12/31/2010","","",""
2
+ "Name","Symbol","Security Type","Shares Outstanding","Market Value (millions)","Description (as filed with the SEC)"
3
+ "StupidCompany, Inc.","SC","Common Stock","26,656,000","$75.7","For more than 30 years, StupidCompany, Inc. - ""Your Premier Provider of All Things Stupid"" -
4
+ has been providing customers around the world with the stupidest crap you can imagine.
5
+
6
+ Customers can ""call, click, or come in"" to shop for stupid crap."
7
+ "AwesomeCompany, Inc.","AC^B","Common Stock","26,656,000","$75.7","For more than 40 years, AwesomeCompany, Inc. - ""Your Premier Provider of All Things Awesome"" -
8
+ has been providing customers around the world with the awesomest awesome you can imagine.
9
+
10
+ Customers can ""call, click, or come in"" to shop for awesome."
11
+ "Company, Inc.","C/A","Common Stock","26,656,000","$75.7","For more than 50 years, Company, Inc. - ""Your Premier Provider of All Things"" -
12
+ has been providing customers around the world with evarything.
13
+
14
+ Customers can ""call, click, or come in"" to shop."
15
+ "Zygo Corporation","ZIGO","Common Stock","17,411,000","$162.8","Zygo Corporation (<93>ZYGO,<92><92> <93>we,<92><92> <93>us,<92><92> <93>our,<92><92> or <93>Company<92><92>) designs,
16
+ develops, and manufactures ultra-high precision measurement solutions to improve
17
+ our customers<92> manufacturing yields, and top-tier optical sub-systems and
18
+ components for original equipment manufacturers (<93>OEM<94>) and end-user
19
+ applications. We operate with two divisions. Our Metrology Solutions Division
20
+ (also referred to herein as the <93>Metrology segment<94>) manufactures products to
21
+ improve quality, increase productivity, and decrease the overall cost of product
22
+ development and manufacturing for high-technology companies, particularly in
23
+ their semiconductor manufacturing processes. Our Optical Systems Division (also
24
+ referred to herein as the <93>Optics segment<94>) provides leading-edge product
25
+ development and manufacturing services that leverage a variety of core
26
+ technologies across medical, defense, semiconductor, laser fusion research,
27
+ biomedical, and other industrial markets.&nbsp;&nbsp;... More...""http://secfilings.nasdaq.com/edgar_conv_html%2f2007%2f09%2f20%2f0000930413-07-007562.html#FIS_BUSINESS"" &nbsp;&nbsp;"
28
+ "ZymoGenetics, Inc.","ZGEN","Common Stock","85,473,000","$555.6","This Annual Report on Form 10-K contains, in addition to historical information,
29
+ forward-looking statements within the meaning of the Private Securities
30
+ Litigation Reform Act of 1995 that involve risks and uncertainties. This Act
31
+ provides a <93>safe harbor<94> for forward-looking statements to encourage companies
32
+ to provide prospective information about themselves. All statements other than
33
+ statements of historical fact, including statements regarding company and
34
+ industry prospects and future results of operations, financial position and cash
35
+ flows, made in this Annual Report on Form 10-K are forward-looking. We use words
36
+ such as <93>anticipate,<94> <93>believe,<94> <93>continue,<94> <93>could,<94> <93>estimate,<94> <93>expect,<94>
37
+ <93>future,<94> <93>intend,<94> <93>may,<94> <93>potential,<94> <93>seek,<94> <93>should,<94> <93>target<94> and similar
38
+ expressions, including negatives, to identify forward-looking statements.
39
+ Forward-looking statements reflect management<92>s current expectations, plans or
40
+ projections and are inherently uncertain.&nbsp;&nbsp;... More...""http://secfilings.nasdaq.com/edgar_conv_html%2f2008%2f02%2f29%2f0001193125-08-043300.html#FIS_BUSINESS"" &nbsp;&nbsp;"
41
+ "© Copyright 2010, The NASDAQ Stock Market, Inc. All Rights Reserved.","","",""
@@ -0,0 +1,38 @@
1
+ require 'helper'
2
+
3
+ class TestTickerFetcher < Test::Unit::TestCase
4
+ def setup
5
+ @t = TickerFetcher.new
6
+ @t_mock = flexmock(@t)
7
+ @t_mock.should_receive(:parse_exchange).with('NYSE', 'http://www.nasdaq.com/asp/symbols.asp?exchange=N&start=0').and_return(@t_mock.send(:parse_csv, File.open("test/nyse_test_data.csv").read))
8
+ @t_mock.should_receive(:parse_exchange).with('NASD', 'http://www.nasdaq.com/asp/symbols.asp?exchange=Q&start=0').and_return(@t_mock.send(:parse_csv, File.open("test/nasd_test_data.csv").read))
9
+ @t_mock.should_receive(:parse_exchange).with('AMEX', 'http://www.nasdaq.com/asp/symbols.asp?exchange=1&start=0').and_return(@t_mock.send(:parse_csv, File.open("test/amex_test_data.csv").read))
10
+ # @t_mock.should_receive(:retrieve).with_no_args.and_return({'NYSE' => File.open("test/nyse_test_data.csv").read, 'NASD' => File.open("test/nasd_test_data.csv").read, 'AMEX' => File.open("test/amex_test_data.csv").read})
11
+ # @t_mock.should_receive(:retrieve).with('NYSE').and_return({'NYSE' => File.open("test/nyse_test_data.csv").read})
12
+ # @t_mock.should_receive(:retrieve).with('NYSE', 'NASD').and_return({'NYSE' => File.open("test/nyse_test_data.csv").read, 'NASD' => File.open("test/nasd_test_data.csv").read})
13
+ end
14
+
15
+ def test_retrieve_with_one_exchange_returns_a_ticker_fetcher_with_the_correct_data
16
+ @t_mock.retrieve('NYSE')
17
+ assert_not_nil(@t_mock.exchanges['NYSE'])
18
+ assert_nil(@t_mock.exchanges['NASD'])
19
+ assert_nil(@t_mock.exchanges['AMEX'])
20
+ assert_equal('SC', @t_mock.exchanges['NYSE'][0][0])
21
+ assert_equal('AC-B', @t_mock.exchanges['NYSE'][1][0])
22
+ assert_equal('C.A', @t_mock.exchanges['NYSE'][2][0])
23
+ end
24
+
25
+ def test_retrieve_with_two_exchanges_returns_a_ticker_fetcher_with_the_correct_data
26
+ @t_mock.retrieve('NYSE', 'NASD')
27
+ assert_not_nil(@t_mock.exchanges['NYSE'])
28
+ assert_not_nil(@t_mock.exchanges['NASD'])
29
+ assert_nil(@t_mock.exchanges['AMEX'])
30
+ end
31
+
32
+ def test_retrieve_with_all_exchanges_returns_a_ticker_fetcher_with_the_correct_data
33
+ @t_mock.retrieve
34
+ assert_not_nil(@t_mock.exchanges['NYSE'])
35
+ assert_not_nil(@t_mock.exchanges['NASD'])
36
+ assert_not_nil(@t_mock.exchanges['AMEX'])
37
+ end
38
+ end
metadata ADDED
@@ -0,0 +1,102 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ticker_fetcher
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 1
8
+ - 0
9
+ version: 0.1.0
10
+ platform: ruby
11
+ authors:
12
+ - Matt White
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-04-13 00:00:00 -06:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: fastercsv
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ segments:
28
+ - 1
29
+ - 5
30
+ - 0
31
+ version: 1.5.0
32
+ type: :development
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: flexmock
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ segments:
42
+ - 0
43
+ - 8
44
+ - 2
45
+ version: 0.8.2
46
+ type: :development
47
+ version_requirements: *id002
48
+ description: Retrieves tickers, names, and SEC descriptions for all securities listed on the 3 major US exchanges (NYSE, NASDAQ, AMEX).
49
+ email: mattw922@gmail.com
50
+ executables: []
51
+
52
+ extensions: []
53
+
54
+ extra_rdoc_files:
55
+ - LICENSE
56
+ - README.rdoc
57
+ files:
58
+ - .document
59
+ - .gitignore
60
+ - LICENSE
61
+ - README.rdoc
62
+ - Rakefile
63
+ - VERSION
64
+ - lib/ticker_fetcher.rb
65
+ - test/amex_test_data.csv
66
+ - test/helper.rb
67
+ - test/nasd_test_data.csv
68
+ - test/nyse_test_data.csv
69
+ - test/test_ticker_fetcher.rb
70
+ has_rdoc: true
71
+ homepage: http://github.com/whitethunder/ticker_fetcher
72
+ licenses: []
73
+
74
+ post_install_message:
75
+ rdoc_options:
76
+ - --charset=UTF-8
77
+ require_paths:
78
+ - lib
79
+ required_ruby_version: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ segments:
84
+ - 0
85
+ version: "0"
86
+ required_rubygems_version: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ segments:
91
+ - 0
92
+ version: "0"
93
+ requirements: []
94
+
95
+ rubyforge_project:
96
+ rubygems_version: 1.3.6
97
+ signing_key:
98
+ specification_version: 3
99
+ summary: Fetches all tickers for NYSE, NASDAQ, and AMEX exchanges.
100
+ test_files:
101
+ - test/test_ticker_fetcher.rb
102
+ - test/helper.rb