seat_geek 0.14.0 → 0.14.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: 127f3fbd886183401962cfd395cdfaece76ca4e0
4
- data.tar.gz: 5424f7a22d53377dbadad4cbf74061b072a4a935
3
+ metadata.gz: c2af87485b2d1e7e4498afd4e89df1b788d97a7c
4
+ data.tar.gz: c341113996bcb17a90bf58ce70c6ef858606d153
5
5
  SHA512:
6
- metadata.gz: 8779790829408d36de5e5084b9b08a503549a78663cce2be4abdbdbb977557f7bc17f220c23e8a3c919d13a2f837651e61444d43596173c1f1c6eafe3837e8ae
7
- data.tar.gz: 7d03252f59faae98ce80e79e1928614c6c2caf250ad2adf2556a0990baff417a3ff9c6f126c0ab9ba9628aa4d4d92451cb8b267dcede887931b3dd72894d8d9e
6
+ metadata.gz: 30d28e1e0833aa4f98129ad54eb0c1ad6e6c7343a13b0ed846b590f91fe791b731ed84bc68dfd2bed0788a48d00e17383e92244d52c8d5a1fcaf753a47287187
7
+ data.tar.gz: ece9c42e4c2b970dc69fe90e8844c483b973db7df06fb863b297d6d79234224983dc73c23ea980475b70493d71ba66958891818f004d04e10702e18db855dd7f
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2015 TODO: Write your name
3
+ Copyright (c) 2015 John Moon
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -93,9 +93,6 @@ taxonomy
93
93
  #=> contains all of the above
94
94
  ```
95
95
 
96
- ## TODO Implementation
97
-
98
-
99
96
  ## Contributing
100
97
 
101
98
  Bug reports and pull requests are welcome on GitHub at https://github.com/jmoon/seat_geek.
data/Rakefile CHANGED
@@ -1,8 +1,11 @@
1
- require "bundler/gem_tasks"
1
+ require 'bundler/gem_tasks'
2
2
  require 'rspec/core/rake_task'
3
3
 
4
4
  # Setup new RSpec for rake task
5
5
  RSpec::Core::RakeTask.new(:spec)
6
6
 
7
- # make default task to run specs
8
- task :default => :spec
7
+ require 'rubocop/rake_task'
8
+ RuboCop::RakeTask.new
9
+
10
+ task default: [:spec]
11
+ task test: :spec
data/bin/console CHANGED
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require "bundler/setup"
4
- require "seat_geek"
3
+ require 'bundler/setup'
4
+ require 'seat_geek'
5
5
 
6
6
  # You can add fixtures and/or initialization code here to make experimenting
7
7
  # with your gem easier. You can also use a different console, if you like.
8
8
 
9
9
  # (If you use this, don't forget to add pry to your Gemfile!)
10
- # require "pry"
10
+ # require 'pry'
11
11
  # Pry.start
12
12
 
13
- require "irb"
13
+ require 'irb'
14
14
  IRB.start
@@ -3,17 +3,17 @@ module SeatGeek
3
3
 
4
4
  def self.query_klass
5
5
  @query_klass ||= {travel_dates: SeatGeek::Query::TravelDates,
6
- attendee_count: SeatGeek::Query::AttendeeCount,
7
- event_type: SeatGeek::Query::EventType,
8
- state: SeatGeek::Query::State,
9
- city: SeatGeek::Query::City,
10
- rid: SeatGeek::Query::PartnerProgram,
11
- pagination: SeatGeek::Query::Pagination
12
- }
6
+ attendee_count: SeatGeek::Query::AttendeeCount,
7
+ event_type: SeatGeek::Query::EventType,
8
+ state: SeatGeek::Query::State,
9
+ city: SeatGeek::Query::City,
10
+ rid: SeatGeek::Query::PartnerProgram,
11
+ pagination: SeatGeek::Query::Pagination
12
+ }
13
13
  end
14
14
 
15
15
  def self.build(options, base_url)
16
- options.reject! { |k,v| k.nil? }
16
+ options.reject! { |k, _v| k.nil? }
17
17
 
18
18
  query_params = options.map do |key, args|
19
19
  query_klass[key].new(args).query
@@ -0,0 +1,16 @@
1
+ module SeatGeek
2
+ module Taxonomies
3
+ class ChildTree
4
+ def build_child_tree
5
+ parent_object = taxonomies.detect { |taxonomy| taxonomy['id'] == parent_id }
6
+
7
+ child_taxonomies = [parent_object]
8
+ taxonomies.each do |taxonomy|
9
+ child_taxonomies << taxonomy if taxonomy['parent_id'] == parent_id
10
+ end
11
+ child_taxonomies
12
+ end
13
+ end
14
+ end
15
+ end
16
+
@@ -1,8 +1,9 @@
1
1
  module SeatGeek
2
2
  module Taxonomies
3
- class Concert
4
- def initialize(child_taxonomies:)
3
+ class Concert < ChildTree
4
+ def initialize(child_taxonomies:, file_path:, type:)
5
5
  @taxonomies = child_taxonomies
6
+ @yaml_hash = YAML.load_file(file_path).fetch('event_parent_id').fetch(type)
6
7
  end
7
8
 
8
9
  def all
@@ -10,23 +11,11 @@ module SeatGeek
10
11
  end
11
12
 
12
13
  def music_festival
13
- @parent_id = '2010000'
14
+ @parent_id = @yaml_hash.fetch('music_festival')
14
15
  build_tree
15
16
  end
16
17
 
17
18
  attr_accessor :taxonomies, :parent_id
18
-
19
- private
20
-
21
- def build_child_tree
22
- parent_object = taxonomies.detect { |taxonomy| taxonomy['id'] == parent_id }
23
-
24
- child_taxonomies = [parent_object]
25
- taxonomies.each do |taxonomy|
26
- child_taxonomies << taxonomy if taxonomy['parent_id'] == parent_id
27
- end
28
- child_taxonomies
29
- end
30
19
  end
31
20
  end
32
21
  end
@@ -1,8 +1,9 @@
1
1
  module SeatGeek
2
2
  module Taxonomies
3
- class Sports
4
- def initialize(child_taxonomies:)
3
+ class Sports < ChildTree
4
+ def initialize(child_taxonomies:, file_path:, type:)
5
5
  @taxonomies = child_taxonomies
6
+ @yaml_hash = YAML.load_file(file_path).fetch('event_parent_id').fetch(type)
6
7
  end
7
8
 
8
9
  def all
@@ -10,57 +11,57 @@ module SeatGeek
10
11
  end
11
12
 
12
13
  def baseball
13
- @parent_id = 1010000
14
+ @parent_id = @yaml_hash.fetch('baseball')
14
15
  build_tree
15
16
  end
16
17
 
17
18
  def basketball
18
- @parent_id = 1030000
19
+ @parent_id = @yaml_hash.fetch('basketball')
19
20
  build_tree
20
21
  end
21
22
 
22
23
  def hockey
23
- @parent_id = 1040000
24
+ @parent_id = @yaml_hash.fetch('hockey')
24
25
  build_tree
25
26
  end
26
27
 
27
28
  def football
28
- @parent_id = 1020000
29
+ @parent_id = @yaml_hash.fetch('football')
29
30
  build_tree
30
31
  end
31
32
 
32
33
  def auto_racing
33
- @parent_id = 1060000
34
+ @parent_id = @yaml_hash.fetch('auto_racing')
34
35
  build_tree
35
36
  end
36
37
 
37
38
  def golf
38
- @parent_id = 1070000
39
+ @parent_id = @yaml_hash.fetch('golf')
39
40
  build_tree
40
41
  end
41
42
 
42
43
  def fighting
43
- @parent_id = 1080000
44
+ @parent_id = @yaml_hash.fetch('fighting')
44
45
  build_tree
45
46
  end
46
47
 
47
48
  def tennis
48
- @parent_id = 1090000
49
+ @parent_id = @yaml_hash.fetch('tennis')
49
50
  build_tree
50
51
  end
51
52
 
52
53
  def animal_sports
53
- @parent_id = 1100000
54
+ @parent_id = @yaml_hash.fetch('animal_sports')
54
55
  build_tree
55
56
  end
56
57
 
57
58
  def extreme_sports
58
- @parent_id = 1110000
59
+ @parent_id = @yaml_hash.fetch('extreme_sports')
59
60
  build_tree
60
61
  end
61
62
 
62
63
  def olympic_sports
63
- @parent_id = 1120000
64
+ @parent_id = @yaml_hash.fetch('olympic_sports')
64
65
  build_tree
65
66
  end
66
67
 
@@ -68,17 +69,6 @@ module SeatGeek
68
69
 
69
70
  attr_accessor :parent_id, :taxonomies
70
71
 
71
- def build_child_tree
72
- # parent_ids.each do |parent_id|
73
- parent_object = taxonomies.detect { |taxonomy| taxonomy['id'] == parent_id }
74
-
75
- child_taxonomies = [parent_object]
76
- taxonomies.each do |taxonomy|
77
- child_taxonomies << taxonomy if taxonomy['parent_id'] == parent_id
78
- end
79
- child_taxonomies
80
- # end
81
- end
82
72
  end
83
73
  end
84
74
  end
@@ -1,8 +1,9 @@
1
1
  module SeatGeek
2
2
  module Taxonomies
3
- class Theater
4
- def initialize(child_taxonomies:)
3
+ class Theater < ChildTree
4
+ def initialize(child_taxonomies:, file_path:, type:)
5
5
  @taxonomies = child_taxonomies
6
+ @yaml_hash = YAML.load_file(file_path).fetch('event_parent_id').fetch(type)
6
7
  end
7
8
 
8
9
  def all
@@ -10,23 +11,11 @@ module SeatGeek
10
11
  end
11
12
 
12
13
  def classical
13
- @parent_id = 3010000
14
+ @parent_id = @yaml_hash.fetch('classical')
14
15
  build_child_tree
15
16
  end
16
17
 
17
18
  attr_accessor :taxonomies, :parent_id
18
-
19
- private
20
-
21
- def build_child_tree
22
- parent_object = taxonomies.detect { |taxonomy| taxonomy['id'] == parent_id }
23
-
24
- child_taxonomies = [parent_object]
25
- taxonomies.each do |taxonomy|
26
- child_taxonomies << taxonomy if taxonomy['parent_id'] == parent_id
27
- end
28
- child_taxonomies
29
- end
30
19
  end
31
20
  end
32
21
  end
@@ -1,6 +1,7 @@
1
1
  module SeatGeek
2
2
  module Taxonomies
3
3
  class Tree
4
+ FILE_PATH = "/Users/johnmoon/Desktop/side_projects/seat_geek/lib/seat_geek/yaml/event_parent_id.yaml"
4
5
  def initialize(parent_ids:, taxonomies:)
5
6
  @parent_ids = parent_ids
6
7
  @taxonomies = taxonomies
@@ -36,12 +37,15 @@ module SeatGeek
36
37
  child_taxonomies << taxonomy if taxonomy['parent_id'].to_s[0] == parent_id.to_s[0]
37
38
  end
38
39
 
39
- finished_tree[parent_object['name'].to_sym] = tree_klass[parent_object['name']].new(child_taxonomies: child_taxonomies)
40
+ parent_object_name = parent_object['name'].to_sym
41
+ finished_tree[parent_object_name] = tree_klass[parent_object_name].new(child_taxonomies: child_taxonomies,
42
+ file_path: FILE_PATH,
43
+ type: parent_object['name'])
40
44
  end
41
45
  end
42
46
 
43
47
  def tree_klass
44
- { 'sports' => SeatGeek::Taxonomies::Sports, 'concert' => SeatGeek::Taxonomies::Concert, 'theater' => SeatGeek::Taxonomies::Theater }
48
+ { sports: SeatGeek::Taxonomies::Sports, concert: SeatGeek::Taxonomies::Concert, theater: SeatGeek::Taxonomies::Theater }
45
49
  end
46
50
 
47
51
  def finished_tree
@@ -1,3 +1,3 @@
1
1
  module SeatGeek
2
- VERSION = "0.14.0"
2
+ VERSION = "0.14.2"
3
3
  end
@@ -0,0 +1,19 @@
1
+ event_parent_id:
2
+ sports:
3
+ baseball: 1010000
4
+ basketball: 1030000
5
+ hockey: 1040000
6
+ football: 1020000
7
+ auto_racing: 1060000
8
+ golf: 1070000
9
+ fighting: 1080000
10
+ tennis: 1090000
11
+ animal_sports: 1100000
12
+ extreme_sports: 1110000
13
+ olympic_sports: 1120000
14
+ theater:
15
+ classical: 3010000
16
+ concert:
17
+ music_festival: 2010000
18
+
19
+
data/lib/seat_geek.rb CHANGED
@@ -13,6 +13,7 @@ require "seat_geek/query/partner_program"
13
13
  require "seat_geek/query/pagination"
14
14
 
15
15
  require "seat_geek/taxonomies/tree"
16
+ require "seat_geek/taxonomies/child_tree"
16
17
  require "seat_geek/taxonomies/sports"
17
18
  require "seat_geek/taxonomies/concert"
18
19
  require "seat_geek/taxonomies/theater"
@@ -27,11 +28,9 @@ module SeatGeek
27
28
  PUBLIC_API_URL = 'https://api.seatgeek.com/2/'
28
29
 
29
30
  def self.get_events(options)
30
- @options = options
31
+ partner_id = options.fetch(:seat_geek_partner_id) { 11781 }
32
+ @options = options.merge(rid: partner_id)
31
33
  @base_url = PUBLIC_API_URL + 'events'
32
- if options[:seat_geek_partner_id]
33
- @base_url =+ "aid=#{options[:seat_geek_partner_id]}"
34
- end
35
34
 
36
35
  parse_response(typhoeus_request.body)
37
36
  end
@@ -95,7 +94,7 @@ module SeatGeek
95
94
 
96
95
  def typhoeus_request
97
96
  Typhoeus::Request.new(build_url,
98
- method: :get,
97
+ method: :get
99
98
  ).run
100
99
  end
101
100
 
data/seat_geek.gemspec CHANGED
@@ -4,30 +4,31 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  require 'seat_geek/version'
5
5
 
6
6
  Gem::Specification.new do |spec|
7
- spec.name = "seat_geek"
7
+ spec.name = 'seat_geek'
8
8
  spec.version = SeatGeek::VERSION
9
- spec.authors = ["John Moon"]
10
- spec.email = ["johnmoonyy@gmail.com"]
9
+ spec.authors = ['John Moon']
10
+ spec.email = ['johnmoonyy@gmail.com']
11
11
  spec.summary = %q{SeatGeek Uuby wrapper}
12
12
  spec.description = %q{A Ruby gem for communicating with the SeatGeek REST API}
13
- spec.homepage = "https://github.com/jmoon90/seat_geek"
14
- spec.license = "MIT"
13
+ spec.homepage = 'https://github.com/jmoon90/seat_geek'
14
+ spec.license = 'MIT'
15
15
 
16
16
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
17
- spec.bindir = "exe"
17
+ spec.bindir = 'exe'
18
18
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
- spec.require_paths = ["lib"]
19
+ spec.require_paths = ['lib']
20
20
 
21
- spec.add_development_dependency "bundler", "~> 1.10"
22
- spec.add_development_dependency "rake", "~> 10.4.0"
21
+ spec.add_development_dependency 'bundler', '~> 1.10'
22
+ spec.add_development_dependency 'rake', '~> 10.4.0'
23
23
 
24
- spec.add_development_dependency "rspec", "~> 3.4.0"
25
- spec.add_development_dependency "pry-byebug", "~> 3.3.0"
26
- spec.add_development_dependency "awesome_print", "~> 1.6.1"
24
+ spec.add_development_dependency 'rspec', '~> 3.4.0'
25
+ spec.add_development_dependency 'pry-byebug', '~> 3.3.0'
26
+ spec.add_development_dependency 'awesome_print', '~> 1.6.1'
27
+ spec.add_development_dependency 'rubocop'
27
28
 
28
- spec.add_runtime_dependency "scoped_attr_accessor", "~> 1.0.3"
29
- spec.add_dependency "typhoeus", "~> 1.0.1"
30
- spec.add_dependency "oj", "~> 2.14.4"
29
+ spec.add_runtime_dependency 'scoped_attr_accessor', '~> 1.0.3'
30
+ spec.add_dependency 'typhoeus', '~> 1.0.1'
31
+ spec.add_dependency 'oj', '~> 2.14.4'
31
32
 
32
- spec.add_dependency "vcr", "~> 2.9.3"
33
+ spec.add_dependency 'vcr', '~> 2.9.3'
33
34
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: seat_geek
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.0
4
+ version: 0.14.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Moon
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-02-17 00:00:00.000000000 Z
11
+ date: 2016-04-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: 1.6.1
83
+ - !ruby/object:Gem::Dependency
84
+ name: rubocop
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: scoped_attr_accessor
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -161,11 +175,13 @@ files:
161
175
  - lib/seat_geek/query/partner_program.rb
162
176
  - lib/seat_geek/query/state.rb
163
177
  - lib/seat_geek/query/travel_dates.rb
178
+ - lib/seat_geek/taxonomies/child_tree.rb
164
179
  - lib/seat_geek/taxonomies/concert.rb
165
180
  - lib/seat_geek/taxonomies/sports.rb
166
181
  - lib/seat_geek/taxonomies/theater.rb
167
182
  - lib/seat_geek/taxonomies/tree.rb
168
183
  - lib/seat_geek/version.rb
184
+ - lib/seat_geek/yaml/event_parent_id.yaml
169
185
  - seat_geek.gemspec
170
186
  homepage: https://github.com/jmoon90/seat_geek
171
187
  licenses: