supreme_golf 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.
@@ -0,0 +1,85 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://supremegolf.com/api/v4/tee_times/at/3003?date=2015-05-31
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Transfer-Encoding:
24
+ - chunked
25
+ Connection:
26
+ - close
27
+ Vary:
28
+ - Accept-Encoding
29
+ - Origin
30
+ Status:
31
+ - 200 OK
32
+ X-Api-Version:
33
+ - 4.1.7
34
+ Access-Control-Allow-Origin:
35
+ - "*"
36
+ Cache-Control:
37
+ - max-age=0, private, must-revalidate
38
+ X-Request-Id:
39
+ - 94fcf6bd-5273-4167-99e1-c45e9a2a00ea
40
+ X-Runtime:
41
+ - '0.079109'
42
+ X-Powered-By:
43
+ - Phusion Passenger 4.0.59
44
+ Date:
45
+ - Sun, 31 May 2015 04:17:50 GMT
46
+ Server:
47
+ - nginx + Phusion Passenger 4.0.59
48
+ body:
49
+ encoding: UTF-8
50
+ string: '{"tee_times":[{"id":365267167,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"62.00","regular_rate":"100.00","savings_pct":38,"savings_amount":"38.00","tee_off_at_formatted":"6:10AM","tee_off_at_iso8601":"2015-05-31T06:10:00Z","amenities":["is_18_holes","is_riding","is_earlybird"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":365328431,"course_id":3003,"currency":"USD","players":[1,2],"rate":"69.00","regular_rate":"100.00","savings_pct":31,"savings_amount":"31.00","tee_off_at_formatted":"6:20AM","tee_off_at_iso8601":"2015-05-31T06:20:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
51
+ Network"}},{"id":364565105,"course_id":3003,"currency":"USD","players":[1,2],"rate":"62.00","regular_rate":"100.00","savings_pct":38,"savings_amount":"38.00","tee_off_at_formatted":"6:20AM","tee_off_at_iso8601":"2015-05-31T06:20:00Z","amenities":["is_18_holes","is_riding","is_earlybird"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352638718,"course_id":3003,"currency":"USD","players":[1],"rate":"70.00","regular_rate":"100.00","savings_pct":30,"savings_amount":"30.00","tee_off_at_formatted":"6:30AM","tee_off_at_iso8601":"2015-05-31T06:30:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
52
+ Network"}},{"id":363306473,"course_id":3003,"currency":"USD","players":[1],"rate":"59.00","regular_rate":"100.00","savings_pct":41,"savings_amount":"41.00","tee_off_at_formatted":"6:30AM","tee_off_at_iso8601":"2015-05-31T06:30:00Z","amenities":["is_18_holes","is_riding","is_earlybird"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":359198551,"course_id":3003,"currency":"USD","players":[1],"rate":"59.00","regular_rate":"100.00","savings_pct":41,"savings_amount":"41.00","tee_off_at_formatted":"6:40AM","tee_off_at_iso8601":"2015-05-31T06:40:00Z","amenities":["is_18_holes","is_riding","is_earlybird"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":359198549,"course_id":3003,"currency":"USD","players":[1],"rate":"61.00","regular_rate":"100.00","savings_pct":39,"savings_amount":"39.00","tee_off_at_formatted":"7:00AM","tee_off_at_iso8601":"2015-05-31T07:00:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352638752,"course_id":3003,"currency":"USD","players":[1],"rate":"76.00","regular_rate":"100.00","savings_pct":24,"savings_amount":"24.00","tee_off_at_formatted":"7:00AM","tee_off_at_iso8601":"2015-05-31T07:00:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
53
+ Network"}},{"id":364391282,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"69.00","regular_rate":"100.00","savings_pct":31,"savings_amount":"31.00","tee_off_at_formatted":"7:10AM","tee_off_at_iso8601":"2015-05-31T07:10:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352638786,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"79.00","regular_rate":"100.00","savings_pct":21,"savings_amount":"21.00","tee_off_at_formatted":"7:30AM","tee_off_at_iso8601":"2015-05-31T07:30:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
54
+ Network"}},{"id":359198547,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"72.00","regular_rate":"100.00","savings_pct":28,"savings_amount":"28.00","tee_off_at_formatted":"7:40AM","tee_off_at_iso8601":"2015-05-31T07:40:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":359198545,"course_id":3003,"currency":"USD","players":[1,2],"rate":"69.00","regular_rate":"100.00","savings_pct":31,"savings_amount":"31.00","tee_off_at_formatted":"8:00AM","tee_off_at_iso8601":"2015-05-31T08:00:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352638828,"course_id":3003,"currency":"USD","players":[1,2],"rate":"83.00","regular_rate":"100.00","savings_pct":17,"savings_amount":"17.00","tee_off_at_formatted":"8:00AM","tee_off_at_iso8601":"2015-05-31T08:00:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
55
+ Network"}},{"id":361149116,"course_id":3003,"currency":"USD","players":[1],"rate":"64.00","regular_rate":"100.00","savings_pct":36,"savings_amount":"36.00","tee_off_at_formatted":"8:30AM","tee_off_at_iso8601":"2015-05-31T08:30:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":361149105,"course_id":3003,"currency":"USD","players":[1,2],"rate":"69.00","regular_rate":"100.00","savings_pct":31,"savings_amount":"31.00","tee_off_at_formatted":"8:40AM","tee_off_at_iso8601":"2015-05-31T08:40:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":365328542,"course_id":3003,"currency":"USD","players":[1,2],"rate":"88.00","regular_rate":"100.00","savings_pct":12,"savings_amount":"12.00","tee_off_at_formatted":"8:40AM","tee_off_at_iso8601":"2015-05-31T08:40:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
56
+ Network"}},{"id":362442470,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"74.00","regular_rate":"100.00","savings_pct":26,"savings_amount":"26.00","tee_off_at_formatted":"8:50AM","tee_off_at_iso8601":"2015-05-31T08:50:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":359570758,"course_id":3003,"currency":"USD","players":[1,2],"rate":"89.00","regular_rate":"100.00","savings_pct":11,"savings_amount":"11.00","tee_off_at_formatted":"9:10AM","tee_off_at_iso8601":"2015-05-31T09:10:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
57
+ Network"}},{"id":352638954,"course_id":3003,"currency":"USD","players":[1,2],"rate":"89.00","regular_rate":"100.00","savings_pct":11,"savings_amount":"11.00","tee_off_at_formatted":"9:30AM","tee_off_at_iso8601":"2015-05-31T09:30:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
58
+ Network"}},{"id":359198523,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"73.00","regular_rate":"100.00","savings_pct":27,"savings_amount":"27.00","tee_off_at_formatted":"9:40AM","tee_off_at_iso8601":"2015-05-31T09:40:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":364168576,"course_id":3003,"currency":"USD","players":[1],"rate":"59.00","regular_rate":"100.00","savings_pct":41,"savings_amount":"41.00","tee_off_at_formatted":"10:10AM","tee_off_at_iso8601":"2015-05-31T10:10:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":365439831,"course_id":3003,"currency":"USD","players":[1,2],"rate":"89.00","regular_rate":"100.00","savings_pct":11,"savings_amount":"11.00","tee_off_at_formatted":"10:20AM","tee_off_at_iso8601":"2015-05-31T10:20:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
59
+ Network"}},{"id":359198512,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"69.00","regular_rate":"100.00","savings_pct":31,"savings_amount":"31.00","tee_off_at_formatted":"10:40AM","tee_off_at_iso8601":"2015-05-31T10:40:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352639065,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"86.00","regular_rate":"100.00","savings_pct":14,"savings_amount":"14.00","tee_off_at_formatted":"10:50AM","tee_off_at_iso8601":"2015-05-31T10:50:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
60
+ Network"}},{"id":359198509,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"68.00","regular_rate":"100.00","savings_pct":32,"savings_amount":"32.00","tee_off_at_formatted":"11:00AM","tee_off_at_iso8601":"2015-05-31T11:00:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":365155332,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"84.00","regular_rate":"100.00","savings_pct":16,"savings_amount":"16.00","tee_off_at_formatted":"11:10AM","tee_off_at_iso8601":"2015-05-31T11:10:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
61
+ Network"}},{"id":365160133,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"64.00","regular_rate":"100.00","savings_pct":36,"savings_amount":"36.00","tee_off_at_formatted":"11:30AM","tee_off_at_iso8601":"2015-05-31T11:30:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":359198503,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"62.00","regular_rate":"100.00","savings_pct":38,"savings_amount":"38.00","tee_off_at_formatted":"11:40AM","tee_off_at_iso8601":"2015-05-31T11:40:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352639191,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"76.00","regular_rate":"100.00","savings_pct":24,"savings_amount":"24.00","tee_off_at_formatted":"11:50AM","tee_off_at_iso8601":"2015-05-31T11:50:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
62
+ Network"}},{"id":359198500,"course_id":3003,"currency":"USD","players":[1],"rate":"49.00","regular_rate":"100.00","savings_pct":51,"savings_amount":"51.00","tee_off_at_formatted":"1:20PM","tee_off_at_iso8601":"2015-05-31T13:20:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352639384,"course_id":3003,"currency":"USD","players":[1],"rate":"64.00","regular_rate":"100.00","savings_pct":36,"savings_amount":"36.00","tee_off_at_formatted":"1:20PM","tee_off_at_iso8601":"2015-05-31T13:20:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
63
+ Network"}},{"id":359198498,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"51.00","regular_rate":"100.00","savings_pct":49,"savings_amount":"49.00","tee_off_at_formatted":"1:40PM","tee_off_at_iso8601":"2015-05-31T13:40:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352639468,"course_id":3003,"currency":"USD","players":[1],"rate":"61.00","regular_rate":"100.00","savings_pct":39,"savings_amount":"39.00","tee_off_at_formatted":"1:50PM","tee_off_at_iso8601":"2015-05-31T13:50:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
64
+ Network"}},{"id":358633671,"course_id":3003,"currency":"USD","players":[1],"rate":"35.00","regular_rate":"100.00","savings_pct":65,"savings_amount":"65.00","tee_off_at_formatted":"1:50PM","tee_off_at_iso8601":"2015-05-31T13:50:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":359198477,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"48.00","regular_rate":"100.00","savings_pct":52,"savings_amount":"52.00","tee_off_at_formatted":"2:00PM","tee_off_at_iso8601":"2015-05-31T14:00:00Z","amenities":["is_18_holes","is_riding","is_twilight"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":359198480,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"47.00","regular_rate":"100.00","savings_pct":53,"savings_amount":"53.00","tee_off_at_formatted":"2:20PM","tee_off_at_iso8601":"2015-05-31T14:20:00Z","amenities":["is_18_holes","is_riding","is_twilight"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352639563,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"57.00","regular_rate":"100.00","savings_pct":43,"savings_amount":"43.00","tee_off_at_formatted":"2:20PM","tee_off_at_iso8601":"2015-05-31T14:20:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
65
+ Network"}},{"id":359198496,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"45.00","regular_rate":"100.00","savings_pct":55,"savings_amount":"55.00","tee_off_at_formatted":"2:40PM","tee_off_at_iso8601":"2015-05-31T14:40:00Z","amenities":["is_18_holes","is_riding","is_twilight"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352639642,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"53.00","regular_rate":"100.00","savings_pct":47,"savings_amount":"47.00","tee_off_at_formatted":"2:50PM","tee_off_at_iso8601":"2015-05-31T14:50:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
66
+ Network"}},{"id":359198483,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"44.00","regular_rate":"100.00","savings_pct":56,"savings_amount":"56.00","tee_off_at_formatted":"3:00PM","tee_off_at_iso8601":"2015-05-31T15:00:00Z","amenities":["is_18_holes","is_riding","is_twilight"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":359198486,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"43.00","regular_rate":"100.00","savings_pct":57,"savings_amount":"57.00","tee_off_at_formatted":"3:20PM","tee_off_at_iso8601":"2015-05-31T15:20:00Z","amenities":["is_18_holes","is_riding","is_twilight"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352639727,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"50.00","regular_rate":"100.00","savings_pct":50,"savings_amount":"50.00","tee_off_at_formatted":"3:20PM","tee_off_at_iso8601":"2015-05-31T15:20:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
67
+ Network"}},{"id":352639787,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"47.00","regular_rate":"100.00","savings_pct":53,"savings_amount":"53.00","tee_off_at_formatted":"3:50PM","tee_off_at_iso8601":"2015-05-31T15:50:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
68
+ Network"}},{"id":359198494,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"40.00","regular_rate":"100.00","savings_pct":60,"savings_amount":"60.00","tee_off_at_formatted":"4:00PM","tee_off_at_iso8601":"2015-05-31T16:00:00Z","amenities":["is_18_holes","is_riding","is_twilight"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352639856,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"44.00","regular_rate":"100.00","savings_pct":56,"savings_amount":"56.00","tee_off_at_formatted":"4:20PM","tee_off_at_iso8601":"2015-05-31T16:20:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
69
+ Network"}},{"id":359198492,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"39.00","regular_rate":"100.00","savings_pct":61,"savings_amount":"61.00","tee_off_at_formatted":"4:30PM","tee_off_at_iso8601":"2015-05-31T16:30:00Z","amenities":["is_18_holes","is_riding","is_twilight"],"provider":{"code":"golf_now","name":"GolfNow"}},{"id":352639911,"course_id":3003,"currency":"USD","players":[1,2,3,4],"rate":"41.00","regular_rate":"100.00","savings_pct":59,"savings_amount":"59.00","tee_off_at_formatted":"4:50PM","tee_off_at_iso8601":"2015-05-31T16:50:00Z","amenities":["is_18_holes","is_riding"],"provider":{"code":"golf18_network","name":"Golf18
70
+ Network"}}],"course":{"id":3003,"slug":"the-golf-club-of-california-california","name":"The
71
+ Golf Club of California","description":"The Golf Club of California was created
72
+ to raise San Diego golf to new heights while providing an extraordinary private
73
+ Southern California golf experience exclusively for members and their guests.
74
+ The course was designed to naturally integrate with ancient oaks, majestic
75
+ sycamores, towering eucalyptus trees and beautiful red-top grasses that line
76
+ the manicured fairways and undulating greens. Stunning white sand bunkers
77
+ and colorful wildflowers add beautiful contrast to the course, while a variety
78
+ of elevation changes provide tranquil backcountry views. Meandering creeks
79
+ and acres of natural open space enhance the experience, as well as the game,
80
+ on The Golf Club of California''s challenging design.","address_1":"3742 Flowerwood
81
+ Lane","address_2":null,"address_3":null,"address_city":"Fallbrook","address_state":"CA","address_zipcode":"92028","address_country":"United
82
+ States of America","phone":"760.451.3700","url":"http://www.thegolfclubofcalifornia.com/","time_zone":"America/Los_Angeles","latitude":33.321188,"longitude":-117.201765,"rating":4.32113821138211,"rounded_rating":4.5,"rating_count":246,"rough_tee_time_count":493,"avg_rate":"54.61","avg_regular_rate":"88.15","min_rate":"35.0","min_regular_rate":"80.28","max_rate":"89.0","max_regular_rate":"100.0","course_url":"https://supremegolf.com/tee-times/at/the-golf-club-of-california-california","course_reviews_url":"https://supremegolf.com/tee-times/at/the-golf-club-of-california-california/reviews","photo_thumb_url":"https://supremegolf.s3.amazonaws.com/assets/courses/3003/thumb.jpg?1420237940","photo_medium_url":"https://supremegolf.s3.amazonaws.com/assets/courses/3003/medium.jpg?1420237940","photo_large_url":"https://supremegolf.s3.amazonaws.com/assets/courses/3003/large.jpg?1420237940","stats":{"tee_times_count":47,"min_rate":"35.0","max_savings":65}}}'
83
+ http_version:
84
+ recorded_at: Sun, 31 May 2015 04:17:50 GMT
85
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,48 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://supremegolf.com/api/v4/tee_times/00000000/valid?qty=2
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ response:
17
+ status:
18
+ code: 404
19
+ message: Not Found
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Content-Length:
24
+ - '30'
25
+ Connection:
26
+ - close
27
+ Status:
28
+ - 404 Not Found
29
+ Cache-Control:
30
+ - no-cache
31
+ X-Request-Id:
32
+ - 725c6c21-b2e0-4c11-8960-e1ea5b85954f
33
+ X-Runtime:
34
+ - '0.010100'
35
+ Vary:
36
+ - Origin
37
+ X-Powered-By:
38
+ - Phusion Passenger 4.0.59
39
+ Date:
40
+ - Sun, 31 May 2015 04:32:03 GMT
41
+ Server:
42
+ - nginx + Phusion Passenger 4.0.59
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"error":"tee time not found"}'
46
+ http_version:
47
+ recorded_at: Sun, 31 May 2015 04:32:03 GMT
48
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,54 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://supremegolf.com/api/v4/tee_times/352638828/valid?qty=2
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Content-Type:
22
+ - application/json
23
+ Content-Length:
24
+ - '152'
25
+ Connection:
26
+ - close
27
+ Status:
28
+ - 200 OK
29
+ X-Api-Version:
30
+ - 4.1.7
31
+ Access-Control-Allow-Origin:
32
+ - "*"
33
+ Etag:
34
+ - W/"d372abf1eeded17b53022b6b91018568"
35
+ Cache-Control:
36
+ - max-age=0, private, must-revalidate
37
+ X-Request-Id:
38
+ - f88fa97b-f73f-4dbe-9a6f-ca9fbbeb0483
39
+ X-Runtime:
40
+ - '0.664541'
41
+ Vary:
42
+ - Origin
43
+ X-Powered-By:
44
+ - Phusion Passenger 4.0.59
45
+ Date:
46
+ - Sun, 31 May 2015 04:30:39 GMT
47
+ Server:
48
+ - nginx + Phusion Passenger 4.0.59
49
+ body:
50
+ encoding: UTF-8
51
+ string: '{"reservation_url":"https://supremegolf.com/tee-times/book-it/golf18_network/the-golf-club-of-california-california/may-31/2/352638828","players":[1,2]}'
52
+ http_version:
53
+ recorded_at: Sun, 31 May 2015 04:30:39 GMT
54
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,102 @@
1
+ require './test/test_helper'
2
+
3
+ class SupremeGolfCourseTest < Minitest::Test
4
+ describe 'setup' do
5
+ it 'exist' do
6
+ assert SupremeGolf::Course
7
+ end
8
+ end
9
+
10
+ describe 'find' do
11
+ it 'gives back expected info' do
12
+ VCR.use_cassette('course_find') do
13
+ course = SupremeGolf::Course.find(3002)
14
+ assert_equal SupremeGolf::Course, course.class
15
+
16
+ expected_values = {
17
+ id: 3002,
18
+ slug: "temecula-creek-inn-oaks-course-california",
19
+ name: "Temecula Creek Inn - Oaks Course",
20
+ description: "The 9-hole \"Oaks\" course at the Temecula Creek Inn facility in Temecula, California features 3,436 yards of golf from the longest tees for a par of 36. Designed by Ted Robinson, ASGCA, the Oaks golf course opened in 1969.",
21
+ address_1: "44501 Rainbow Canyon Rd",
22
+ address_2: nil,
23
+ address_3: nil,
24
+ address_city: "Temecula",
25
+ address_state: "CA",
26
+ address_zipcode: "92592-5988",
27
+ address_country: "United States of America",
28
+ phone: "855.685.9299",
29
+ url: "http://www.temeculacreekinn.com/",
30
+ time_zone: "America/Los_Angeles",
31
+ latitude: 33.46898,
32
+ longitude: -117.128529,
33
+ rating: 3,
34
+ rounded_rating: 3,
35
+ rating_count: 3,
36
+ rough_tee_time_count: 0,
37
+ avg_rate: "22.0",
38
+ avg_regular_rate: "22.0",
39
+ min_rate: "22.0",
40
+ min_regular_rate: "22.0",
41
+ max_rate: "22.0",
42
+ max_regular_rate: "22.0",
43
+ course_url: "https://supremegolf.com/tee-times/at/temecula-creek-inn-oaks-course-california",
44
+ course_reviews_url: "https://supremegolf.com/tee-times/at/temecula-creek-inn-oaks-course-california/reviews",
45
+ photo_thumb_url: "https://supremegolf.s3.amazonaws.com/assets/courses/3002/thumb.jpg?1420237939",
46
+ photo_medium_url: "https://supremegolf.s3.amazonaws.com/assets/courses/3002/medium.jpg?1420237939",
47
+ photo_large_url: "https://supremegolf.s3.amazonaws.com/assets/courses/3002/large.jpg?1420237939"
48
+ }
49
+ expected_values.each do |attr, value|
50
+ assert_equal value, course.send(attr), "#{attr} accesses value"
51
+ end
52
+ end
53
+ end
54
+ end
55
+
56
+ describe 'near' do
57
+ it 'gives back expected info' do
58
+ VCR.use_cassette('courses_near') do
59
+ courses = SupremeGolf::Course.near(params: {lat: 33.4677096, lon: -117.1318014})
60
+ assert_equal SupremeGolf::Course, courses.first.class
61
+
62
+ expected_values = {
63
+ id: 3002,
64
+ slug: "temecula-creek-inn-oaks-course-california",
65
+ name: "Temecula Creek Inn - Oaks Course",
66
+ description: "The 9-hole \"Oaks\" course at the Temecula Creek Inn facility in Temecula, California features 3,436 yards of golf from the longest tees for a par of 36. Designed by Ted Robinson, ASGCA, the Oaks golf course opened in 1969.",
67
+ address_1: "44501 Rainbow Canyon Rd",
68
+ address_2: nil,
69
+ address_3: nil,
70
+ address_city: "Temecula",
71
+ address_state: "CA",
72
+ address_zipcode: "92592-5988",
73
+ address_country: "United States of America",
74
+ phone: "855.685.9299",
75
+ url: "http://www.temeculacreekinn.com/",
76
+ time_zone: "America/Los_Angeles",
77
+ latitude: 33.46898,
78
+ longitude: -117.128529,
79
+ rating: 3,
80
+ rounded_rating: 3,
81
+ rating_count: 3,
82
+ rough_tee_time_count: 0,
83
+ avg_rate: "22.0",
84
+ avg_regular_rate: "22.0",
85
+ min_rate: "22.0",
86
+ min_regular_rate: "22.0",
87
+ max_rate: "22.0",
88
+ max_regular_rate: "22.0",
89
+ distance: 0.208035786157303,
90
+ course_url: "https://supremegolf.com/tee-times/at/temecula-creek-inn-oaks-course-california",
91
+ course_reviews_url: "https://supremegolf.com/tee-times/at/temecula-creek-inn-oaks-course-california/reviews",
92
+ photo_thumb_url: "https://supremegolf.s3.amazonaws.com/assets/courses/3002/thumb.jpg?1420237939",
93
+ photo_medium_url: "https://supremegolf.s3.amazonaws.com/assets/courses/3002/medium.jpg?1420237939",
94
+ photo_large_url: "https://supremegolf.s3.amazonaws.com/assets/courses/3002/large.jpg?1420237939"
95
+ }
96
+ expected_values.each do |attr, value|
97
+ assert_equal value, courses.first.send(attr), "#{attr} accesses value"
98
+ end
99
+ end
100
+ end
101
+ end
102
+ end
@@ -0,0 +1,16 @@
1
+ require './test/test_helper'
2
+
3
+ class SupremeGolfTest < Minitest::Test
4
+ describe 'configure with x_api_key' do
5
+ before do
6
+ SupremeGolf.configure do |config|
7
+ config.x_api_key = 'testkey'
8
+ end
9
+ end
10
+
11
+ it 'should use x_api_key in request header' do
12
+ Faraday.expects(:get).with("#{SupremeGolf::Course::FIND_URL}/3002", {}, {'X-Api-Key' => 'testkey'}).returns(stub(body: {course: {}}.to_json))
13
+ SupremeGolf::Course.find(3002)
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,68 @@
1
+ require './test/test_helper'
2
+
3
+ class SupremeGolfTeeTimeTest < Minitest::Test
4
+ describe 'setup' do
5
+ it 'exist' do
6
+ assert SupremeGolf::TeeTime
7
+ end
8
+ end
9
+
10
+ describe 'at' do
11
+ it 'gives back expected info' do
12
+ VCR.use_cassette('tee_time_at') do
13
+ tee_times = SupremeGolf::TeeTime.at 3003, params: {date: '2015-05-31'}
14
+ assert_equal SupremeGolf::TeeTime, tee_times.first.class
15
+
16
+ expected_values = {
17
+ id: 365267167,
18
+ course_id: 3003,
19
+ currency: "USD",
20
+ players: [
21
+ 1,
22
+ 2,
23
+ 3,
24
+ 4
25
+ ],
26
+ rate: "62.00",
27
+ regular_rate: "100.00",
28
+ savings_pct: 38,
29
+ savings_amount: "38.00",
30
+ tee_off_at_formatted: "6:10AM",
31
+ tee_off_at_iso8601: "2015-05-31T06:10:00Z",
32
+ amenities: [
33
+ "is_18_holes",
34
+ "is_riding",
35
+ "is_earlybird"
36
+ ],
37
+ provider: {
38
+ "code" => "golf_now",
39
+ "name" => "GolfNow"
40
+ }
41
+ }
42
+ expected_values.each do |attr, value|
43
+ assert_equal value, tee_times.first.send(attr), "#{attr} accesses value"
44
+ end
45
+ end
46
+ end
47
+ end
48
+
49
+ describe 'valid' do
50
+ it 'returns reservation url' do
51
+ VCR.use_cassette('tee_time_valid') do
52
+ reservation_url = SupremeGolf::TeeTime.valid '352638828', params: {qty: 2}
53
+
54
+ assert_equal 'https://supremegolf.com/tee-times/book-it/golf18_network/the-golf-club-of-california-california/may-31/2/352638828', reservation_url
55
+ end
56
+ end
57
+
58
+ describe 'invalid id' do
59
+ it 'returns nil reservation url' do
60
+ VCR.use_cassette('tee_time_invalid') do
61
+ reservation_url = SupremeGolf::TeeTime.valid '00000000', params: {qty: 2}
62
+
63
+ assert_equal nil, reservation_url
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,10 @@
1
+ require './lib/supreme_golf'
2
+ require 'minitest/autorun'
3
+ require 'webmock/minitest'
4
+ require 'mocha/mini_test'
5
+ require 'vcr'
6
+
7
+ VCR.configure do |c|
8
+ c.cassette_library_dir = "test/fixtures"
9
+ c.hook_into :webmock
10
+ end
metadata ADDED
@@ -0,0 +1,171 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: supreme_golf
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Kyle Peyton
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-05-31 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.6'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.6'
27
+ - !ruby/object:Gem::Dependency
28
+ name: minitest
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: vcr
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: webmock
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
+ - !ruby/object:Gem::Dependency
70
+ name: mocha
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: faraday
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: json
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ description: Gem to wrap supremegolf.com API
112
+ email:
113
+ - kylepeyton@gmail.com
114
+ executables: []
115
+ extensions: []
116
+ extra_rdoc_files: []
117
+ files:
118
+ - ".gitignore"
119
+ - Gemfile
120
+ - LICENSE.txt
121
+ - README.md
122
+ - Rakefile
123
+ - lib/supreme_golf.rb
124
+ - lib/supreme_golf/base.rb
125
+ - lib/supreme_golf/course.rb
126
+ - lib/supreme_golf/tee_time.rb
127
+ - lib/supreme_golf/version.rb
128
+ - supreme_golf.gemspec
129
+ - test/fixtures/course_find.yml
130
+ - test/fixtures/courses_near.yml
131
+ - test/fixtures/tee_time_at.yml
132
+ - test/fixtures/tee_time_invalid.yml
133
+ - test/fixtures/tee_time_valid.yml
134
+ - test/supreme_golf/course_test.rb
135
+ - test/supreme_golf/supreme_golf_test.rb
136
+ - test/supreme_golf/tee_time_test.rb
137
+ - test/test_helper.rb
138
+ homepage: https://github.com/weexpectedTHIS/supreme_golf
139
+ licenses:
140
+ - MIT
141
+ metadata: {}
142
+ post_install_message:
143
+ rdoc_options: []
144
+ require_paths:
145
+ - lib
146
+ required_ruby_version: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - ">="
149
+ - !ruby/object:Gem::Version
150
+ version: '0'
151
+ required_rubygems_version: !ruby/object:Gem::Requirement
152
+ requirements:
153
+ - - ">="
154
+ - !ruby/object:Gem::Version
155
+ version: '0'
156
+ requirements: []
157
+ rubyforge_project:
158
+ rubygems_version: 2.4.5
159
+ signing_key:
160
+ specification_version: 4
161
+ summary: Gem to wrap supremegolf.com API
162
+ test_files:
163
+ - test/fixtures/course_find.yml
164
+ - test/fixtures/courses_near.yml
165
+ - test/fixtures/tee_time_at.yml
166
+ - test/fixtures/tee_time_invalid.yml
167
+ - test/fixtures/tee_time_valid.yml
168
+ - test/supreme_golf/course_test.rb
169
+ - test/supreme_golf/supreme_golf_test.rb
170
+ - test/supreme_golf/tee_time_test.rb
171
+ - test/test_helper.rb