quandl_client 2.3.1 → 2.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/UPGRADE.md +7 -0
- data/examples/create.rb +1 -11
- data/lib/quandl/client/base/model.rb +27 -0
- data/lib/quandl/client/base.rb +2 -0
- data/lib/quandl/client/version.rb +1 -1
- data/spec/lib/quandl/client/dataset/persistence_spec.rb +31 -17
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1cbfcdc4f840923e85b3dce389da7ab5757292e7
|
4
|
+
data.tar.gz: 4c6beabf2a4649dfa4c1c0a59576b74a4b0822f7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 73f5b8521d90663b8f2321c389471260255a9164c1ffa9c7f8145554a8f796101d2c9b7c63f7d4bda7ec5840f52198c75e7a1fce0efd45d5e3367b3dbc900f2e
|
7
|
+
data.tar.gz: 2c31963ac71365a060f5e7bb29e4489cecd834f5b15ee81a4d35afbdbfff65bc5ece3914ab40e6ec4579b32c477ef391c7863098245b804c9cb228fc824ef7c6
|
data/UPGRADE.md
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
# 2.3.2
|
2
|
+
|
3
|
+
* add #elapsed_request_time_ms
|
4
|
+
* refactor save_time to request_time. Add specs to #destroy for request_started_at, finished_at, elapsed_request_time
|
5
|
+
* add Client::Base#save_started_at, #save_finished_at, #elapsed_save_time. before_save :touch_save_started_at, after_save :touch_save_finished_at
|
6
|
+
|
7
|
+
|
1
8
|
## 2.3.1
|
2
9
|
|
3
10
|
* bump quandl_data
|
data/examples/create.rb
CHANGED
@@ -9,16 +9,6 @@ include Quandl::Client
|
|
9
9
|
|
10
10
|
Quandl::Client.use ENV['QUANDL_API_HOST']
|
11
11
|
Quandl::Client.token = ENV['QUANDL_USER_TOKEN']
|
12
|
-
|
13
|
-
# create dataset
|
14
|
-
d = Dataset.new
|
15
|
-
d.code = "TEST_#{SecureRandom.hex[0..10]}".upcase
|
16
|
-
d.name = 'Blake Test Dataset'
|
17
|
-
d.save
|
18
|
-
|
19
|
-
# update dataset's data
|
20
|
-
new_data = Quandl::Fabricate::Data.rand( rows: 10, columns: 2, nils: false ).to_date.to_csv
|
21
|
-
d.data = new_data
|
22
|
-
d.save
|
12
|
+
# Quandl::Client.use 'http://quandl.com/api/'
|
23
13
|
|
24
14
|
binding.pry
|
@@ -8,6 +8,33 @@ module Model
|
|
8
8
|
include Her::Model
|
9
9
|
use_api Quandl::Client::Base.her_api
|
10
10
|
|
11
|
+
before_save :touch_request_started_at
|
12
|
+
after_save :touch_request_finished_at
|
13
|
+
|
14
|
+
before_destroy :touch_request_started_at
|
15
|
+
after_destroy :touch_request_finished_at
|
16
|
+
|
17
|
+
attr_accessor :request_started_at, :request_finished_at
|
18
|
+
|
19
|
+
end
|
20
|
+
|
21
|
+
def elapsed_request_time_ms
|
22
|
+
elapsed_request_time.to_f.microseconds.to_s + 'ms'
|
23
|
+
end
|
24
|
+
|
25
|
+
def elapsed_request_time
|
26
|
+
return nil unless request_finished_at.is_a?(Time) && request_started_at.is_a?(Time)
|
27
|
+
@elapsed_request_time ||= (request_finished_at - request_started_at)
|
28
|
+
end
|
29
|
+
|
30
|
+
private
|
31
|
+
|
32
|
+
def touch_request_started_at
|
33
|
+
self.request_started_at = Time.now
|
34
|
+
end
|
35
|
+
|
36
|
+
def touch_request_finished_at
|
37
|
+
self.request_finished_at = Time.now
|
11
38
|
end
|
12
39
|
|
13
40
|
end
|
data/lib/quandl/client/base.rb
CHANGED
@@ -7,6 +7,10 @@ describe Dataset do
|
|
7
7
|
its(:saved?){ should be_false }
|
8
8
|
its(:valid?){ should be_true }
|
9
9
|
end
|
10
|
+
|
11
|
+
its(:request_started_at){ should be_nil }
|
12
|
+
its(:request_finished_at){ should be_nil }
|
13
|
+
its(:elapsed_request_time){ should be_nil }
|
10
14
|
|
11
15
|
context "when created" do
|
12
16
|
context "without token" do
|
@@ -17,7 +21,11 @@ describe Dataset do
|
|
17
21
|
|
18
22
|
its(:saved?){ should be_false }
|
19
23
|
its(:status){ should eq 401 }
|
20
|
-
|
24
|
+
|
25
|
+
its(:request_started_at){ should be_a Time }
|
26
|
+
its(:request_finished_at){ should be_a Time }
|
27
|
+
its(:elapsed_request_time){ should be > 0 }
|
28
|
+
|
21
29
|
after(:all){ Quandl::Client.token = ENV['QUANDL_AUTH_TOKEN'] }
|
22
30
|
end
|
23
31
|
context "with token" do
|
@@ -65,29 +73,35 @@ describe Dataset do
|
|
65
73
|
|
66
74
|
end
|
67
75
|
|
68
|
-
context "
|
76
|
+
context "#destroy" do
|
69
77
|
|
70
78
|
let(:dataset){ create(:dataset, private: false ) }
|
79
|
+
before(:each){ dataset.destroy }
|
80
|
+
subject{ dataset }
|
71
81
|
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
82
|
+
its(:status){ should eq 200 }
|
83
|
+
|
84
|
+
its(:request_started_at){ should be_a Time }
|
85
|
+
its(:request_finished_at){ should be_a Time }
|
86
|
+
its(:elapsed_request_time){ should be > 0 }
|
76
87
|
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
id = dataset.id
|
81
|
-
# behave as a user
|
82
|
-
Quandl::Client.token = ENV['QUANDL_USER_TOKEN']
|
83
|
-
user_dataset = Dataset.find(id)
|
84
|
-
user_dataset.destroy
|
85
|
-
user_dataset.status.should eq 403
|
86
|
-
end
|
88
|
+
end
|
89
|
+
|
90
|
+
context "#destroy when user" do
|
87
91
|
|
88
|
-
|
92
|
+
let(:dataset){ create(:dataset, private: false ) }
|
89
93
|
|
94
|
+
it "should not delete the dataset with a user token" do
|
95
|
+
id = dataset.id
|
96
|
+
# behave as a user
|
97
|
+
Quandl::Client.token = ENV['QUANDL_USER_TOKEN']
|
98
|
+
user_dataset = Dataset.find(id)
|
99
|
+
user_dataset.destroy
|
100
|
+
user_dataset.status.should eq 403
|
90
101
|
end
|
102
|
+
|
103
|
+
after(:all){ Quandl::Client.token = ENV['QUANDL_AUTH_TOKEN'] }
|
104
|
+
|
91
105
|
end
|
92
106
|
|
93
107
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: quandl_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.2
|
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-12-
|
11
|
+
date: 2013-12-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|