stockery 0.4.0 → 0.4.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.
data/.gemtest ADDED
File without changes
data/README.md CHANGED
@@ -16,6 +16,7 @@ CLI Usage
16
16
  -q, --quotes 'comma separated' Required, no default
17
17
 
18
18
  -h, --help
19
+ -v, --version
19
20
 
20
21
  Example
21
22
  -------
data/Rakefile CHANGED
@@ -4,8 +4,8 @@ require 'rubygems'
4
4
  require 'bundler'
5
5
  require 'rake'
6
6
  require 'jeweler'
7
- require 'rdoc/task'
8
- require 'rcov/rcovtask'
7
+ # require 'rdoc/task'
8
+ # require 'rcov/rcovtask'
9
9
  require 'rake/testtask'
10
10
 
11
11
  begin
@@ -34,20 +34,20 @@ Rake::TestTask.new(:test) do |test|
34
34
  test.verbose = true
35
35
  end
36
36
 
37
- Rcov::RcovTask.new do |test|
38
- test.libs << 'test'
39
- test.pattern = 'test/**/test_*.rb'
40
- test.verbose = true
41
- test.rcov_opts << '--exclude "gems/*"'
42
- end
37
+ # Rcov::RcovTask.new do |test|
38
+ # test.libs << 'test'
39
+ # test.pattern = 'test/**/test_*.rb'
40
+ # test.verbose = true
41
+ # test.rcov_opts << '--exclude "gems/*"'
42
+ # end
43
+
44
+ # Rake::RDocTask.new do |rdoc|
45
+ # version = File.exist?('VERSION') ? File.read('VERSION') : ""
46
+ #
47
+ # rdoc.rdoc_dir = 'rdoc'
48
+ # rdoc.title = "Stockery #{version}"
49
+ # rdoc.rdoc_files.include('README*')
50
+ # rdoc.rdoc_files.include('lib/**/*.rb')
51
+ # end
43
52
 
44
53
  task :default => :test
45
-
46
- Rake::RDocTask.new do |rdoc|
47
- version = File.exist?('VERSION') ? File.read('VERSION') : ""
48
-
49
- rdoc.rdoc_dir = 'rdoc'
50
- rdoc.title = "Stockery #{version}"
51
- rdoc.rdoc_files.include('README*')
52
- rdoc.rdoc_files.include('lib/**/*.rb')
53
- end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.0
1
+ 0.4.1
@@ -24,7 +24,7 @@ module Stockery
24
24
  def print(stockery_data)
25
25
  printed = ""
26
26
 
27
- unless stockery_data.empty?
27
+ unless stockery_data.nil? || stockery_data.empty?
28
28
  printed += "#{stockery_data[:name]} on #{stockery_data[:market]} @ #{stockery_data[:timestamp]}\n"
29
29
  # printed += " *** MARKET CLOSED ***\n" if Time.now.strftime("%H:%M") > "16:00"
30
30
 
@@ -2,6 +2,8 @@ require 'optparse'
2
2
 
3
3
  module Stockery
4
4
  class Runner
5
+ attr_accessor :options
6
+
5
7
  def initialize(argv)
6
8
  @argv = argv
7
9
 
@@ -40,7 +42,7 @@ module Stockery
40
42
  puts "\n"
41
43
  end
42
44
  when 'json'
43
- p JSON.generate(quotes_res)
45
+ puts JSON.generate(quotes_res)
44
46
  end
45
47
  end
46
48
 
data/stockery.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "stockery"
8
- s.version = "0.4.0"
8
+ s.version = "0.4.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Pieter Michels"]
12
- s.date = "2011-09-23"
12
+ s.date = "2011-09-25"
13
13
  s.description = "Fetch stock quotes. Build as a gem and command line tool."
14
14
  s.email = "pieter@noort.be"
15
15
  s.executables = ["stockery"]
@@ -18,6 +18,7 @@ Gem::Specification.new do |s|
18
18
  "README.md"
19
19
  ]
20
20
  s.files = [
21
+ ".gemtest",
21
22
  "Gemfile",
22
23
  "LICENSE.txt",
23
24
  "README.md",
@@ -29,7 +30,8 @@ Gem::Specification.new do |s|
29
30
  "lib/stockery/runner.rb",
30
31
  "stockery.gemspec",
31
32
  "test/helper.rb",
32
- "test/test_stockery.rb"
33
+ "test/test_quote.rb",
34
+ "test/test_runner.rb"
33
35
  ]
34
36
  s.homepage = "http://wellconsidered.be/post/10526511041/stockery-stock-quotes-rubygem"
35
37
  s.licenses = ["MIT"]
data/test/helper.rb CHANGED
@@ -16,3 +16,13 @@ require 'stockery'
16
16
 
17
17
  class Test::Unit::TestCase
18
18
  end
19
+
20
+ def silence_stream(stream)
21
+ old_stream = stream.dup
22
+ stream.reopen(RUBY_PLATFORM =~ /mswin/ ? 'NUL:' : '/dev/null')
23
+ stream.sync = true
24
+
25
+ yield
26
+ ensure
27
+ stream.reopen(old_stream)
28
+ end
@@ -0,0 +1,40 @@
1
+ require 'helper'
2
+
3
+ class TestStockeryQuote < Test::Unit::TestCase
4
+ context "A Stockery::Quote instance" do
5
+ setup do
6
+ @stock = Stockery::Quote.new
7
+ end
8
+
9
+ should "have GOOGLE as default source" do
10
+ assert_equal @stock.source, "GOOGLE"
11
+ end
12
+
13
+ should "be able to switch sources" do
14
+ @stock.source = Stockery::YAHOO
15
+ assert_equal @stock.source, Stockery::YAHOO
16
+ end
17
+
18
+ should "return not nil when requesting a valid symbol" do
19
+ result = @stock.get_status("AAPL")
20
+ assert_not_nil result
21
+ end
22
+
23
+ should "print out an 'error message' when sending an invalid stock data object" do
24
+ message = @stock.print(nil)
25
+ assert_equal message, "Stock data invalid or empty"
26
+ end
27
+
28
+ should "print out a quote message when sending stock data object" do
29
+ result = @stock.get_status("AAPL")
30
+ message = @stock.print(result)
31
+ assert message.length > 0
32
+ end
33
+
34
+ should "not print out an 'error message' when sending an valid stock data object" do
35
+ result = @stock.get_status("AAPL")
36
+ message = @stock.print(result)
37
+ assert_not_equal message, "Stock data invalid or empty"
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,47 @@
1
+ require 'helper'
2
+ require 'json'
3
+
4
+ class TestStockeryRunner < Test::Unit::TestCase
5
+ context "A Stockery::Runner instance" do
6
+ setup do
7
+
8
+ end
9
+
10
+ should "parse its options" do
11
+ runner = Stockery::Runner.new(%w(-q AAPL -s YAHOO -o print))
12
+
13
+ assert_equal runner.options[:source], "YAHOO"
14
+ assert_equal runner.options[:quotes], "AAPL"
15
+ assert_equal runner.options[:output], "print"
16
+ end
17
+
18
+ # should "print the result as a json string by default" do
19
+ # out = silence_stream(STDOUT) do
20
+ # runner = Stockery::Runner.new(%w(-q AAPL))
21
+ # runner.run!
22
+ # end
23
+
24
+ # puts out.to_s
25
+ # json = JSON.parse(out.to_s)
26
+ # # assert_match out.to_s, "/Quotes at/"
27
+ # end
28
+
29
+ # should "print the result when passing print output argument" do
30
+ # out = silence_stream(STDOUT) do
31
+ # runner = Stockery::Runner.new(%w(-q AAPL -o print))
32
+ # runner.run!
33
+ # end
34
+
35
+ # assert_match out.to_s, "/Quotes at/"
36
+ # end
37
+
38
+ # should "print its version" do
39
+ # out = silence_stream(STDOUT) do
40
+ # runner = Stockery::Runner.new(%w(-v))
41
+ # runner.run!
42
+ # end
43
+
44
+ # assert_equal out.to_s, Stockery::VERSION
45
+ # end
46
+ end
47
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stockery
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
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: 2011-09-23 00:00:00.000000000Z
12
+ date: 2011-09-25 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
16
- requirement: &2166331580 !ruby/object:Gem::Requirement
16
+ requirement: &2162930560 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2166331580
24
+ version_requirements: *2162930560
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: shoulda
27
- requirement: &2166330980 !ruby/object:Gem::Requirement
27
+ requirement: &2162929560 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *2166330980
35
+ version_requirements: *2162929560
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &2166330240 !ruby/object:Gem::Requirement
38
+ requirement: &2162928800 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.0.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *2166330240
46
+ version_requirements: *2162928800
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &2166329520 !ruby/object:Gem::Requirement
49
+ requirement: &2162927900 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.6.4
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *2166329520
57
+ version_requirements: *2162927900
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rcov
60
- requirement: &2166328920 !ruby/object:Gem::Requirement
60
+ requirement: &2162926940 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *2166328920
68
+ version_requirements: *2162926940
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: thoughtbot-shoulda
71
- requirement: &2166328440 !ruby/object:Gem::Requirement
71
+ requirement: &2162925960 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,7 +76,7 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *2166328440
79
+ version_requirements: *2162925960
80
80
  description: Fetch stock quotes. Build as a gem and command line tool.
81
81
  email: pieter@noort.be
82
82
  executables:
@@ -86,6 +86,7 @@ extra_rdoc_files:
86
86
  - LICENSE.txt
87
87
  - README.md
88
88
  files:
89
+ - .gemtest
89
90
  - Gemfile
90
91
  - LICENSE.txt
91
92
  - README.md
@@ -97,7 +98,8 @@ files:
97
98
  - lib/stockery/runner.rb
98
99
  - stockery.gemspec
99
100
  - test/helper.rb
100
- - test/test_stockery.rb
101
+ - test/test_quote.rb
102
+ - test/test_runner.rb
101
103
  homepage: http://wellconsidered.be/post/10526511041/stockery-stock-quotes-rubygem
102
104
  licenses:
103
105
  - MIT
@@ -113,7 +115,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
113
115
  version: '0'
114
116
  segments:
115
117
  - 0
116
- hash: -3896205245751848673
118
+ hash: 3780466078473534277
117
119
  required_rubygems_version: !ruby/object:Gem::Requirement
118
120
  none: false
119
121
  requirements:
@@ -1,7 +0,0 @@
1
- require 'helper'
2
-
3
- class TestStocky < 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