mini_strava 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,46 @@
1
+ require 'spec_helper'
2
+
3
+ module MiniStrava
4
+ module Models
5
+ describe Segment do
6
+ describe 'model attributes' do
7
+ it 'should set model attributes' do
8
+ expected = [
9
+ :id, :resource_state, :name,
10
+ :activity_type, :distance, :average_grade,
11
+ :maximum_grade, :elevation_high, :elevation_low,
12
+ :city, :state, :country
13
+ ].collect do |attr|
14
+ {
15
+ name: attr.to_s,
16
+ type: Model::DefaultAttrType,
17
+ default: nil
18
+ }
19
+ end
20
+
21
+ expect(Segment.model_attributes).to match_array(expected)
22
+ end
23
+ end
24
+
25
+ describe 'build from attributes' do
26
+ subject { Segment.build parse_fixture('segment') }
27
+
28
+ it 'should set attributes values' do
29
+ expect(subject.id).to eq(1364097)
30
+ expect(subject.resource_state).to eq(3)
31
+ expect(subject.name).to eq('Up Lower Caledonian Rd')
32
+ expect(subject.activity_type).to eq('Ride')
33
+ expect(subject.distance).to eq(1144.2)
34
+ expect(subject.average_grade).to eq(1.2)
35
+ expect(subject.maximum_grade).to eq(3.2)
36
+ expect(subject.elevation_high).to eq(37.0)
37
+ expect(subject.elevation_low).to eq(23.5)
38
+ expect(subject.city).to eq('London')
39
+ expect(subject.state).to eq('Greater London')
40
+ expect(subject.country).to eq('United Kingdom')
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+
@@ -0,0 +1,18 @@
1
+ require_relative '../lib/mini_strava/model'
2
+ require_relative '../lib/mini_strava/models/gear'
3
+ require_relative '../lib/mini_strava/models/athlete'
4
+ require_relative '../lib/mini_strava/models/activity'
5
+ require_relative '../lib/mini_strava/models/segment'
6
+ require_relative '../lib/mini_strava/models/segment_effort'
7
+ require_relative '../lib/mini_strava/client'
8
+
9
+ require 'json'
10
+
11
+ def fixture name
12
+ path = File.dirname(__FILE__) + "/fixtures/#{name}.json"
13
+ File.read path
14
+ end
15
+
16
+ def parse_fixture name
17
+ JSON.parse fixture name
18
+ end
metadata ADDED
@@ -0,0 +1,145 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mini_strava
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Andrea Franz
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-01-07 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: ripl
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: pry
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ description: A simple client for the strava API
70
+ email:
71
+ - andrea@gravityblast.com
72
+ executables:
73
+ - mini-strava
74
+ extensions: []
75
+ extra_rdoc_files: []
76
+ files:
77
+ - ".gitignore"
78
+ - Gemfile
79
+ - LICENSE.txt
80
+ - README.md
81
+ - Rakefile
82
+ - bin/mini-strava
83
+ - lib/mini_strava.rb
84
+ - lib/mini_strava/client.rb
85
+ - lib/mini_strava/model.rb
86
+ - lib/mini_strava/models/activity.rb
87
+ - lib/mini_strava/models/athlete.rb
88
+ - lib/mini_strava/models/gear.rb
89
+ - lib/mini_strava/models/segment.rb
90
+ - lib/mini_strava/models/segment_effort.rb
91
+ - lib/mini_strava/version.rb
92
+ - mini_strava.gemspec
93
+ - spec/client_spec.rb
94
+ - spec/fixtures/activities.json
95
+ - spec/fixtures/activity.json
96
+ - spec/fixtures/athlete.json
97
+ - spec/fixtures/gear.json
98
+ - spec/fixtures/segment.json
99
+ - spec/fixtures/segment_effort.json
100
+ - spec/model_spec.rb
101
+ - spec/models/activity_spec.rb
102
+ - spec/models/athlete_spec.rb
103
+ - spec/models/gear_spec.rb
104
+ - spec/models/segment_effort_spec.rb
105
+ - spec/models/segment_spec.rb
106
+ - spec/spec_helper.rb
107
+ homepage: https://github.com/pilu/mini-strava
108
+ licenses:
109
+ - MIT
110
+ metadata: {}
111
+ post_install_message:
112
+ rdoc_options: []
113
+ require_paths:
114
+ - lib
115
+ required_ruby_version: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - ">="
118
+ - !ruby/object:Gem::Version
119
+ version: '0'
120
+ required_rubygems_version: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ requirements: []
126
+ rubyforge_project:
127
+ rubygems_version: 2.4.5.1
128
+ signing_key:
129
+ specification_version: 4
130
+ summary: A simple client for the strava API
131
+ test_files:
132
+ - spec/client_spec.rb
133
+ - spec/fixtures/activities.json
134
+ - spec/fixtures/activity.json
135
+ - spec/fixtures/athlete.json
136
+ - spec/fixtures/gear.json
137
+ - spec/fixtures/segment.json
138
+ - spec/fixtures/segment_effort.json
139
+ - spec/model_spec.rb
140
+ - spec/models/activity_spec.rb
141
+ - spec/models/athlete_spec.rb
142
+ - spec/models/gear_spec.rb
143
+ - spec/models/segment_effort_spec.rb
144
+ - spec/models/segment_spec.rb
145
+ - spec/spec_helper.rb