quandl_data 1.1.4 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 958d50ad8ae3e144a7f548f1aeff3c84b4c72ed7
4
- data.tar.gz: 31971a6c8c2e5210ab4d38fd6b814bfa35873ca2
3
+ metadata.gz: 531239319943ec14302a42ec95e37051f12245b1
4
+ data.tar.gz: c39862a0af85567a8ebf362d72e788ad4985ef7b
5
5
  SHA512:
6
- metadata.gz: d6f754ea7490cfc6e3b87f76cd4856013dd5fd949091fc0b01c31df2f7b6d867187946b477a88ad1432416ff8b4ef5f0ae59caa4b009b04454631ca02104ec03
7
- data.tar.gz: 14dbbdee2823d8bd95eeb8eac7351e8925acfa3d166cc3f102cf943dbe9191079c61a8ac74c52719359dc5c0a58b4e5fd7d552d3bf9e550c62c1552db82d7c34
6
+ metadata.gz: 9a15374a806251b64c00a543bffc1fbcc4c097f6e2276a547c04f628e0f02bd223a89507a16d5c191f454b53c240fec1fff79bc9e8f68967b14ef98013aa7675
7
+ data.tar.gz: 6607ba39d562621fa5df10156142724669bfa72574260eb2bbf038ebd5db448764b3045300f07cf47618605c79c18cd1f8bd24dee94a0b67aaee48bdd7706b1e
data/.gitignore CHANGED
@@ -3,4 +3,5 @@
3
3
  /tmp
4
4
  *.gem
5
5
  *.log
6
- coverage/*
6
+ coverage/*
7
+ .rvmrc
data/Gemfile CHANGED
@@ -1,2 +1,9 @@
1
1
  source "https://rubygems.org"
2
2
  gemspec
3
+
4
+ use_local_gems = ENV['BUNDLE_LOCAL_GEMS'] == "true" && ENV['BUNDLE_LOCAL_DIR']
5
+ local_gem_dir = ENV['BUNDLE_LOCAL_DIR']
6
+
7
+ if use_local_gems
8
+ gem 'quandl_operation', path: "#{local_gem_dir}/quandl/operation"
9
+ end
data/UPGRADE.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## 1.2.0
2
+
3
+ * bump quandl_operation, data now defaults to return Dates instead of Julian Dates
4
+
5
+
1
6
  ## 1.1.4
2
7
 
3
8
  * force incoming data to_a if it is kind_of Quandl::Data
@@ -42,4 +42,12 @@ module Quandl::Data::Enumerator
42
42
  end
43
43
  end
44
44
 
45
+ protected
46
+
47
+ def parse(data)
48
+ data = data.to_a if data.respond_to?(:to_a) && data.is_a?(Quandl::Data)
49
+ data = Quandl::Operation::Parse.perform( data )
50
+ data
51
+ end
52
+
45
53
  end
@@ -10,10 +10,8 @@ module Quandl::Data::Operations
10
10
  end
11
11
 
12
12
  def operations
13
- [
14
- :to_csv, :to_jd, :to_date, :sort_order, :sort_ascending,
15
- :sort_descending, :transform, :collapse, :frequency, :parse
16
- ]
13
+ [ :to_csv, :to_jd, :to_date, :sort_order, :sort_ascending,
14
+ :sort_descending, :transform, :collapse, :frequency, :parse ]
17
15
  end
18
16
 
19
17
  end
@@ -32,64 +30,38 @@ module Quandl::Data::Operations
32
30
  return ''
33
31
  end
34
32
 
35
- def to_jd
36
- Quandl::Data.new( Parse.date_to_julian( data_array ), frequency: frequency )
37
- end
38
33
  def to_jd!
39
- @data_array = Parse.date_to_julian( data_array )
40
- self
34
+ @data_array = Parse.to_jd( data_array ); self
41
35
  end
42
-
36
+
43
37
  def to_date!
44
- @data_array = to_date.data_array
45
- self
46
- end
47
- def to_date
48
- Quandl::Data.new( Parse.julian_to_date( data_array ) )
38
+ @data_array = Parse.to_date( data_array ); self
49
39
  end
50
40
 
51
- def trim_start!(trim_date)
52
- @data_array = trim_start(trim_date).data_array
53
- self
54
- end
55
- def trim_start(trim_date)
41
+ def trim_start!(date)
56
42
  # date format
57
- trim_date = Date.parse(trim_date) if trim_date.is_a?(String)
58
- trim_date = trim_date.jd if trim_date.respond_to?(:jd)
59
- # find index
60
- return self unless trim_date.is_a?(Integer)
43
+ date = Quandl::Operation::QDate.parse(date)
61
44
  # reject rows with dates less than
62
- data = sort_descending.delete_if do |row|
45
+ @data_array = to_date!.sort_descending!.delete_if do |row|
63
46
  row_date = row[0]
64
- row_date < trim_date
47
+ row_date < date
65
48
  end
66
- Quandl::Data.new(data)
67
- end
68
-
69
- def trim_end!(trim_date)
70
- @data_array = trim_end(trim_date).data_array
71
49
  self
72
50
  end
73
- def trim_end(trim_date)
51
+
52
+ def trim_end!(date)
74
53
  # date format
75
- trim_date = Date.parse(trim_date) if trim_date.is_a?(String)
76
- trim_date = trim_date.jd if trim_date.respond_to?(:jd)
77
- # find index
78
- return self unless trim_date.is_a?(Integer)
54
+ date = Quandl::Operation::QDate.parse(date)
79
55
  # reject rows with dates less than
80
- data = sort_descending.delete_if do |row|
56
+ @data_array = to_date!.sort_descending!.delete_if do |row|
81
57
  row_date = row[0]
82
- row_date > trim_date
58
+ row_date > date
83
59
  end
84
- Quandl::Data.new(data)
60
+ self
85
61
  end
86
62
 
87
63
  def limit!(amount)
88
- @data_array = limit(amount).data_array
89
- self
90
- end
91
- def limit(amount)
92
- Quandl::Data.new( data_array[0..( amount.to_i - 1 )] )
64
+ @data_array = data_array[0..( amount.to_i - 1 )]; self
93
65
  end
94
66
 
95
67
  def sort_order(dir)
@@ -97,19 +69,11 @@ module Quandl::Data::Operations
97
69
  end
98
70
 
99
71
  def sort_ascending!
100
- @data_array = sort_ascending.data_array
101
- self
102
- end
103
- def sort_ascending
104
- Quandl::Data.new( Parse.sort( data_array.dup, :asc ), frequency: frequency )
72
+ @data_array = Parse.sort_asc( data_array ); self
105
73
  end
106
74
 
107
75
  def sort_descending!
108
- @data_array = sort_descending.data_array
109
- self
110
- end
111
- def sort_descending
112
- Quandl::Data.new( Parse.sort( data_array.dup, :desc ), frequency: frequency )
76
+ @data_array = Parse.sort_desc( data_array ); self
113
77
  end
114
78
 
115
79
  def transform(*args)
@@ -139,13 +103,32 @@ module Quandl::Data::Operations
139
103
  @frequency ||= Collapse.frequency?( data_array )
140
104
  end
141
105
  def frequency=(value)
142
- @frequency = value.to_sym
106
+ @frequency = value.to_sym if value.present?
143
107
  end
144
108
 
145
- def parse(data)
146
- data = data.to_a if data.respond_to?(:to_a) && data.is_a?(Quandl::Data)
147
- data = Parse.perform( data )
148
- data
109
+ def clone
110
+ Quandl::Data.new( data_array.dup )
149
111
  end
150
112
 
113
+ def to_jd
114
+ clone.to_jd!
115
+ end
116
+ def to_date
117
+ clone.to_date!
118
+ end
119
+ def trim_start(date)
120
+ clone.trim_start!(date)
121
+ end
122
+ def trim_end(date)
123
+ clone.trim_end!(date)
124
+ end
125
+ def limit(amount)
126
+ clone.limit!(amount)
127
+ end
128
+ def sort_ascending
129
+ clone.sort_ascending!
130
+ end
131
+ def sort_descending
132
+ clone.sort_descending!
133
+ end
151
134
  end
@@ -1,5 +1,5 @@
1
1
  module Quandl
2
2
  class Data
3
- VERSION = "1.1.4"
3
+ VERSION = "1.2.0"
4
4
  end
5
5
  end
@@ -38,7 +38,7 @@ class Data
38
38
  end
39
39
 
40
40
  def date(index)
41
- (Date.today - ( index * ( frequencies[frequency] ) - offset )).jd
41
+ (Date.today - ( index * ( frequencies[frequency] ) - offset ))
42
42
  end
43
43
 
44
44
  def point(row_index, column_index)
data/quandl_data.gemspec CHANGED
@@ -26,5 +26,5 @@ Gem::Specification.new do |s|
26
26
  s.add_development_dependency "guard-rspec"
27
27
 
28
28
  s.add_runtime_dependency "activesupport", ">= 3.0.0"
29
- s.add_runtime_dependency "quandl_operation", "~> 0.1"
29
+ s.add_runtime_dependency "quandl_operation", "~> 0.2"
30
30
  end
@@ -13,7 +13,7 @@ describe Quandl::Fabricate::Data do
13
13
  subject{ data.first }
14
14
  its(:count){ should eq 6 }
15
15
 
16
- its([0]){ should be_a Integer }
16
+ its([0]){ should be_a Date }
17
17
 
18
18
  [1,2,3,4,5].each do |i|
19
19
  its([i]){ should be_a Float }
@@ -24,6 +24,11 @@ describe Quandl::Data::Enumerator do
24
24
  }
25
25
  subject{ Quandl::Data.new(raw.clone) }
26
26
 
27
+ it "subject.to_jd.first.first" do
28
+ # binding.pry if date_format == nil && format == :to_csv
29
+ puts subject.to_jd.first.first
30
+ end
31
+
27
32
  its('to_jd.first.first'){ should be_a Integer }
28
33
  its('to_date.first.first'){ should be_a Date }
29
34
 
@@ -54,12 +54,12 @@ describe Quandl::Data::Operations do
54
54
  subject.transform(:rdiff).first[1].should_not eq value
55
55
  end
56
56
  it "should rdiff_from" do
57
- data = Quandl::Data.new([[1,3,5],[4,5,4],[5,15,20]])
58
- data.transform(:rdiff_from).should eq [[1,4,3],[4,2,4],[5,0,0]]
57
+ data = Quandl::Data.new([[2456624,3,5],[2456625,5,4],[2456626,15,20]])
58
+ data.transform(:rdiff_from).to_jd.should eq [[2456624,4,3],[2456625,2,4],[2456626,0,0]]
59
59
  end
60
60
  it "should cumul" do
61
- data = Quandl::Data.new( [[1000, 10], [1001, 20], [1002, 30]] )
62
- data.transform(:cumul).should eq [[1000, 10], [1001, 30], [1002, 60]]
61
+ data = Quandl::Data.new( [[2456624, 10], [2456625, 20], [2456626, 30]] )
62
+ data.transform(:cumul).to_jd.should eq [[2456624, 10], [2456625, 30], [2456626, 60]]
63
63
  end
64
64
  end
65
65
 
@@ -79,7 +79,7 @@ describe Quandl::Data::Operations do
79
79
 
80
80
  describe "#as_json" do
81
81
  it "should be a representation of data_array" do
82
- subject.as_json.should eq subject.data_array
82
+ subject.as_json.should eq subject.data_array.as_json
83
83
  end
84
84
  end
85
85
 
@@ -137,9 +137,21 @@ describe Quandl::Data::Operations do
137
137
 
138
138
  its(:to_csv){ should be_a String }
139
139
 
140
- it "should output csv that is consistent with subject" do
141
- data = CSV.parse( subject.to_csv ).collect{|r| r.collect{|v| v.to_f } }
142
- data.should eq subject
140
+ it "should output jd csv that is consistent with subject" do
141
+ expected_data = subject.to_jd
142
+ data = CSV.parse( expected_data.to_csv ).collect{|r| r.collect{|v| v.to_f } }
143
+ data.should eq expected_data
144
+ end
145
+
146
+ it "should output date csv that is consistent with subject" do
147
+ expected_data = subject.to_date
148
+ data = CSV.parse( expected_data.to_csv ).collect{|r|
149
+ date = Date.parse(r[0])
150
+ row = r[1..-1].collect{|v| v.to_f }
151
+ row.unshift(date)
152
+ row
153
+ }
154
+ data.should eq expected_data
143
155
  end
144
156
 
145
157
  it "should output csv when initialized with a Quandl::Data" do
@@ -0,0 +1,48 @@
1
+ # encoding: utf-8
2
+ require 'spec_helper'
3
+
4
+ describe Quandl::Data do
5
+
6
+ let(:csv1){"2012-12-31,20.0,10.0,35.0,35.0,20.0,28.0,30.0,25.0,0.0,0.0,27.5,25.0,18.0,33.99,0.0,25.0,0.0,10.0,22.0,34.0,10.0,20.0,26.0,0.0,18.5,25.0,33.0,30.0,20.0,27.5,10.0,19.0,25.0,29.0,23.0,25.0,21.0,30.0,28.0,24.5,33.33,0.0,29.48,10.0,20.0,31.0,0.0,35.0,16.5,19.0,20.0,32.45,25.0,12.5,0.0,25.0,31.4,33.33,38.01,0.0,14.0,20.0,30.0,24.2,15.0,15.0,20.0,12.5,15.0,28.8,12.0,10.0,30.0,25.0,35.0,15.0,30.0,9.0,32.0,34.0,25.0,28.0,30.0,28.0,12.0,35.0,25.0,30.0,10.0,30.0,30.0,19.0,25.0,10.0,16.0,20.0,0.0,27.0,20.0,10.0,17.0,19.0,18.0,34.55,30.0,28.0,0.0,34.5,35.0,26.3,21.17,28.0,17.0,30.0,23.0,25.0,30.0,20.0,30.0,21.0,55.0,24.0,40.0,25.0,0.0,34.0,25.0,20.0,35.0,25.75,29.02,33.0,22.89,20.5,28.3,28.6,22.6,25.25,24.43\n2011-12-31,20.0,10.0,35.0,35.0,20.0,28.0,30.0,25.0,0.0,0.0,27.5,25.0,24.0,33.99,0.0,0.0,0.0,10.0,22.0,34.0,10.0,20.0,28.0,0.0,20.0,25.0,33.0,30.0,20.0,34.5,10.0,19.0,25.0,29.0,24.0,20.0,21.0,0.0,28.0,26.0,33.33,0.0,29.37,10.0,20.0,31.0,0.0,35.0,16.5,19.0,20.0,32.44,25.0,12.5,0.0,24.0,31.4,33.33,40.69,0.0,14.0,20.0,0.0,22.0,15.0,15.0,20.0,12.5,15.0,28.8,12.0,10.0,0.0,25.0,35.0,15.0,30.0,9.0,32.0,34.0,25.0,28.0,30.0,28.0,12.0,35.0,25.0,30.0,10.0,30.0,30.0,19.0,25.0,10.0,16.0,20.0,0.0,27.0,20.0,10.0,17.0,19.0,20.0,34.55,30.0,28.0,0.0,34.5,35.0,26.3,21.17,28.0,17.0,30.0,30.0,0.0,30.0,20.0,30.0,25.0,55.0,26.0,40.0,25.0,0.0,34.0,25.0,20.0,35.0,25.75,28.55,34.0,23.1,20.88,29.02,28.6,22.8,25.5,24.52\n2010-12-31,20.0,10.0,35.0,35.0,20.0,28.0,30.0,25.0,0.0,0.0,27.5,25.0,24.0,33.99,0.0,25.0,0.0,10.0,25.0,34.0,10.0,20.0,31.0,0.0,17.0,25.0,33.0,30.0,20.0,0.0,10.0,19.0,25.0,25.0,25.0,20.0,21.0,0.0,28.0,26.0,33.33,0.0,29.41,22.0,24.0,31.0,0.0,25.0,16.5,19.0,18.0,33.99,25.0,12.5,0.0,25.0,31.4,33.33,40.69,0.0,14.0,20.0,0.0,24.2,15.0,15.0,40.0,0.0,15.0,28.59,12.0,10.0,0.0,25.0,35.0,15.0,30.0,9.0,32.0,0.0,25.5,30.0,30.0,28.0,12.0,35.0,27.5,30.0,10.0,30.0,30.0,19.0,25.0,10.0,16.0,20.0,0.0,27.0,20.0,10.0,17.0,19.0,20.0,34.55,30.0,35.0,0.0,0.0,15.0,26.3,21.17,28.0,17.0,30.0,30.0,0.0,30.0,20.0,30.0,25.0,55.0,28.0,40.0,25.0,0.0,34.0,25.0,35.0,35.0,25.75,28.38,35.5,23.96,21.52,27.52,29.0,23.04,25.79,24.71\n2009-12-31,20.0,10.0,35.0,35.0,20.0,28.0,30.0,25.0,0.0,0.0,27.5,25.0,24.0,33.99,0.0,0.0,0.0,10.0,25.0,34.0,10.0,0.0,33.0,0.0,17.0,25.0,33.0,30.0,20.0,0.0,10.0,20.0,25.0,25.0,25.0,20.0,21.0,0.0,29.0,26.0,33.33,0.0,29.44,27.0,25.0,31.0,0.0,30.0,16.5,16.0,15.0,33.99,28.0,12.5,0.0,26.0,31.4,33.33,40.69,0.0,25.0,20.0,0.0,24.2,15.0,15.0,40.0,0.0,20.0,28.59,12.0,10.0,0.0,25.0,35.0,15.0,28.0,9.0,32.0,0.0,25.5,30.0,30.0,28.0,12.0,35.0,30.0,30.0,10.0,30.0,30.0,19.0,25.0,35.0,16.0,20.0,0.0,27.0,20.0,10.0,18.0,19.0,21.0,34.55,30.0,35.0,0.0,0.0,15.0,26.3,21.17,28.0,25.0,30.0,30.0,0.0,30.0,20.0,30.0,25.0,55.0,28.0,40.0,25.0,0.0,34.0,25.0,35.0,35.0,30.9,28.75,36.5,25.73,21.7,27.96,29.2,23.22,25.73,25.4\n2008-12-31,20.0,10.0,35.0,35.0,20.0,28.0,30.0,25.0,0.0,0.0,30.0,25.0,24.0,33.99,0.0,0.0,0.0,10.0,25.0,34.0,10.0,0.0,33.5,0.0,17.0,25.0,33.0,30.0,20.0,0.0,10.0,21.0,25.0,25.0,25.0,20.0,21.0,0.0,31.0,26.0,33.33,0.0,29.51,33.0,25.0,31.0,0.0,30.0,16.5,16.0,15.0,33.99,30.0,12.5,0.0,27.0,31.4,33.33,40.69,0.0,25.0,30.0,0.0,27.5,55.0,15.0,40.0,0.0,15.0,29.63,12.0,10.0,0.0,26.0,35.0,15.0,28.0,9.0,32.0,0.0,25.5,30.0,30.0,28.0,12.0,35.0,30.0,30.0,10.0,30.0,35.0,19.0,25.0,35.0,16.0,24.0,0.0,27.0,20.0,10.0,18.0,19.0,22.0,34.55,30.0,35.0,0.0,0.0,15.0,28.0,21.17,28.0,25.0,0.0,30.0,0.0,30.0,20.0,30.0,25.0,55.0,30.0,40.0,25.0,0.0,34.0,28.0,35.0,35.0,30.9,28.65,36.75,27.99,22.0,27.96,29.6,23.29,26.08,26.12\n2007-12-31,20.0,20.0,35.0,35.0,20.0,28.0,30.0,25.0,0.0,0.0,30.0,25.0,24.0,33.99,0.0,0.0,0.0,10.0,25.0,34.0,10.0,0.0,36.1,0.0,17.0,33.0,34.0,30.0,20.0,0.0,10.0,24.0,25.0,25.0,25.0,20.0,22.0,0.0,31.0,26.0,33.33,0.0,38.36,35.0,25.0,31.0,0.0,30.0,17.5,16.0,18.0,33.99,30.0,12.5,0.0,29.0,37.25,33.33,40.69,0.0,25.0,30.0,0.0,27.5,55.0,15.0,40.0,0.0,15.0,29.63,12.0,12.0,0.0,27.0,35.0,22.5,28.0,9.0,32.0,0.0,25.5,33.0,30.0,28.0,12.0,35.0,30.0,30.0,10.0,30.0,35.0,19.0,25.0,35.0,16.0,24.0,0.0,27.0,20.0,10.0,20.0,19.0,23.0,36.89,32.5,35.0,0.0,0.0,30.0,28.0,21.32,28.0,25.0,0.0,30.0,0.0,30.0,20.0,30.0,25.0,55.0,30.0,40.0,30.0,0.0,34.0,28.0,35.0,35.0,30.9,30.56,38.05,28.46,23.01,28.3,30.2,24.11,27.08,26.96\n"}
7
+ let(:csv2) { "2012-03-07,,69.75,69.75,69.75,0.0,0.0,0.0\n2012-03-06,69.75,69.75,69.75,69.75,0.0,0.0,0.0\n2012-03-05,69.75,69.75,69.75,69.75,0.0,0.0,0.0\n2012-03-04,69.75,69.75,69.75,69.75,0.0,0.0,0.0\n2012-02-29,,69.75,69.75,69.75,0.0,0.0,0.0\n2012-02-28,69.75,69.75,69.75,69.75,0.0,0.0,0.0\n" }
8
+ let(:csv3) { "Date, Column 1, Column 2, C3, C4, C5, C6, C7\n 2012-03-07,,69.75,69.75,69.75,0.0,0.0,0.0\n2012-03-06,69.75,69.75,69.75,69.75,0.0,0.0,0.0\n2012-03-05,69.75,69.75,69.75,69.75,0.0,0.0,0.0\n2012-03-04,69.75,69.75,69.75,69.75,0.0,0.0,0.0\n2012-02-29,,69.75,69.75,69.75,0.0,0.0,0.0\n2012-02-28,69.75,69.75,69.75,69.75,0.0,0.0,0.0\n" }
9
+
10
+ let(:data){ Quandl::Data.new(csv2) }
11
+ subject{ data }
12
+
13
+ describe "#clone" do
14
+ subject{ data.clone }
15
+ it{ should be_a Quandl::Data }
16
+ it "should not alter original data" do
17
+ subject.collapse(:annual).to_a.should_not eq data.to_a
18
+ end
19
+ end
20
+
21
+ context "csv" do
22
+ [:csv1, :csv2].each do |csv|
23
+
24
+ let(:data){ Quandl::Data.new( self.send(csv) ) }
25
+ subject{ data }
26
+
27
+ it "should have Float data" do
28
+ data.to_h.each do |date, values|
29
+ values.each do |value|
30
+ next if value.nil?
31
+ value.should be_a Float
32
+ end
33
+ end
34
+ end
35
+
36
+ end
37
+
38
+ it "csv3 should raise Quandl::Operation::Errors::UnknownDateFormat" do
39
+ expect { Quandl::Data.new( csv3 ).to_jd }.to raise_error Quandl::Operation::Errors::UnknownDateFormat
40
+ end
41
+ end
42
+
43
+ [:to_jd, :sort_ascending, :sort_descending].each do |o1|
44
+ its("to_jd.#{o1}!"){ should_not eq subject }
45
+ its("#{o1}!"){ should eq subject }
46
+ end
47
+
48
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quandl_data
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.4
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Blake Hilscher
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-20 00:00:00.000000000 Z
11
+ date: 2013-11-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - ~>
130
130
  - !ruby/object:Gem::Version
131
- version: '0.1'
131
+ version: '0.2'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - ~>
137
137
  - !ruby/object:Gem::Version
138
- version: '0.1'
138
+ version: '0.2'
139
139
  description: Data will be interfaced
140
140
  email:
141
141
  - blake@hilscher.ca
@@ -164,6 +164,7 @@ files:
164
164
  - spec/lib/fabricate/data_spec.rb
165
165
  - spec/lib/quandl/data/enumerator_spec.rb
166
166
  - spec/lib/quandl/data/operations_spec.rb
167
+ - spec/lib/quandl/data_spec.rb
167
168
  - spec/spec_helper.rb
168
169
  homepage: http://blake.hilscher.ca/
169
170
  licenses:
@@ -193,4 +194,5 @@ test_files:
193
194
  - spec/lib/fabricate/data_spec.rb
194
195
  - spec/lib/quandl/data/enumerator_spec.rb
195
196
  - spec/lib/quandl/data/operations_spec.rb
197
+ - spec/lib/quandl/data_spec.rb
196
198
  - spec/spec_helper.rb