validic 0.2.1 → 0.3.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.
- checksums.yaml +7 -0
- data/.gitignore +4 -0
- data/Gemfile.lock +50 -43
- data/LICENSE.txt +1 -1
- data/lib/validic.rb +9 -4
- data/lib/validic/{general_measurement.rb → biometric.rb} +6 -22
- data/lib/validic/client.rb +48 -7
- data/lib/validic/diabetes.rb +3 -20
- data/lib/validic/fitness.rb +5 -19
- data/lib/validic/nutrition.rb +3 -19
- data/lib/validic/organization.rb +3 -7
- data/lib/validic/request.rb +6 -0
- data/lib/validic/routine.rb +5 -19
- data/lib/validic/sleep.rb +5 -19
- data/lib/validic/third_party_app.rb +3 -8
- data/lib/validic/tobacco_cessation.rb +3 -19
- data/lib/validic/version.rb +1 -1
- data/lib/validic/weight.rb +5 -18
- data/spec/spec_helper.rb +5 -4
- data/spec/validic/biometrics_spec.rb +43 -0
- data/spec/validic/client_spec.rb +39 -1
- data/spec/validic/diabetes_spec.rb +4 -3
- data/spec/validic/fitness_spec.rb +3 -2
- data/spec/validic/nutrition_spec.rb +3 -2
- data/spec/validic/organization_spec.rb +2 -2
- data/spec/validic/profile_spec.rb +1 -28
- data/spec/validic/routine_spec.rb +3 -2
- data/spec/validic/sleep_spec.rb +3 -2
- data/spec/validic/third_party_app_spec.rb +2 -2
- data/spec/validic/tobacco_cessation_spec.rb +3 -2
- data/spec/validic/user_spec.rb +7 -3
- data/spec/validic/weight_spec.rb +3 -2
- data/spec/validic_spec.rb +8 -7
- data/validic.gemspec +6 -7
- metadata +45 -102
- data/lib/validic/activity.rb +0 -73
- data/spec/.DS_Store +0 -0
- data/spec/validic/activity_spec.rb +0 -97
- data/spec/validic/general_measurement_spec.rb +0 -120
data/lib/validic/request.rb
CHANGED
@@ -5,6 +5,12 @@ require 'multi_json'
|
|
5
5
|
module Validic
|
6
6
|
module Request
|
7
7
|
|
8
|
+
def extract_params(params)
|
9
|
+
Validic.organization_id = params.delete(:organization_id) if params[:organization_id]
|
10
|
+
Validic.user_id = params.delete(:user_id) if params[:user_id]
|
11
|
+
params
|
12
|
+
end
|
13
|
+
|
8
14
|
def get(path, options)
|
9
15
|
request(:get, path, options)
|
10
16
|
end
|
data/lib/validic/routine.rb
CHANGED
@@ -17,27 +17,13 @@ module Validic
|
|
17
17
|
# @params :expanded - optional - will show the raw data
|
18
18
|
#
|
19
19
|
# @return [Hashie::Mash] with list of Routine
|
20
|
-
def
|
21
|
-
|
22
|
-
|
23
|
-
options = {
|
24
|
-
start_date: options[:start_date],
|
25
|
-
end_date: options[:end_date],
|
26
|
-
access_token: options[:access_token],
|
27
|
-
source: options[:source],
|
28
|
-
expanded: options[:expanded]
|
29
|
-
}
|
30
|
-
|
31
|
-
if organization_id
|
32
|
-
response = get("/#{Validic.api_version}/organizations/#{organization_id}/routine.json", options)
|
33
|
-
elsif user_id
|
34
|
-
response = get("/#{Validic.api_version}/users/#{user_id}/routine.json", options)
|
35
|
-
else
|
36
|
-
response = get("/#{Validic.api_version}/routine.json", options)
|
37
|
-
end
|
38
|
-
response if response
|
20
|
+
def get_routine(params={})
|
21
|
+
params = extract_params(params)
|
22
|
+
get_endpoint(:routine, params)
|
39
23
|
end
|
40
24
|
|
25
|
+
alias :get_routines :get_routine
|
26
|
+
|
41
27
|
##
|
42
28
|
# Create Routine base on `access_token` and `authentication_token`
|
43
29
|
#
|
data/lib/validic/sleep.rb
CHANGED
@@ -17,27 +17,13 @@ module Validic
|
|
17
17
|
# @params :expanded - optional - will show the raw data
|
18
18
|
#
|
19
19
|
# @return [Hashie::Mash] with list of Sleep
|
20
|
-
def
|
21
|
-
|
22
|
-
|
23
|
-
options = {
|
24
|
-
start_date: options[:start_date],
|
25
|
-
end_date: options[:end_date],
|
26
|
-
access_token: options[:access_token],
|
27
|
-
source: options[:source],
|
28
|
-
expanded: options[:expanded]
|
29
|
-
}
|
30
|
-
|
31
|
-
if organization_id
|
32
|
-
response = get("/#{Validic.api_version}/organizations/#{organization_id}/sleep.json", options)
|
33
|
-
elsif user_id
|
34
|
-
response = get("/#{Validic.api_version}/users/#{user_id}/sleep.json", options)
|
35
|
-
else
|
36
|
-
response = get("/#{Validic.api_version}/sleep.json", options)
|
37
|
-
end
|
38
|
-
response if response
|
20
|
+
def get_sleep(params={})
|
21
|
+
params = extract_params(params)
|
22
|
+
get_endpoint(:sleep, params)
|
39
23
|
end
|
40
24
|
|
25
|
+
alias :get_sleeps :get_sleep
|
26
|
+
|
41
27
|
##
|
42
28
|
# Create Sleep base on `access_token` and `authentication_token`
|
43
29
|
#
|
@@ -10,14 +10,9 @@ module Validic
|
|
10
10
|
# params[:access_token] required parameter
|
11
11
|
#
|
12
12
|
# @return [Hashie::Mash] with list of Organization
|
13
|
-
def get_apps(
|
14
|
-
|
15
|
-
|
16
|
-
access_token: options[:access_token],
|
17
|
-
authentication_token: options[:authentication_token]
|
18
|
-
}
|
19
|
-
response = get("/#{Validic.api_version}/organizations/#{organization_id}/apps.json", options)
|
20
|
-
response if response
|
13
|
+
def get_apps(params={})
|
14
|
+
params = extract_params(params)
|
15
|
+
get_endpoint(:apps, params)
|
21
16
|
end
|
22
17
|
|
23
18
|
##
|
@@ -17,25 +17,9 @@ module Validic
|
|
17
17
|
# @params :expanded - optional - will show the raw data
|
18
18
|
#
|
19
19
|
# @return [Hashie::Mash] with list of TobaccoCessation
|
20
|
-
def get_tobacco_cessations(
|
21
|
-
|
22
|
-
|
23
|
-
options = {
|
24
|
-
start_date: options[:start_date],
|
25
|
-
end_date: options[:end_date],
|
26
|
-
access_token: options[:access_token],
|
27
|
-
source: options[:source],
|
28
|
-
expanded: options[:expanded]
|
29
|
-
}
|
30
|
-
|
31
|
-
if organization_id
|
32
|
-
response = get("/#{Validic.api_version}/organizations/#{organization_id}/tobacco_cessation.json", options)
|
33
|
-
elsif user_id
|
34
|
-
response = get("/#{Validic.api_version}/users/#{user_id}/tobacco_cessation.json", options)
|
35
|
-
else
|
36
|
-
response = get("/#{Validic.api_version}/tobacco_cessation.json", options)
|
37
|
-
end
|
38
|
-
response if response
|
20
|
+
def get_tobacco_cessations(params={})
|
21
|
+
params = extract_params(params)
|
22
|
+
get_endpoint(:tobacco_cessation, params)
|
39
23
|
end
|
40
24
|
|
41
25
|
##
|
data/lib/validic/version.rb
CHANGED
data/lib/validic/weight.rb
CHANGED
@@ -17,26 +17,13 @@ module Validic
|
|
17
17
|
# @params :expanded - optional - will show the raw data
|
18
18
|
#
|
19
19
|
# @return [Hashie::Mash] with list of Weight
|
20
|
-
def
|
21
|
-
|
22
|
-
|
23
|
-
options = {
|
24
|
-
start_date: options[:start_date],
|
25
|
-
end_date: options[:end_date],
|
26
|
-
access_token: options[:access_token],
|
27
|
-
source: options[:source],
|
28
|
-
expanded: options[:expanded]
|
29
|
-
}
|
30
|
-
|
31
|
-
if organization_id
|
32
|
-
response = get("/#{Validic.api_version}/organizations/#{organization_id}/weight.json", options)
|
33
|
-
elsif user_id
|
34
|
-
response = get("/#{Validic.api_version}/users/#{user_id}/weight.json", options)
|
35
|
-
else
|
36
|
-
response = get("/#{Validic.api_version}/weight.json", options)
|
37
|
-
end
|
20
|
+
def get_weight(params={})
|
21
|
+
params = extract_params(params)
|
22
|
+
get_endpoint(:weight, params)
|
38
23
|
end
|
39
24
|
|
25
|
+
alias :get_weights :get_weight
|
26
|
+
|
40
27
|
##
|
41
28
|
# Create Weight base on `access_token` and `authentication_token`
|
42
29
|
#
|
data/spec/spec_helper.rb
CHANGED
@@ -34,10 +34,11 @@ RSpec.configure do |c|
|
|
34
34
|
#
|
35
35
|
c.before(:each) do
|
36
36
|
Validic.configure do |config|
|
37
|
-
#
|
38
|
-
config.api_url
|
39
|
-
config.api_version
|
40
|
-
config.access_token
|
37
|
+
# This is using ACME Corp Credentials as per Documentation
|
38
|
+
config.api_url = 'https://api.validic.com'
|
39
|
+
config.api_version = 'v1'
|
40
|
+
config.access_token = 'ef617d9d3bb39b4112f60dc65ee40061165c1ab4375e3ea63896f63a7390c4db'
|
41
|
+
config.organization_id = '51aca5a06dedda916400002b'
|
41
42
|
end
|
42
43
|
end
|
43
44
|
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Validic::Biometric do
|
5
|
+
|
6
|
+
let(:client) { Validic::Client.new }
|
7
|
+
|
8
|
+
context "#get_biometrics" do
|
9
|
+
before do
|
10
|
+
@user_biometrics = client
|
11
|
+
.get_biometrics({
|
12
|
+
start_date: '2014-01-01',
|
13
|
+
user_id: '52967e076dedda5d4300000b'
|
14
|
+
})
|
15
|
+
end
|
16
|
+
|
17
|
+
it "returns JSON response of Validic::Biometrics", vcr: true do
|
18
|
+
@user_biometrics.should_not be_nil
|
19
|
+
end
|
20
|
+
|
21
|
+
it "status 200" do
|
22
|
+
@user_biometrics.summary.status.should == 200
|
23
|
+
end
|
24
|
+
|
25
|
+
context "#summary response" do
|
26
|
+
it "not nil" do
|
27
|
+
@user_biometrics.summary.should_not be_nil
|
28
|
+
end
|
29
|
+
|
30
|
+
it "results not 0" do
|
31
|
+
@user_biometrics.summary.results.should_not == 0
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
context "#biometrics collection" do
|
36
|
+
it "has a collection" do
|
37
|
+
@user_biometrics.biometrics.should be_a(Array)
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
42
|
+
|
43
|
+
end
|
data/spec/validic/client_spec.rb
CHANGED
@@ -3,9 +3,47 @@ require 'spec_helper'
|
|
3
3
|
|
4
4
|
describe Validic::Client do
|
5
5
|
|
6
|
+
let(:client) { Validic::Client.new }
|
7
|
+
|
6
8
|
it "creates a Faraday::Connection" do
|
7
|
-
client = Validic::Client.new
|
8
9
|
client.connection.should be_kind_of Faraday::Connection
|
9
10
|
end
|
10
11
|
|
12
|
+
context "#latest" do
|
13
|
+
it "#fitness", vcr: true do
|
14
|
+
latest_fitness = client.latest(:fitness)
|
15
|
+
latest_fitness.summary.should_not be_nil
|
16
|
+
end
|
17
|
+
|
18
|
+
it "#sleep", vcr: true do
|
19
|
+
latest_sleep = client.latest(:sleep)
|
20
|
+
latest_sleep.summary.should_not be_nil
|
21
|
+
end
|
22
|
+
|
23
|
+
it "#routine", vcr: true do
|
24
|
+
latest_routine = client.latest(:routine)
|
25
|
+
latest_routine.summary.should_not be_nil
|
26
|
+
end
|
27
|
+
|
28
|
+
it "#weight", vcr: true do
|
29
|
+
latest_weight = client.latest(:weight)
|
30
|
+
latest_weight.summary.should_not be_nil
|
31
|
+
end
|
32
|
+
|
33
|
+
it "#biometrics", vcr: true do
|
34
|
+
latest_biometrics = client.latest(:biometrics)
|
35
|
+
latest_biometrics.summary.should_not be_nil
|
36
|
+
end
|
37
|
+
|
38
|
+
it "#nutrition", vcr: true do
|
39
|
+
latest_nutrition = client.latest(:nutrition)
|
40
|
+
latest_nutrition.summary.should_not be_nil
|
41
|
+
end
|
42
|
+
|
43
|
+
it "#tobacco_cessation", vcr: true do
|
44
|
+
latest_tobacco_cessation = client.latest(:tobacco_cessation)
|
45
|
+
latest_tobacco_cessation.summary.should_not be_nil
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
11
49
|
end
|
@@ -24,7 +24,8 @@ describe Validic::Diabetes do
|
|
24
24
|
end
|
25
25
|
|
26
26
|
context "#create_diabetes" do
|
27
|
-
it "should create new diabetes record" do
|
27
|
+
it "should create new diabetes record", vcr: true do
|
28
|
+
pending
|
28
29
|
@new_diabetes = client.create_diabetes({authentication_token: "mqwpDx8RYcmSFBJDmy3J",
|
29
30
|
access_token: "DEMO_KEY",
|
30
31
|
c_peptide: 1,
|
@@ -51,7 +52,7 @@ describe Validic::Diabetes do
|
|
51
52
|
|
52
53
|
context "#get_diabetes by organization" do
|
53
54
|
before do
|
54
|
-
@org_diabetes = client.get_diabetes({organization_id: "
|
55
|
+
@org_diabetes = client.get_diabetes({organization_id: "51aca5a06dedda916400002b", access_token: "ENTERPRISE_KEY"})
|
55
56
|
end
|
56
57
|
|
57
58
|
it "returns JSON response of Validic::Diabetes", vcr: true do
|
@@ -69,7 +70,7 @@ describe Validic::Diabetes do
|
|
69
70
|
|
70
71
|
context "#get_diabetes by user" do
|
71
72
|
before do
|
72
|
-
@user_diabetes = client.get_diabetes({user_id: "
|
73
|
+
@user_diabetes = client.get_diabetes({user_id: "52967e076dedda5d4300000b"})
|
73
74
|
end
|
74
75
|
|
75
76
|
it "returns JSON response of Validic::Diabetes", vcr: true do
|
@@ -25,6 +25,7 @@ describe Validic::Fitness do
|
|
25
25
|
|
26
26
|
context "#create_fitness" do
|
27
27
|
it "should create new fitness record" do
|
28
|
+
pending
|
28
29
|
@new_fitness = client.create_fitness({authentication_token: "mqwpDx8RYcmSFBJDmy3J",
|
29
30
|
access_token: "DEMO_KEY",
|
30
31
|
timestamp: "2013-03-10 07:12:16 -05:00",
|
@@ -47,7 +48,7 @@ describe Validic::Fitness do
|
|
47
48
|
|
48
49
|
context "#get_fitnesses by organization" do
|
49
50
|
before do
|
50
|
-
@fitness = client.get_fitnesses({organization_id: "
|
51
|
+
@fitness = client.get_fitnesses({organization_id: "51aca5a06dedda916400002b", access_token: "ENTERPRISE_KEY"})
|
51
52
|
end
|
52
53
|
|
53
54
|
it "returns JSON response of Validic::Fitness", vcr: true do
|
@@ -65,7 +66,7 @@ describe Validic::Fitness do
|
|
65
66
|
|
66
67
|
context "#get_fitnesses by user" do
|
67
68
|
before do
|
68
|
-
@fitness = client.get_fitnesses({user_id: "
|
69
|
+
@fitness = client.get_fitnesses({user_id: "52967e076dedda5d4300000b"})
|
69
70
|
end
|
70
71
|
|
71
72
|
it "returns JSON response of Validic::Fitness", vcr: true do
|
@@ -25,6 +25,7 @@ describe Validic::Nutrition do
|
|
25
25
|
|
26
26
|
context "#create_nutrition" do
|
27
27
|
it "should create new nutrition record" do
|
28
|
+
pending
|
28
29
|
@new_nutrition = client.create_nutrition({authentication_token: "mqwpDx8RYcmSFBJDmy3J",
|
29
30
|
access_token: "DEMO_KEY",
|
30
31
|
calories: 850,
|
@@ -53,7 +54,7 @@ describe Validic::Nutrition do
|
|
53
54
|
|
54
55
|
context "#get_nutritions by organization" do
|
55
56
|
before do
|
56
|
-
@nutrition = client.get_nutritions({organization_id: "
|
57
|
+
@nutrition = client.get_nutritions({organization_id: "51aca5a06dedda916400002b", access_token: "ENTERPRISE_KEY"})
|
57
58
|
end
|
58
59
|
|
59
60
|
it "returns JSON response of Validic::Nutrition", vcr: true do
|
@@ -71,7 +72,7 @@ describe Validic::Nutrition do
|
|
71
72
|
|
72
73
|
context "#get_nutritions by user" do
|
73
74
|
before do
|
74
|
-
@nutrition = client.get_nutritions({user_id: "
|
75
|
+
@nutrition = client.get_nutritions({user_id: "52967e076dedda5d4300000b"})
|
75
76
|
end
|
76
77
|
|
77
78
|
it "returns JSON response of Validic::Nutrition", vcr: true do
|
@@ -7,7 +7,7 @@ describe Validic::Organization do
|
|
7
7
|
|
8
8
|
context "#get_organization" do
|
9
9
|
before do
|
10
|
-
@organization_response = client.get_organization({organization_id: "
|
10
|
+
@organization_response = client.get_organization({organization_id: "51aca5a06dedda916400002b", access_token: "ENTERPRISE_KEY"})
|
11
11
|
end
|
12
12
|
|
13
13
|
it "returns JSON response of Validic::Organization", vcr: true do
|
@@ -25,7 +25,7 @@ describe Validic::Organization do
|
|
25
25
|
|
26
26
|
context "#get_users" do
|
27
27
|
before do
|
28
|
-
@users_response = client.get_users({organization_id: "
|
28
|
+
@users_response = client.get_users({organization_id: "51aca5a06dedda916400002b", access_token: "ENTERPRISE_KEY"})
|
29
29
|
end
|
30
30
|
|
31
31
|
it "returns JSON response of Validic::Organization", vcr: true do
|
@@ -11,36 +11,9 @@ describe Validic::Profile do
|
|
11
11
|
end
|
12
12
|
|
13
13
|
it "returns JSON response of Validic::Profile", vcr: true do
|
14
|
+
pending
|
14
15
|
@profile.should_not be_nil
|
15
16
|
end
|
16
17
|
end
|
17
18
|
|
18
|
-
# context "#update_profile" do
|
19
|
-
# before do
|
20
|
-
# @updated_profile = client.update_profile({gender: "M",
|
21
|
-
# location: "TX",
|
22
|
-
# birth_year: "1985",
|
23
|
-
# height: 168.75,
|
24
|
-
# weight: 69,
|
25
|
-
# first_name: "Demo",
|
26
|
-
# last_name: "User"})
|
27
|
-
# end
|
28
|
-
|
29
|
-
# it "should return gender" do
|
30
|
-
# @updated_profile.profile.gender.should eq 'M'
|
31
|
-
# end
|
32
|
-
|
33
|
-
# it "should return location" do
|
34
|
-
# @updated_profile.profile.location.should eq 'TX'
|
35
|
-
# end
|
36
|
-
|
37
|
-
# it "should return height" do
|
38
|
-
# @updated_profile.profile.height.should eq "168.75"
|
39
|
-
# end
|
40
|
-
|
41
|
-
# it "should return weight" do
|
42
|
-
# @updated_profile.profile.weight.should eq 69
|
43
|
-
# end
|
44
|
-
# end
|
45
|
-
|
46
19
|
end
|
@@ -25,6 +25,7 @@ describe Validic::Routine do
|
|
25
25
|
|
26
26
|
context "#create_routine" do
|
27
27
|
it "should create new routine record" do
|
28
|
+
pending
|
28
29
|
@new_routine = client.create_routine({authentication_token: "mqwpDx8RYcmSFBJDmy3J",
|
29
30
|
access_token: "DEMO_KEY",
|
30
31
|
timestamp: "2013-05-16 07:12:16 -05:00",
|
@@ -45,7 +46,7 @@ describe Validic::Routine do
|
|
45
46
|
|
46
47
|
context "#get_routines by organization" do
|
47
48
|
before do
|
48
|
-
@routine = client.get_routines({organization_id: "
|
49
|
+
@routine = client.get_routines({organization_id: "51aca5a06dedda916400002b", access_token: "ENTERPRISE_KEY"})
|
49
50
|
end
|
50
51
|
|
51
52
|
it "returns JSON response of Validic::Routine", vcr: true do
|
@@ -63,7 +64,7 @@ describe Validic::Routine do
|
|
63
64
|
|
64
65
|
context "#get_routines by user" do
|
65
66
|
before do
|
66
|
-
@routine = client.get_routines({user_id: "
|
67
|
+
@routine = client.get_routines({user_id: "52967e076dedda5d4300000b"})
|
67
68
|
end
|
68
69
|
|
69
70
|
it "returns JSON response of Validic::Routine", vcr: true do
|
data/spec/validic/sleep_spec.rb
CHANGED
@@ -25,6 +25,7 @@ describe Validic::Sleep do
|
|
25
25
|
|
26
26
|
context "#create_sleep" do
|
27
27
|
it "should create new sleep record" do
|
28
|
+
pending
|
28
29
|
@new_sleep = client.create_sleep({authentication_token: "mqwpDx8RYcmSFBJDmy3J",
|
29
30
|
access_token: "DEMO_KEY",
|
30
31
|
total_sleep: 210,
|
@@ -49,7 +50,7 @@ describe Validic::Sleep do
|
|
49
50
|
|
50
51
|
context "#get_sleeps by organization" do
|
51
52
|
before do
|
52
|
-
@sleep = client.get_sleeps({organization_id: "
|
53
|
+
@sleep = client.get_sleeps({organization_id: "51aca5a06dedda916400002b", access_token: "ENTERPRISE_KEY"})
|
53
54
|
end
|
54
55
|
|
55
56
|
it "returns JSON response of Validic::Sleep", vcr: true do
|
@@ -67,7 +68,7 @@ describe Validic::Sleep do
|
|
67
68
|
|
68
69
|
context "#get_sleeps by user" do
|
69
70
|
before do
|
70
|
-
@sleep = client.get_sleeps({user_id: "
|
71
|
+
@sleep = client.get_sleeps({user_id: "52967e076dedda5d4300000b"})
|
71
72
|
end
|
72
73
|
|
73
74
|
it "returns JSON response of Validic::Sleep", vcr: true do
|