bikes 0.0.1 → 0.0.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 30d9b5d9163eeb940d8e6d7248d03165d2e81399
4
- data.tar.gz: 29745a3340c7fa55466802bc8ad3c63a0913c75a
3
+ metadata.gz: db523843a8dffa0aa6029f3d319b76f6b96f3c12
4
+ data.tar.gz: bae0fc7c4b9d3c1a9caaa01891a72840fe0c83af
5
5
  SHA512:
6
- metadata.gz: efa9bc5f34bdf37b8a56db196481119662d782818733536f02ca763c0324c5cd6c5eeb51fbf009b17ae38a56ffd2dcd818d846a23ef2fd6c0fca49bb7d472059
7
- data.tar.gz: 03d94630098bb7980b6590ed21226e311e3b9f4329ae16fad4dc36a62c7b675dda08e29b5047e5a69e3f46862d35cd2a37bde21c3d8a032527b6ef8c07ee0b4e
6
+ metadata.gz: e25ce17de42d0be260d338c5066a8c318f8ef671d10f4c32c1f3894b62dec9c8bb703bd44c8c96d8dc3aafa77360cbd8a0d5a12f049d09be6f946bf29d221606
7
+ data.tar.gz: 1d3b24673a7df43568f4e53bbcc4ab3092c1abbbdb515324befee6f0a41d971c61a4e5d04a8adf34e6d3bd2a847d5908ffd545ed6be85be1a13bca6efa328de1
@@ -0,0 +1 @@
1
+ service: travis_ci
@@ -0,0 +1 @@
1
+ coverage
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.1.2
4
+ - 1.9.3
5
+ - jruby
data/Gemfile CHANGED
@@ -2,5 +2,7 @@ source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
4
 
5
- gem 'coveralls', require: false
6
- gem 'rake'
5
+ gem 'simplecov', '~> 0.9', '>= 0.9.1', require: false
6
+ gem 'coveralls', '~> 0.7', '>= 0.7.1', require: false
7
+ gem 'rake'
8
+
@@ -25,6 +25,7 @@ GEM
25
25
  multi_xml (>= 0.5.2)
26
26
  json (1.8.1)
27
27
  mime-types (2.4.1)
28
+ minitest (5.3.5)
28
29
  multi_json (1.10.1)
29
30
  multi_xml (0.5.5)
30
31
  netrc (0.7.7)
@@ -51,6 +52,8 @@ PLATFORMS
51
52
 
52
53
  DEPENDENCIES
53
54
  bikes!
54
- coveralls
55
+ coveralls (~> 0.7, >= 0.7.1)
56
+ minitest (~> 5.3, >= 5.3.5)
55
57
  rake
58
+ simplecov (~> 0.9, >= 0.9.1)
56
59
  webmock (~> 1.19, >= 1.19.0)
data/README.md CHANGED
@@ -1,36 +1,36 @@
1
- ### basics
1
+ ### v0.0.1 - simple wrapper for HTTP invocations
2
+
3
+ Wraps the results from the web service at [JC Decaux](https://developer.jcdecaux.com/#/opendata/vls?page=getstarted) in `Hashie::Mash` objects for ease of access.
4
+
5
+ You will need to get a developer key from the website to participate.
6
+
7
+ Make a client - send your API key and the 'contract' you are targeting
2
8
 
3
9
  ```
4
- class Station
5
- number / name / location
6
-
7
- can_pay
8
-
9
- bonus?
10
-
11
- open?
12
-
13
- stands - total, empty, bikes
14
-
10
+ require 'bikes'
11
+
12
+ b = Bikes.new(YOUR_API_KEY, "Dublin")
15
13
  ```
16
14
 
15
+ Get an array of the stations for that contract
16
+ ```
17
+ stations = b.stations
17
18
  ```
18
- class Client
19
- initialize(api_key)
20
19
 
21
- bikescheme('dublinbikes')
20
+ Get details of a specific station, uses the station number
21
+
22
+ ```
23
+ > s = b.station(88)
24
+ > s.name
25
+ => "BLACKHALL PLACE"
26
+ > s.available_bikes
27
+ => 26
28
+ > s.available_bike_stands
29
+ => 4
22
30
  ```
23
31
 
32
+ Get an array of all the 'contracts' that are deployed - each contract refers to one or more cities covered by a specific instance of the bike scheme
33
+
34
+ ```
35
+ b.contracts
24
36
  ```
25
- c = Client.new("7042a5efadece1f3839371445a1ae3d0983d78b7")
26
-
27
- bikes = c.bikescheme('dublinbikes')
28
-
29
- # No such scheme dude
30
-
31
- bikes.stations -> hash of stations, based on name
32
-
33
- bikes.station(name or number)
34
-
35
-
36
-
data/Rakefile CHANGED
@@ -3,7 +3,7 @@ task :default => :test
3
3
  require 'rake/testtask'
4
4
 
5
5
  Rake::TestTask.new do |t|
6
- t.libs << "test"
7
- t.test_files = FileList['test/unit/*.rb']
6
+ t.libs << "test"
7
+ t.test_files = FileList['test/*.rb']
8
8
  t.verbose = true
9
9
  end
@@ -2,7 +2,7 @@ require 'date'
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'bikes'
5
- s.version = '0.0.1'
5
+ s.version = '0.0.2'
6
6
  s.date = Date.today.to_s
7
7
  s.license = 'BSD'
8
8
  s.summary = "JCDecaux Bikes Client"
@@ -15,4 +15,5 @@ Gem::Specification.new do |s|
15
15
  s.add_runtime_dependency 'json', '~> 1.8', '>= 1.8.1'
16
16
  s.add_runtime_dependency 'hashie', '~> 2.1', '>= 2.1.2'
17
17
  s.add_development_dependency 'webmock', '~> 1.19', '>= 1.19.0'
18
+ s.add_development_dependency 'minitest', '~> 5.3', '>= 5.3.5'
18
19
  end
@@ -0,0 +1,34 @@
1
+ [
2
+ {
3
+ "name": "Rouen",
4
+ "cities": [
5
+ "Rouen"
6
+ ],
7
+ "commercial_name": "cy'clic",
8
+ "country_code": "FR"
9
+ },
10
+ {
11
+ "name": "Dublin",
12
+ "cities": [
13
+ "Dublin"
14
+ ],
15
+ "commercial_name": "dublinbikes",
16
+ "country_code": "IE"
17
+ },
18
+ {
19
+ "name": "Stockholm",
20
+ "cities": [
21
+ "Stockholm"
22
+ ],
23
+ "commercial_name": "Cyclocity",
24
+ "country_code": "SE"
25
+ },
26
+ {
27
+ "name": "Toyama",
28
+ "cities": [
29
+ "Toyama"
30
+ ],
31
+ "commercial_name": "cyclocity",
32
+ "country_code": "JP"
33
+ }
34
+ ]
@@ -0,0 +1,17 @@
1
+ {
2
+ "number": 32,
3
+ "name": "PEARSE STREET",
4
+ "address": "Pearse Street",
5
+ "position": {
6
+ "lat": 53.344304,
7
+ "lng": -6.250427
8
+ },
9
+ "banking": true,
10
+ "bonus": false,
11
+ "status": "OPEN",
12
+ "contract_name": "Dublin",
13
+ "bike_stands": 30,
14
+ "available_bike_stands": 2,
15
+ "available_bikes": 27,
16
+ "last_update": 1412874747000
17
+ }
@@ -1 +1,53 @@
1
- [{"number"=>42, "name"=>"SMITHFIELD NORTH", "address"=>"Smithfield North", "position"=>{"lat"=>53.349562, "lng"=>-6.278198}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>0, "available_bikes"=>30, "last_update"=>1412874782000}, {"number"=>30, "name"=>"PARNELL SQUARE NORTH", "address"=>"Parnell Square North", "position"=>{"lat"=>53.353462, "lng"=>-6.265305}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>15, "available_bikes"=>4, "last_update"=>1412874749000}, {"number"=>32, "name"=>"PEARSE STREET", "address"=>"Pearse Street", "position"=>{"lat"=>53.344304, "lng"=>-6.250427}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>2, "available_bikes"=>27, "last_update"=>1412874747000}, {"number"=>48, "name"=>"EXCISE WALK", "address"=>"Excise Walk", "position"=>{"lat"=>53.347777, "lng"=>-6.244239}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>27, "available_bikes"=>13, "last_update"=>1412874754000}, {"number"=>13, "name"=>"FITZWILLIAM SQUARE WEST", "address"=>"Fitzwilliam Square West", "position"=>{"lat"=>53.336074, "lng"=>-6.252825}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>29, "available_bikes"=>1, "last_update"=>1412874523000}, {"number"=>81, "name"=>"ST. JAMES HOSPITAL (CENTRAL)", "address"=>"St. James Hospital (Central)", "position"=>{"lat"=>53.339983, "lng"=>-6.295594}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>35, "available_bikes"=>5, "last_update"=>1412874445000}, {"number"=>68, "name"=>"HANOVER QUAY", "address"=>"Hanover Quay", "position"=>{"lat"=>53.344115, "lng"=>-6.237153}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>36, "available_bikes"=>3, "last_update"=>1412874781000}, {"number"=>74, "name"=>"OLIVER BOND STREET", "address"=>"Oliver Bond Street", "position"=>{"lat"=>53.343893, "lng"=>-6.280531}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>17, "available_bikes"=>13, "last_update"=>1412874607000}, {"number"=>87, "name"=>"COLLINS BARRACKS MUSEUM", "address"=>"Collins Barracks Museum", "position"=>{"lat"=>53.347477, "lng"=>-6.28525}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>38, "available_bike_stands"=>37, "available_bikes"=>1, "last_update"=>1412874763000}, {"number"=>84, "name"=>"BROOKFIELD ROAD", "address"=>"Brookfield Road", "position"=>{"lat"=>53.339005, "lng"=>-6.300217}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>14, "available_bikes"=>16, "last_update"=>1412874573000}, {"number"=>54, "name"=>"CLONMEL STREET", "address"=>"Clonmel Street", "position"=>{"lat"=>53.336021, "lng"=>-6.26298}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>33, "available_bike_stands"=>32, "available_bikes"=>1, "last_update"=>1412874610000}, {"number"=>20, "name"=>"JAMES STREET EAST", "address"=>"James Street East", "position"=>{"lat"=>53.336485, "lng"=>-6.248174}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>29, "available_bikes"=>1, "last_update"=>1412874756000}, {"number"=>56, "name"=>"MOUNT STREET LOWER", "address"=>"Mount Street Lower", "position"=>{"lat"=>53.33796, "lng"=>-6.24153}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>34, "available_bikes"=>6, "last_update"=>1412874740000}, {"number"=>6, "name"=>"CHRISTCHURCH PLACE", "address"=>"Christchurch Place", "position"=>{"lat"=>53.343368, "lng"=>-6.27012}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>17, "available_bikes"=>3, "last_update"=>1412874542000}, {"number"=>18, "name"=>"GRANTHAM STREET", "address"=>"Grantham Street", "position"=>{"lat"=>53.334123, "lng"=>-6.265436}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>21, "available_bikes"=>9, "last_update"=>1412874779000}, {"number"=>52, "name"=>"YORK STREET EAST", "address"=>"York Street East", "position"=>{"lat"=>53.338755, "lng"=>-6.262003}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>32, "available_bike_stands"=>16, "available_bikes"=>16, "last_update"=>1412874725000}, {"number"=>43, "name"=>"PORTOBELLO ROAD", "address"=>"Portobello Road", "position"=>{"lat"=>53.330091, "lng"=>-6.268044}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>2, "available_bikes"=>28, "last_update"=>1412874776000}, {"number"=>31, "name"=>"PARNELL STREET", "address"=>"Parnell Street", "position"=>{"lat"=>53.350929, "lng"=>-6.265125}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>3, "available_bikes"=>17, "last_update"=>1412874773000}, {"number"=>98, "name"=>"FREDERICK STREET SOUTH", "address"=>"Frederick Street South", "position"=>{"lat"=>53.341515, "lng"=>-6.256853}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>34, "available_bikes"=>6, "last_update"=>1412874541000}, {"number"=>14, "name"=>"FOWNES STREET UPPER", "address"=>"Fownes Street Upper", "position"=>{"lat"=>53.344603, "lng"=>-6.263371}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>7, "available_bikes"=>23, "last_update"=>1412874777000}, {"number"=>1, "name"=>"CHATHAM STREET", "address"=>"Chatham Street", "position"=>{"lat"=>53.340962, "lng"=>-6.262287}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>29, "available_bike_stands"=>20, "available_bikes"=>9, "last_update"=>1412874709000}, {"number"=>23, "name"=>"CUSTOM HOUSE", "address"=>"Custom House", "position"=>{"lat"=>53.348279, "lng"=>-6.254662}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>10, "available_bikes"=>20, "last_update"=>1412874743000}, {"number"=>90, "name"=>"BENSON STREET", "address"=>"Benson Street", "position"=>{"lat"=>53.344153, "lng"=>-6.233451}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>40, "available_bikes"=>0, "last_update"=>1412874273000}, {"number"=>63, "name"=>"FENIAN STREET", "address"=>"Fenian Street", "position"=>{"lat"=>53.341428, "lng"=>-6.24672}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>35, "available_bike_stands"=>34, "available_bikes"=>1, "last_update"=>1412874561000}, {"number"=>91, "name"=>"SOUTH DOCK ROAD", "address"=>"South Dock Road", "position"=>{"lat"=>53.341833, "lng"=>-6.231291}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>12, "available_bikes"=>18, "last_update"=>1412874504000}, {"number"=>67, "name"=>"THE POINT", "address"=>"The Point", "position"=>{"lat"=>53.346867, "lng"=>-6.230852}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>36, "available_bikes"=>4, "last_update"=>1412874608000}, {"number"=>62, "name"=>"LIME STREET", "address"=>"Lime Street", "position"=>{"lat"=>53.346026, "lng"=>-6.243576}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>38, "available_bikes"=>0, "last_update"=>1412874582000}, {"number"=>97, "name"=>"KILMAINHAM GAOL", "address"=>"Kilmainham Gaol", "position"=>{"lat"=>53.342113, "lng"=>-6.310015}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>22, "available_bikes"=>17, "last_update"=>1412874527000}, {"number"=>49, "name"=>"GUILD STREET", "address"=>"Guild Street", "position"=>{"lat"=>53.347932, "lng"=>-6.240928}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>19, "available_bikes"=>20, "last_update"=>1412874728000}, {"number"=>19, "name"=>"HERBERT PLACE", "address"=>"Herbert Place", "position"=>{"lat"=>53.334432, "lng"=>-6.245575}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>30, "available_bikes"=>0, "last_update"=>1412874771000}, {"number"=>102, "name"=>"WESTERN WAY", "address"=>"Western Way", "position"=>{"lat"=>53.354929, "lng"=>-6.269425}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>24, "available_bikes"=>16, "last_update"=>1412874549000}, {"number"=>53, "name"=>"NEWMAN HOUSE", "address"=>"Newman House", "position"=>{"lat"=>53.337132, "lng"=>-6.26059}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>38, "available_bikes"=>2, "last_update"=>1412874726000}, {"number"=>101, "name"=>"KING STREET NORTH", "address"=>"King Street North", "position"=>{"lat"=>53.350291, "lng"=>-6.273507}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>27, "available_bikes"=>3, "last_update"=>1412874358000}, {"number"=>11, "name"=>"EARLSFORT TERRACE", "address"=>"Earlsfort Terrace", "position"=>{"lat"=>53.334019, "lng"=>-6.258371}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>19, "available_bikes"=>11, "last_update"=>1412874776000}, {"number"=>17, "name"=>"GOLDEN LANE", "address"=>"Golden Lane", "position"=>{"lat"=>53.340803, "lng"=>-6.267732}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>16, "available_bikes"=>4, "last_update"=>1412874514000}, {"number"=>45, "name"=>"DEVERELL PLACE", "address"=>"Deverell Place", "position"=>{"lat"=>53.351464, "lng"=>-6.255265}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>14, "available_bikes"=>16, "last_update"=>1412874772000}, {"number"=>72, "name"=>"JOHN STREET WEST", "address"=>"John Street West", "position"=>{"lat"=>53.343105, "lng"=>-6.277167}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>31, "available_bike_stands"=>29, "available_bikes"=>2, "last_update"=>1412874644000}, {"number"=>99, "name"=>"CITY QUAY", "address"=>"City Quay", "position"=>{"lat"=>53.346637, "lng"=>-6.246154}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>30, "available_bikes"=>0, "last_update"=>1412874357000}, {"number"=>9, "name"=>"EXCHEQUER STREET", "address"=>"Exchequer Street", "position"=>{"lat"=>53.343034, "lng"=>-6.263578}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>24, "available_bike_stands"=>13, "available_bikes"=>11, "last_update"=>1412874775000}, {"number"=>55, "name"=>"HATCH STREET", "address"=>"Hatch Street", "position"=>{"lat"=>53.33403, "lng"=>-6.260714}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>36, "available_bike_stands"=>35, "available_bikes"=>1, "last_update"=>1412874326000}, {"number"=>5, "name"=>"CHARLEMONT PLACE", "address"=>"Charlemont Street", "position"=>{"lat"=>53.330662, "lng"=>-6.260177}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>13, "available_bikes"=>16, "last_update"=>1412874776000}, {"number"=>61, "name"=>"HARDWICKE PLACE", "address"=>"Hardwicke Place", "position"=>{"lat"=>53.357043, "lng"=>-6.263232}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>25, "available_bike_stands"=>25, "available_bikes"=>0, "last_update"=>1412874732000}, {"number"=>77, "name"=>"WOLFE TONE STREET", "address"=>"Wolfe Tone Street", "position"=>{"lat"=>53.348875, "lng"=>-6.267459}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>29, "available_bike_stands"=>10, "available_bikes"=>19, "last_update"=>1412874761000}, {"number"=>73, "name"=>"FRANCIS STREET", "address"=>"Francis Street", "position"=>{"lat"=>53.342081, "lng"=>-6.275233}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>26, "available_bikes"=>4, "last_update"=>1412874560000}, {"number"=>4, "name"=>"GREEK STREET", "address"=>"Greek Street", "position"=>{"lat"=>53.346874, "lng"=>-6.272976}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>12, "available_bikes"=>8, "last_update"=>1412874782000}, {"number"=>7, "name"=>"HIGH STREET", "address"=>"High Street", "position"=>{"lat"=>53.343565, "lng"=>-6.275071}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>29, "available_bike_stands"=>27, "available_bikes"=>2, "last_update"=>1412874616000}, {"number"=>60, "name"=>"NORTH CIRCULAR ROAD", "address"=>"North Circular Road", "position"=>{"lat"=>53.359624, "lng"=>-6.260348}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>2, "available_bikes"=>28, "last_update"=>1412874749000}, {"number"=>38, "name"=>"TALBOT STREET", "address"=>"Talbot Street", "position"=>{"lat"=>53.350974, "lng"=>-6.25294}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>39, "available_bikes"=>1, "last_update"=>1412874748000}, {"number"=>58, "name"=>"SIR PATRICK DUN'S", "address"=>"Sir Patrick's Dun", "position"=>{"lat"=>53.339218, "lng"=>-6.240642}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>37, "available_bikes"=>3, "last_update"=>1412874751000}, {"number"=>66, "name"=>"NEW CENTRAL BANK", "address"=>"New Central Bank", "position"=>{"lat"=>53.347122, "lng"=>-6.234749}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>38, "available_bikes"=>0, "last_update"=>1412874340000}, {"number"=>16, "name"=>"GEORGES QUAY", "address"=>"Georges Quay", "position"=>{"lat"=>53.347508, "lng"=>-6.252192}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>12, "available_bikes"=>8, "last_update"=>1412874378000}, {"number"=>82, "name"=>"MOUNT BROWN", "address"=>"Mount Brown", "position"=>{"lat"=>53.341645, "lng"=>-6.29719}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>22, "available_bike_stands"=>16, "available_bikes"=>6, "last_update"=>1412874217000}, {"number"=>95, "name"=>"ROYAL HOSPITAL", "address"=>"Royal Hospital", "position"=>{"lat"=>53.343897, "lng"=>-6.29706}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>26, "available_bikes"=>14, "last_update"=>1412874722000}, {"number"=>93, "name"=>"HEUSTON STATION (CENTRAL)", "address"=>"Heuston Station (Central)", "position"=>{"lat"=>53.346603, "lng"=>-6.296924}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>7, "available_bikes"=>33, "last_update"=>1412874312000}, {"number"=>22, "name"=>"TOWNSEND STREET", "address"=>"Townsend Street", "position"=>{"lat"=>53.345922, "lng"=>-6.254614}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>8, "available_bikes"=>12, "last_update"=>1412874769000}, {"number"=>34, "name"=>"PORTOBELLO HARBOUR", "address"=>"Portobello Harbour", "position"=>{"lat"=>53.330362, "lng"=>-6.265163}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>1, "available_bikes"=>29, "last_update"=>1412874754000}, {"number"=>8, "name"=>"CUSTOM HOUSE QUAY", "address"=>"Custom House Quay", "position"=>{"lat"=>53.347884, "lng"=>-6.248048}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>30, "available_bikes"=>0, "last_update"=>1412874704000}, {"number"=>27, "name"=>"MOLESWORTH STREET", "address"=>"Molesworth Street", "position"=>{"lat"=>53.341288, "lng"=>-6.258117}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>20, "available_bikes"=>0, "last_update"=>1412874743000}, {"number"=>96, "name"=>"KILMAINHAM LANE", "address"=>"Kilmainham Lane", "position"=>{"lat"=>53.341805, "lng"=>-6.305085}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>23, "available_bikes"=>7, "last_update"=>1412874309000}, {"number"=>76, "name"=>"MARKET STREET SOUTH", "address"=>"Market Street South", "position"=>{"lat"=>53.342296, "lng"=>-6.287661}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>38, "available_bike_stands"=>31, "available_bikes"=>7, "last_update"=>1412874415000}, {"number"=>71, "name"=>"KEVIN STREET", "address"=>"Kevin Street", "position"=>{"lat"=>53.337757, "lng"=>-6.267699}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>33, "available_bikes"=>7, "last_update"=>1412874765000}, {"number"=>79, "name"=>"ECCLES STREET EAST", "address"=>"Eccles Street East", "position"=>{"lat"=>53.358115, "lng"=>-6.265601}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>27, "available_bike_stands"=>27, "available_bikes"=>0, "last_update"=>1412874649000}, {"number"=>69, "name"=>"GRAND CANAL DOCK", "address"=>"Grand Canal Dock", "position"=>{"lat"=>53.342638, "lng"=>-6.238695}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>38, "available_bikes"=>2, "last_update"=>1412874711000}, {"number"=>25, "name"=>"MERRION SQUARE EAST", "address"=>"Merrion Square East", "position"=>{"lat"=>53.339434, "lng"=>-6.246548}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>30, "available_bikes"=>0, "last_update"=>1412874456000}, {"number"=>51, "name"=>"YORK STREET WEST", "address"=>"York Street West", "position"=>{"lat"=>53.339334, "lng"=>-6.264699}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>28, "available_bikes"=>12, "last_update"=>1412874629000}, {"number"=>37, "name"=>"ST. STEPHEN'S GREEN SOUTH", "address"=>"St. Stephen's Green South", "position"=>{"lat"=>53.337494, "lng"=>-6.26199}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>30, "available_bikes"=>0, "last_update"=>1412874750000}, {"number"=>59, "name"=>"DENMARK STREET GREAT", "address"=>"Denmark Street Great", "position"=>{"lat"=>53.35561, "lng"=>-6.261397}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>17, "available_bikes"=>3, "last_update"=>1412874412000}, {"number"=>94, "name"=>"HEUSTON STATION (CAR PARK)", "address"=>"Heuston Station (Car Park)", "position"=>{"lat"=>53.346985, "lng"=>-6.297804}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>5, "available_bikes"=>35, "last_update"=>1412874526000}, {"number"=>36, "name"=>"ST. STEPHEN'S GREEN EAST", "address"=>"St. Stephen's Green East", "position"=>{"lat"=>53.337824, "lng"=>-6.256035}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>39, "available_bikes"=>0, "last_update"=>1412874689000}, {"number"=>12, "name"=>"ECCLES STREET", "address"=>"Eccles Street", "position"=>{"lat"=>53.359246, "lng"=>-6.269779}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>12, "available_bikes"=>8, "last_update"=>1412874409000}, {"number"=>78, "name"=>"MATER HOSPITAL", "address"=>"Mater Hospital", "position"=>{"lat"=>53.359967, "lng"=>-6.264828}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>23, "available_bikes"=>17, "last_update"=>1412874632000}, {"number"=>2, "name"=>"BLESSINGTON STREET", "address"=>"Blessington Street", "position"=>{"lat"=>53.356769, "lng"=>-6.26814}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>18, "available_bikes"=>2, "last_update"=>1412874566000}, {"number"=>26, "name"=>"MERRION SQUARE WEST", "address"=>"Merrion Square West", "position"=>{"lat"=>53.339764, "lng"=>-6.251988}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>10, "available_bikes"=>9, "last_update"=>1412874778000}, {"number"=>65, "name"=>"CONVENTION CENTRE", "address"=>"Convention Centre", "position"=>{"lat"=>53.34744, "lng"=>-6.238523}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>39, "available_bikes"=>1, "last_update"=>1412874690000}, {"number"=>15, "name"=>"HARDWICKE STREET", "address"=>"Hardwicke Street", "position"=>{"lat"=>53.355473, "lng"=>-6.264423}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>16, "available_bike_stands"=>9, "available_bikes"=>7, "last_update"=>1412874492000}, {"number"=>35, "name"=>"SMITHFIELD", "address"=>"Smithfield", "position"=>{"lat"=>53.347692, "lng"=>-6.278214}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>20, "available_bikes"=>10, "last_update"=>1412874763000}, {"number"=>10, "name"=>"DAME STREET", "address"=>"Dame Street", "position"=>{"lat"=>53.344007, "lng"=>-6.266802}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>16, "available_bike_stands"=>2, "available_bikes"=>14, "last_update"=>1412874751000}, {"number"=>64, "name"=>"SANDWITH STREET", "address"=>"Sandwith Street", "position"=>{"lat"=>53.345203, "lng"=>-6.247163}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>40, "available_bikes"=>0, "last_update"=>1412874482000}, {"number"=>33, "name"=>"PRINCES STREET / O'CONNELL STREET", "address"=>"Princes Street / O'Connell Street", "position"=>{"lat"=>53.349013, "lng"=>-6.260311}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>23, "available_bike_stands"=>0, "available_bikes"=>23, "last_update"=>1412874776000}, {"number"=>57, "name"=>"GRATTAN STREET", "address"=>"Grattan Street", "position"=>{"lat"=>53.339629, "lng"=>-6.243778}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>23, "available_bike_stands"=>23, "available_bikes"=>0, "last_update"=>1412874572000}, {"number"=>80, "name"=>"ST JAMES HOSPITAL (LUAS)", "address"=>"St James Hospital (Luas)", "position"=>{"lat"=>53.341359, "lng"=>-6.292951}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>30, "available_bikes"=>10, "last_update"=>1412874766000}, {"number"=>3, "name"=>"BOLTON STREET", "address"=>"Bolton Street", "position"=>{"lat"=>53.351182, "lng"=>-6.269859}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>20, "available_bikes"=>0, "last_update"=>1412874501000}, {"number"=>46, "name"=>"STRAND STREET GREAT", "address"=>"Strand Street Great", "position"=>{"lat"=>53.347082, "lng"=>-6.264192}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>35, "available_bike_stands"=>15, "available_bikes"=>20, "last_update"=>1412874721000}, {"number"=>70, "name"=>"BARROW STREET", "address"=>"Barrow Street", "position"=>{"lat"=>53.341655, "lng"=>-6.236198}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>31, "available_bikes"=>9, "last_update"=>1412874781000}, {"number"=>28, "name"=>"MOUNTJOY SQUARE WEST", "address"=>"Mountjoy Square West", "position"=>{"lat"=>53.356299, "lng"=>-6.258586}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>16, "available_bikes"=>14, "last_update"=>1412874780000}, {"number"=>39, "name"=>"WILTON TERRACE", "address"=>"Wilton Terrace", "position"=>{"lat"=>53.332383, "lng"=>-6.252717}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>12, "available_bikes"=>8, "last_update"=>1412874780000}, {"number"=>21, "name"=>"LEINSTER STREET SOUTH", "address"=>"Leinster Street South", "position"=>{"lat"=>53.34218, "lng"=>-6.254485}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>6, "available_bikes"=>23, "last_update"=>1412874770000}, {"number"=>75, "name"=>"JAMES STREET", "address"=>"James Street", "position"=>{"lat"=>53.343456, "lng"=>-6.287409}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>30, "available_bikes"=>9, "last_update"=>1412874721000}, {"number"=>86, "name"=>"PARKGATE STREET", "address"=>"Parkgate Street", "position"=>{"lat"=>53.347972, "lng"=>-6.291804}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>38, "available_bike_stands"=>1, "available_bikes"=>37, "last_update"=>1412874534000}, {"number"=>100, "name"=>"HEUSTON BRIDGE (SOUTH)", "address"=>"Heuston Bridge (South)", "position"=>{"lat"=>53.347106, "lng"=>-6.292041}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>25, "available_bike_stands"=>1, "available_bikes"=>24, "last_update"=>1412874780000}, {"number"=>24, "name"=>"CATHAL BRUGHA STREET", "address"=>"Cathal Brugha Street", "position"=>{"lat"=>53.352149, "lng"=>-6.260533}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>0, "available_bikes"=>20, "last_update"=>1412874780000}, {"number"=>85, "name"=>"ROTHE ABBEY", "address"=>"Rothe Abbey", "position"=>{"lat"=>53.338776, "lng"=>-6.30395}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>35, "available_bike_stands"=>11, "available_bikes"=>24, "last_update"=>1412874779000}, {"number"=>44, "name"=>"UPPER SHERRARD STREET", "address"=>"Upper Sherrard Street", "position"=>{"lat"=>53.358437, "lng"=>-6.260641}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>19, "available_bikes"=>11, "last_update"=>1412874743000}, {"number"=>89, "name"=>"FITZWILLIAM SQUARE EAST", "address"=>"Fitzwilliam Square East", "position"=>{"lat"=>53.335211, "lng"=>-6.2509}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>40, "available_bikes"=>0, "last_update"=>1412874627000}, {"number"=>41, "name"=>"HARCOURT TERRACE", "address"=>"Harcourt Terrace", "position"=>{"lat"=>53.332763, "lng"=>-6.257942}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>20, "available_bike_stands"=>16, "available_bikes"=>4, "last_update"=>1412874578000}, {"number"=>40, "name"=>"JERVIS STREET", "address"=>"Jervis Street", "position"=>{"lat"=>53.3483, "lng"=>-6.266651}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>21, "available_bike_stands"=>3, "available_bikes"=>18, "last_update"=>1412874773000}, {"number"=>29, "name"=>"ORMOND QUAY UPPER", "address"=>"Ormond Quay Upper", "position"=>{"lat"=>53.346057, "lng"=>-6.268001}, "banking"=>true, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>29, "available_bike_stands"=>4, "available_bikes"=>25, "last_update"=>1412874781000}, {"number"=>83, "name"=>"EMMET ROAD", "address"=>"Emmet Road", "position"=>{"lat"=>53.340714, "lng"=>-6.308191}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>8, "available_bikes"=>32, "last_update"=>1412874609000}, {"number"=>92, "name"=>"HEUSTON BRIDGE (NORTH)", "address"=>"Heuston Bridge (North)", "position"=>{"lat"=>53.347802, "lng"=>-6.292432}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>40, "available_bike_stands"=>0, "available_bikes"=>40, "last_update"=>1412874245000}, {"number"=>88, "name"=>"BLACKHALL PLACE", "address"=>"Blackhall Place", "position"=>{"lat"=>53.3488, "lng"=>-6.281637}, "banking"=>false, "bonus"=>false, "status"=>"OPEN", "contract_name"=>"Dublin", "bike_stands"=>30, "available_bike_stands"=>14, "available_bikes"=>16, "last_update"=>1412874744000}]
1
+ [
2
+ {
3
+ "number": 42,
4
+ "name": "SMITHFIELD NORTH",
5
+ "address": "Smithfield North",
6
+ "position": {
7
+ "lat": 53.349562,
8
+ "lng": -6.278198
9
+ },
10
+ "banking": true,
11
+ "bonus": false,
12
+ "status": "OPEN",
13
+ "contract_name": "Dublin",
14
+ "bike_stands": 30,
15
+ "available_bike_stands": 0,
16
+ "available_bikes": 30,
17
+ "last_update": 1412874782000
18
+ },
19
+ {
20
+ "number": 30,
21
+ "name": "PARNELL SQUARE NORTH",
22
+ "address": "Parnell Square North",
23
+ "position": {
24
+ "lat": 53.353462,
25
+ "lng": -6.265305
26
+ },
27
+ "banking": true,
28
+ "bonus": false,
29
+ "status": "OPEN",
30
+ "contract_name": "Dublin",
31
+ "bike_stands": 20,
32
+ "available_bike_stands": 15,
33
+ "available_bikes": 4,
34
+ "last_update": 1412874749000
35
+ },
36
+ {
37
+ "number": 32,
38
+ "name": "PEARSE STREET",
39
+ "address": "Pearse Street",
40
+ "position": {
41
+ "lat": 53.344304,
42
+ "lng": -6.250427
43
+ },
44
+ "banking": true,
45
+ "bonus": false,
46
+ "status": "OPEN",
47
+ "contract_name": "Dublin",
48
+ "bike_stands": 30,
49
+ "available_bike_stands": 2,
50
+ "available_bikes": 27,
51
+ "last_update": 1412874747000
52
+ }
53
+ ]
@@ -0,0 +1,12 @@
1
+ require 'simplecov'
2
+ SimpleCov.start do
3
+ add_filter '/test/'
4
+ end
5
+
6
+ require 'minitest/autorun'
7
+ require 'webmock/minitest'
8
+ require_relative '../lib/bikes'
9
+
10
+ def test_data(name)
11
+ File.new(File.expand_path(File.dirname(__FILE__) + "/data/#{name.to_s}.json"))
12
+ end
@@ -0,0 +1,57 @@
1
+ require_relative './helpers'
2
+
3
+ class TestBikes < Minitest::Spec
4
+
5
+ STATIONS_URL = 'https://api.jcdecaux.com/vls/v1/stations'
6
+ CONTRACTS_URL = 'https://api.jcdecaux.com/vls/v1/contracts'
7
+ API_KEY = '111111111111111111'
8
+
9
+ def setup
10
+ @contracts = test_data(:contracts)
11
+ @stations = test_data(:stations)
12
+ @station32 = test_data(:station32)
13
+ @bikes = Bikes.new(API_KEY, 'Dublin')
14
+ end
15
+
16
+ def test_contracts
17
+ stub_request(:get, CONTRACTS_URL).with(query: { apiKey: API_KEY}).to_return({body: @contracts.read})
18
+
19
+ b = @bikes.contracts
20
+
21
+ b.size.must_equal 4
22
+
23
+ b[1].name.must_equal 'Dublin'
24
+ b[1].cities[0].must_equal 'Dublin'
25
+ b[1].country_code.must_equal 'IE'
26
+ b[1].commercial_name.must_equal 'dublinbikes'
27
+ end
28
+
29
+ def test_stations
30
+ stub_request(:get, STATIONS_URL).with(query: { apiKey: API_KEY, contract: 'Dublin'}).to_return({body: @stations.read})
31
+ s = @bikes.stations
32
+
33
+ s.size.must_equal 3
34
+ s[2].number.must_equal 32
35
+ s[2].name.must_equal "PEARSE STREET"
36
+ s[2].address.must_equal "Pearse Street"
37
+ s[2].bike_stands.must_equal 30
38
+ s[2].available_bike_stands.must_equal 2
39
+ s[2].available_bikes.must_equal 27
40
+ end
41
+
42
+ def test_station
43
+ snum = 32
44
+
45
+ stub_request(:get, STATIONS_URL + "/#{snum}").with(query: { apiKey: API_KEY, contract: 'Dublin'}).to_return({body: @station32.read})
46
+
47
+ s = @bikes.station(snum)
48
+
49
+ s.wont_be_nil
50
+ s.number.must_equal snum
51
+ end
52
+
53
+ def test_bad_thing_happen
54
+ # This test to be written. Mock errors come from the API.
55
+ # response code is 400 and { "error" : "Please provide contract query parameter" }
56
+ end
57
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bikes
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oisin Hurley
@@ -90,12 +90,35 @@ dependencies:
90
90
  - - ">="
91
91
  - !ruby/object:Gem::Version
92
92
  version: 1.19.0
93
+ - !ruby/object:Gem::Dependency
94
+ name: minitest
95
+ requirement: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: '5.3'
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: 5.3.5
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '5.3'
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ version: 5.3.5
93
113
  description: Ruby client for JCDecaux urban bike rental schemes
94
114
  email: oisin@nis.io
95
115
  executables: []
96
116
  extensions: []
97
117
  extra_rdoc_files: []
98
118
  files:
119
+ - ".coveralls.yml"
120
+ - ".gitignore"
121
+ - ".travis.yml"
99
122
  - Gemfile
100
123
  - Gemfile.lock
101
124
  - LICENSE.txt
@@ -103,7 +126,11 @@ files:
103
126
  - Rakefile
104
127
  - bikes.gemspec
105
128
  - lib/bikes.rb
129
+ - test/data/contracts.json
130
+ - test/data/station32.json
106
131
  - test/data/stations.json
132
+ - test/helpers.rb
133
+ - test/test_bikes.rb
107
134
  homepage: http://rubygems.org/gems/bikes
108
135
  licenses:
109
136
  - BSD