mini_eventbrite 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.gitignore ADDED
@@ -0,0 +1,9 @@
1
+ *.gem
2
+ .bundle
3
+ Gemfile.lock
4
+ pkg/*
5
+ *.swp
6
+ *.swo
7
+ coverage
8
+ doc
9
+ .yardoc
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in groupon.gemspec
4
+ gemspec
data/Rakefile ADDED
@@ -0,0 +1,2 @@
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
@@ -0,0 +1,34 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "eventbrite/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "mini_eventbrite"
7
+ s.version = Eventbrite::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Josh Deeden"]
10
+ s.email = ["jdeeden@gmail.com"]
11
+ s.homepage = ""
12
+ s.summary = %q{A wrapper for the Eventbrite v2 API}
13
+ s.description = %q{A wrapper for the Eventbrite v2 API}
14
+
15
+ s.rubyforge_project = "mini_eventbrite"
16
+ s.add_development_dependency('rake', '~> 0.8')
17
+ s.add_development_dependency('rspec', '~> 2.5')
18
+ s.add_development_dependency('simplecov', '~> 0.4')
19
+ s.add_development_dependency('vcr', '~> 1.7.0')
20
+ s.add_development_dependency('fakeweb')
21
+ s.add_development_dependency('yard', '~> 0.6')
22
+ s.add_development_dependency('maruku', '~> 0.6')
23
+ s.add_runtime_dependency("faraday", '~> 0.7.4')
24
+ s.add_runtime_dependency("faraday_middleware", '~> 0.7.0')
25
+ s.add_runtime_dependency("typhoeus", '~> 0.2.4')
26
+ s.add_runtime_dependency('hashie', '~> 1.0.0')
27
+ s.add_runtime_dependency('yajl-ruby', '~> 0.8.1')
28
+ s.add_runtime_dependency('multi_json', '~> 1.0')
29
+
30
+ s.files = `git ls-files`.split("\n")
31
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
32
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
33
+ s.require_paths = ["lib"]
34
+ end
@@ -0,0 +1,5 @@
1
+ class Array
2
+ def extract_options!
3
+ last.is_a?(::Hash) ? pop : {}
4
+ end
5
+ end
@@ -0,0 +1,3 @@
1
+ module Eventbrite
2
+ VERSION = "0.0.1"
3
+ end
data/lib/eventbrite.rb ADDED
@@ -0,0 +1,32 @@
1
+ require 'faraday'
2
+ require 'faraday_middleware'
3
+ require 'core_ext/array'
4
+ require 'yajl'
5
+
6
+ module Eventbrite
7
+ class Client
8
+ attr_reader :api_key, :conn
9
+
10
+ def initialize(*args)
11
+ options = args.extract_options!
12
+ @authentication = options
13
+ @conn = Faraday.new(:url => "http://www.eventbrite.com") do |builder|
14
+ builder.adapter Faraday.default_adapter
15
+ builder.use Faraday::Response::Logger #if options[:debug] == true
16
+ builder.use Faraday::Response::Mashify
17
+ builder.use Faraday::Response::ParseJson
18
+ end
19
+ end
20
+
21
+ def method_missing(name, *args, &block)
22
+ puts "method missing: #{name}"
23
+ options = args.extract_options!
24
+ options.merge! @authentication
25
+ response = conn.get("/json/#{name.to_s}") { |req| req.params = options }
26
+ if response.body[:error]
27
+ puts response.body[:error]
28
+ end
29
+ response.body[response.body.keys.first]
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,12 @@
1
+ require File.expand_path('../../spec_helper', __FILE__)
2
+
3
+ describe Eventbrite::Client do
4
+ before do
5
+ @client = Eventbrite::Client.new(:app_key => "GBWUB22FSMCG76LDUF",
6
+ :user_key => "12814663395507241307")
7
+ end
8
+
9
+ let(:event) { @client.event_get :id => "2233297854" }
10
+ specify { event.title should eql 'Startup U - Law for Startups' }
11
+
12
+ end
@@ -0,0 +1,23 @@
1
+ require 'simplecov'
2
+
3
+ SimpleCov.start do
4
+ add_group 'Eventbrite', 'lib/eventbrite'
5
+ add_group 'Specs', 'spec'
6
+ end
7
+
8
+ require File.expand_path('../../lib/eventbrite', __FILE__)
9
+ require 'rubygems'
10
+ require 'rspec'
11
+ require 'vcr'
12
+
13
+ VCR.config do |c|
14
+ c.cassette_library_dir = 'spec/cassettes'
15
+ c.stub_with :typhoeus
16
+ c.default_cassette_options = { :record => :new_episodes }
17
+ end
18
+
19
+ RSpec.configure do |c|
20
+ c.extend VCR::RSpec::Macros
21
+ end
22
+
23
+ API_KEY="39666de32f9626a0241f676db703795a9b0277cc"
metadata ADDED
@@ -0,0 +1,200 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mini_eventbrite
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Josh Deeden
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-11-13 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rake
16
+ requirement: &2151801180 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '0.8'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *2151801180
25
+ - !ruby/object:Gem::Dependency
26
+ name: rspec
27
+ requirement: &2151799720 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: '2.5'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *2151799720
36
+ - !ruby/object:Gem::Dependency
37
+ name: simplecov
38
+ requirement: &2151798880 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: '0.4'
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *2151798880
47
+ - !ruby/object:Gem::Dependency
48
+ name: vcr
49
+ requirement: &2151797920 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 1.7.0
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *2151797920
58
+ - !ruby/object:Gem::Dependency
59
+ name: fakeweb
60
+ requirement: &2157151440 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *2157151440
69
+ - !ruby/object:Gem::Dependency
70
+ name: yard
71
+ requirement: &2157150880 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ~>
75
+ - !ruby/object:Gem::Version
76
+ version: '0.6'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: *2157150880
80
+ - !ruby/object:Gem::Dependency
81
+ name: maruku
82
+ requirement: &2157150380 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ~>
86
+ - !ruby/object:Gem::Version
87
+ version: '0.6'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *2157150380
91
+ - !ruby/object:Gem::Dependency
92
+ name: faraday
93
+ requirement: &2157149900 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ~>
97
+ - !ruby/object:Gem::Version
98
+ version: 0.7.4
99
+ type: :runtime
100
+ prerelease: false
101
+ version_requirements: *2157149900
102
+ - !ruby/object:Gem::Dependency
103
+ name: faraday_middleware
104
+ requirement: &2157149400 !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 0.7.0
110
+ type: :runtime
111
+ prerelease: false
112
+ version_requirements: *2157149400
113
+ - !ruby/object:Gem::Dependency
114
+ name: typhoeus
115
+ requirement: &2157148880 !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ~>
119
+ - !ruby/object:Gem::Version
120
+ version: 0.2.4
121
+ type: :runtime
122
+ prerelease: false
123
+ version_requirements: *2157148880
124
+ - !ruby/object:Gem::Dependency
125
+ name: hashie
126
+ requirement: &2157148260 !ruby/object:Gem::Requirement
127
+ none: false
128
+ requirements:
129
+ - - ~>
130
+ - !ruby/object:Gem::Version
131
+ version: 1.0.0
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: *2157148260
135
+ - !ruby/object:Gem::Dependency
136
+ name: yajl-ruby
137
+ requirement: &2157147680 !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ~>
141
+ - !ruby/object:Gem::Version
142
+ version: 0.8.1
143
+ type: :runtime
144
+ prerelease: false
145
+ version_requirements: *2157147680
146
+ - !ruby/object:Gem::Dependency
147
+ name: multi_json
148
+ requirement: &2157147040 !ruby/object:Gem::Requirement
149
+ none: false
150
+ requirements:
151
+ - - ~>
152
+ - !ruby/object:Gem::Version
153
+ version: '1.0'
154
+ type: :runtime
155
+ prerelease: false
156
+ version_requirements: *2157147040
157
+ description: A wrapper for the Eventbrite v2 API
158
+ email:
159
+ - jdeeden@gmail.com
160
+ executables: []
161
+ extensions: []
162
+ extra_rdoc_files: []
163
+ files:
164
+ - .gitignore
165
+ - Gemfile
166
+ - Rakefile
167
+ - eventbrite.gemspec
168
+ - lib/core_ext/array.rb
169
+ - lib/eventbrite.rb
170
+ - lib/eventbrite/version.rb
171
+ - spec/events/event_spec.rb
172
+ - spec/spec_helper.rb
173
+ homepage: ''
174
+ licenses: []
175
+ post_install_message:
176
+ rdoc_options: []
177
+ require_paths:
178
+ - lib
179
+ required_ruby_version: !ruby/object:Gem::Requirement
180
+ none: false
181
+ requirements:
182
+ - - ! '>='
183
+ - !ruby/object:Gem::Version
184
+ version: '0'
185
+ required_rubygems_version: !ruby/object:Gem::Requirement
186
+ none: false
187
+ requirements:
188
+ - - ! '>='
189
+ - !ruby/object:Gem::Version
190
+ version: '0'
191
+ requirements: []
192
+ rubyforge_project: mini_eventbrite
193
+ rubygems_version: 1.8.11
194
+ signing_key:
195
+ specification_version: 3
196
+ summary: A wrapper for the Eventbrite v2 API
197
+ test_files:
198
+ - spec/events/event_spec.rb
199
+ - spec/spec_helper.rb
200
+ has_rdoc: