taskrabbit 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. data/.env.example +15 -0
  2. data/.gitignore +1 -0
  3. data/.rvmrc +1 -1
  4. data/CHANGELOG.md +4 -0
  5. data/Gemfile +2 -0
  6. data/lib/taskrabbit.rb +1 -0
  7. data/lib/taskrabbit/api.rb +1 -0
  8. data/lib/taskrabbit/offer.rb +15 -0
  9. data/lib/taskrabbit/smash.rb +17 -2
  10. data/lib/taskrabbit/task.rb +11 -1
  11. data/lib/taskrabbit/version.rb +1 -1
  12. data/spec/spec_helper.rb +8 -4
  13. data/spec/support/cassettes/account/no_user.yml +2 -2
  14. data/spec/support/cassettes/account/properties.yml +46 -27
  15. data/spec/support/cassettes/account/tasks.yml +10 -10
  16. data/spec/support/cassettes/account/with_user.yml +5 -5
  17. data/spec/support/cassettes/cities/all.yml +2 -2
  18. data/spec/support/cassettes/cities/find.yml +2 -2
  19. data/spec/support/cassettes/cities/properties.yml +2 -2
  20. data/spec/support/cassettes/errors/404.yml +28 -356
  21. data/spec/support/cassettes/locations/properties.yml +8 -8
  22. data/spec/support/cassettes/tasks/all.yml +2 -2
  23. data/spec/support/cassettes/tasks/create/default.yml +3 -3
  24. data/spec/support/cassettes/tasks/create/using_account.yml +3 -3
  25. data/spec/support/cassettes/tasks/create/with_invalid_params.yml +3 -3
  26. data/spec/support/cassettes/tasks/create/with_location.yml +3 -3
  27. data/spec/support/cassettes/tasks/create/with_times.yml +45 -0
  28. data/spec/support/cassettes/tasks/create/without_credit_card.yml +2 -2
  29. data/spec/support/cassettes/tasks/create/without_user.yml +2 -2
  30. data/spec/support/cassettes/tasks/delete.yml +6 -6
  31. data/spec/support/cassettes/tasks/find.yml +41 -26
  32. data/spec/support/cassettes/tasks/properties.yml +41 -26
  33. data/spec/support/cassettes/tasks/save.yml +6 -6
  34. data/spec/support/cassettes/tasks/update.yml +6 -6
  35. data/spec/support/cassettes/tasks/with_offers_properties.yml +45 -0
  36. data/spec/support/cassettes/tasks/without_client.yml +27 -23
  37. data/spec/support/cassettes/users/find.yml +61 -23
  38. data/spec/support/cassettes/users/properties.yml +35 -27
  39. data/spec/support/cassettes/users/tasks/all.yml +42 -27
  40. data/spec/taskrabbit/account_spec.rb +10 -10
  41. data/spec/taskrabbit/api_spec.rb +1 -1
  42. data/spec/taskrabbit/city_spec.rb +3 -3
  43. data/spec/taskrabbit/location_spec.rb +1 -1
  44. data/spec/taskrabbit/offer_spec.rb +23 -0
  45. data/spec/taskrabbit/smash_spec.rb +19 -0
  46. data/spec/taskrabbit/task_spec.rb +36 -22
  47. data/spec/taskrabbit/user_spec.rb +10 -10
  48. metadata +11 -3
@@ -0,0 +1,15 @@
1
+ # This is an example of .env file used for testing.
2
+ # If you want to contribute to the taskrabbit gem
3
+ # please set up an developer account on taskrabbitdev.com
4
+ # and create 2 users ( one with a stored card and another one without)
5
+ API_KEY="key"
6
+ API_SECRET="secret"
7
+ BASE_URI="https://taskrabbitdev.com"
8
+
9
+ USER_WITH_CARD="user_with_card_token"
10
+ USER_WITH_CARD_ID=21
11
+ USER_WITHOUT_CARD="user_without_card_token"
12
+ USER_WITHOUT_CARD_ID=23
13
+
14
+ # This Task would be the one fetched
15
+ TASK_ID=3212
data/.gitignore CHANGED
@@ -4,3 +4,4 @@
4
4
  Gemfile.lock
5
5
  pkg/*
6
6
  bin
7
+ .env
data/.rvmrc CHANGED
@@ -1 +1 @@
1
- rvm use ruby-1.9.3-p194@taskrabbit_client
1
+ rvm use ruby-1.9.3-p194@taskrabbit_client --create
@@ -1,3 +1,7 @@
1
+ ## v0.0.7
2
+
3
+ * Fix Time params submission
4
+
1
5
  ## v0.0.6
2
6
 
3
7
  * Fix Task#create
data/Gemfile CHANGED
@@ -3,6 +3,8 @@ source "http://rubygems.org"
3
3
  # Specify your gem's dependencies in taskrabbit.gemspec
4
4
  gemspec
5
5
 
6
+ gem 'foreman'
7
+
6
8
  group :development do
7
9
  gem 'rdoc'
8
10
  gem 'rake'
@@ -14,6 +14,7 @@ module Taskrabbit
14
14
  autoload :User, "taskrabbit/user"
15
15
  autoload :City, "taskrabbit/city"
16
16
  autoload :Location, "taskrabbit/location"
17
+ autoload :Offer, "taskrabbit/offer"
17
18
 
18
19
  extend Config
19
20
  end
@@ -32,6 +32,7 @@ module Taskrabbit
32
32
  def request_params(transformer, options = {})
33
33
  {
34
34
  :transform => transformer,
35
+ :extra_query => options[:extra_query] || {},
35
36
  :extra_body => options,
36
37
  :extra_request => {
37
38
  :headers => {
@@ -0,0 +1,15 @@
1
+ module Taskrabbit
2
+ class Offer < Smash
3
+ property :id
4
+ property :charge_price
5
+ property :comment
6
+ property :state
7
+ property :runner_id
8
+
9
+ class << self
10
+ def all(scope, options = {})
11
+ scope.request('get', scope.association_path(self), Api::collection_transformers[self], options)
12
+ end
13
+ end
14
+ end
15
+ end
@@ -14,6 +14,22 @@ module Taskrabbit
14
14
  raise Taskrabbit::Error.new("Couldn't find #{self} without an ID") if id.nil?
15
15
  new({:id => id}, api)
16
16
  end
17
+
18
+ def filtered_options(options)
19
+ filtered_hash = {}
20
+ options.each_pair do |key, value|
21
+ filtered_hash[key] =
22
+ case value
23
+ when Time
24
+ value.to_i
25
+ when Hash
26
+ filtered_options(value)
27
+ else
28
+ value
29
+ end
30
+ end
31
+ filtered_hash
32
+ end
17
33
  end
18
34
 
19
35
  class Error < Taskrabbit::Error
@@ -46,7 +62,7 @@ module Taskrabbit
46
62
  # reload the object after doing a query to the api
47
63
  def reload(method, path, options = {})
48
64
  self.loaded = true
49
- response = request(method, path, self.class, options)
65
+ response = request(method, path, self.class, Smash::filtered_options(options))
50
66
  self.merge!(response)
51
67
  clear_errors
52
68
  !redirect?
@@ -77,6 +93,5 @@ module Taskrabbit
77
93
  def clear_errors
78
94
  %w{error errors}.map { |k| self.delete(k) }
79
95
  end
80
-
81
96
  end
82
97
  end
@@ -23,13 +23,14 @@ module Taskrabbit
23
23
  property :state_changed_at, :transformer => TIME_TRANSFORMER
24
24
  property :assign_by_time, :transformer => TIME_TRANSFORMER
25
25
  property :location_visits, :transformer => Api::collection_transformers[Location]
26
+ property :offers, :transformer => Api::collection_transformers[Offer]
26
27
  property :other_locations_attributes
27
28
  property :uploaded_photos_attributes
28
29
  property :uploaded_sounds_attributes
29
30
 
30
31
  class << self
31
32
  def all(scope, options = {})
32
- scope.request('get', scope.association_path(self), Api::collection_transformers[self], options)
33
+ scope.request('get', scope.association_path(self), Api::collection_transformers[self], options_with_class_includes(options))
33
34
  end
34
35
 
35
36
  def create(api, params)
@@ -37,6 +38,10 @@ module Taskrabbit
37
38
  task.save
38
39
  task
39
40
  end
41
+
42
+ def options_with_class_includes(options = {})
43
+ options.merge(:extra_query => {:include => {:task => properties.to_a}})
44
+ end
40
45
  end
41
46
 
42
47
  def fetch
@@ -65,5 +70,10 @@ module Taskrabbit
65
70
  def delete!
66
71
  reload('delete', "tasks/#{id.to_s}")
67
72
  end
73
+
74
+ def reload(method, path, options = {})
75
+ options = self.class.options_with_class_includes(options) if method.to_s == 'get'
76
+ super(method, path, options)
77
+ end
68
78
  end
69
79
  end
@@ -1,3 +1,3 @@
1
1
  module Taskrabbit
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
@@ -10,16 +10,16 @@ Bundler.require :default, :test
10
10
 
11
11
  CASSETTES_PATH = File.join(File.dirname(__FILE__), "support", "cassettes")
12
12
  TR_USERS = {
13
- :with_card => {:secret => 'RhyRtRg1bRNyqmdozkY6JJJ3eGDpoRGTm9AXUudp', :id => 49720},
14
- :without_card => {:secret => 'sjCuNHsxMRkFiJGpLWZzYJksDjfnXtDvDcPuuDkn', :id => 49719},
13
+ :with_card => {:secret => ENV['USER_WITH_CARD'], :id => ENV['USER_WITH_CARD_ID'].to_i },
14
+ :without_card => {:secret => ENV['USER_WITHOUT_CARD'], :id => ENV['USER_WITHOUT_CARD_ID'].to_i },
15
15
  }
16
16
 
17
17
  module Taskrabbit
18
18
  module Config
19
19
  remove_const(:DEFAULT_BASE_URI)
20
20
  remove_const(:DEFAULT_API_SECRET)
21
- DEFAULT_BASE_URI = 'http://localhost:3000'
22
- DEFAULT_API_SECRET = 'euqmQpzV04GmN1dJTY639PdI7eiSjCjI3lKTkPWn'
21
+ DEFAULT_BASE_URI = 'https://taskrabbitdev.com'
22
+ DEFAULT_API_SECRET = ENV['API_SECRET']
23
23
  end
24
24
  end
25
25
  Taskrabbit.reset
@@ -29,5 +29,9 @@ end
29
29
 
30
30
  VCR.config do |c|
31
31
  c.cassette_library_dir = CASSETTES_PATH
32
+ c.filter_sensitive_data('<API_SECRET>') { ENV['API_SECRET'] }
33
+ c.filter_sensitive_data('<API_KEY>') { ENV['API_KEY'] }
34
+ c.filter_sensitive_data('<USER_WITH_CARD>') { ENV['USER_WITH_CARD'] }
35
+ c.filter_sensitive_data('<USER_WITHOUT_CARD>') { ENV['USER_WITHOUT_CARD'] }
32
36
  c.stub_with :fakeweb
33
37
  end
@@ -2,11 +2,11 @@
2
2
  - !ruby/struct:VCR::HTTPInteraction
3
3
  request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://localhost:3000/api/v1/account?
5
+ uri: https://taskrabbitdev.com/api/v1/account?
6
6
  body:
7
7
  headers:
8
8
  x-client-application:
9
- - euqmQpzV04GmN1dJTY639PdI7eiSjCjI3lKTkPWn
9
+ - <API_SECRET>
10
10
  authorization:
11
11
  - OAuth
12
12
  response: !ruby/struct:VCR::Response
@@ -1,32 +1,51 @@
1
- ---
2
- - !ruby/struct:VCR::HTTPInteraction
3
- request: !ruby/struct:VCR::Request
1
+ ---
2
+ - !ruby/struct:VCR::HTTPInteraction
3
+ request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://localhost:3000/api/v1/account?
5
+ uri: https://taskrabbitdev.com:443/api/v1/account?
6
6
  body:
7
- headers:
8
- x-client-application:
9
- - euqmQpzV04GmN1dJTY639PdI7eiSjCjI3lKTkPWn
10
- authorization:
11
- - OAuth RhyRtRg1bRNyqmdozkY6JJJ3eGDpoRGTm9AXUudp
12
- response: !ruby/struct:VCR::Response
13
- status: !ruby/struct:VCR::ResponseStatus
7
+ headers:
8
+ x-client-application:
9
+ - <API_SECRET>
10
+ authorization:
11
+ - OAuth <USER_WITH_CARD>
12
+ response: !ruby/struct:VCR::Response
13
+ status: !ruby/struct:VCR::ResponseStatus
14
14
  code: 200
15
15
  message: OK
16
- headers:
17
- etag:
18
- - "\"1e7456943686e7860596b08fd8493a2b\""
19
- content-type:
16
+ headers:
17
+ server:
18
+ - nginx/1.0.11
19
+ date:
20
+ - Wed, 12 Sep 2012 23:05:11 GMT
21
+ content-type:
20
22
  - application/json; charset=utf-8
21
- x-runtime:
22
- - "3518"
23
- server:
24
- - WEBrick/1.3.1 (Ruby/1.8.7/2011-02-18)
25
- date:
26
- - Sat, 17 Mar 2012 23:12:06 GMT
27
- content-length:
28
- - "2956"
29
- cache-control:
30
- - private, max-age=0, must-revalidate
31
- body: "{\"city\":{\"name\":\"SF Bay Area\",\"lng\":-122.419416,\"id\":3,\"links\":{\"get\":\"/api/v1/cities/3\"},\"lat\":37.77493},\"zip_code\":\"64321\",\"id\":49720,\"tasks\":{\"items\":[{\"name\":\"My First Task\",\"city\":{\"name\":\"New York City\",\"lng\":-74.005973,\"id\":4,\"links\":{\"get\":\"/api/v1/cities/4\"},\"lat\":40.714353},\"charge_price\":20,\"private_runner\":false,\"named_price\":20,\"complete_by_time\":1332093600,\"id\":22673,\"state_changed_at\":1332025380,\"cost_in_cents\":0,\"links\":{\"html\":\"http://local.taskrabbit.com/tasks/my-first-task--47\",\"get\":\"/api/v1/tasks/22673\",\"delete\":\"/api/v1/tasks/22673\",\"put\":\"/api/v1/tasks/22673\",\"authenticated\":\"http://local.taskrabbit.com/go/2f249e87a04016d741f163fe991468737e367c8e334eb5d5a53a63d741ce0019ba1a9c33366a76cadc06bdcb9259c5549a44\"},\"runners\":{\"items\":[]},\"state_label\":\"posted\",\"assign_by_time\":1332082800,\"state\":\"opened\"},{\"name\":\"New Name\",\"city\":{\"name\":\"New York City\",\"lng\":-74.005973,\"id\":4,\"links\":{\"get\":\"/api/v1/cities/4\"},\"lat\":40.714353},\"charge_price\":20,\"private_runner\":false,\"named_price\":20,\"complete_by_time\":1332093600,\"id\":22674,\"state_changed_at\":1332025387,\"cost_in_cents\":0,\"links\":{\"html\":\"http://local.taskrabbit.com/tasks/new-name--3\",\"get\":\"/api/v1/tasks/22674\",\"delete\":\"/api/v1/tasks/22674\",\"put\":\"/api/v1/tasks/22674\",\"authenticated\":\"http://local.taskrabbit.com/go/459b5e05e7a6542891148717ed9cdd4a25fb5d5f71f094c098a93beb25ba26303c4ea5e2c8e01da3743703abbe1da5b46980\"},\"runners\":{\"items\":[]},\"state_label\":\"posted\",\"assign_by_time\":1332082800,\"state\":\"opened\"},{\"name\":\"My First Task\",\"city\":{\"name\":\"New York City\",\"lng\":-74.005973,\"id\":4,\"links\":{\"get\":\"/api/v1/cities/4\"},\"lat\":40.714353},\"charge_price\":20,\"private_runner\":false,\"named_price\":20,\"complete_by_time\":1332093600,\"id\":22675,\"state_changed_at\":1332025394,\"cost_in_cents\":0,\"links\":{\"html\":\"http://local.taskrabbit.com/tasks/my-first-task--49\",\"get\":\"/api/v1/tasks/22675\",\"delete\":\"/api/v1/tasks/22675\",\"put\":\"/api/v1/tasks/22675\",\"authenticated\":\"http://local.taskrabbit.com/go/a89862d84f6a3b8b3175c46bc824ba3c4086519395730898237d56ef90ad672e540e62370c6a87b6c6ec2f601c10e2486ba7\"},\"runners\":{\"items\":[]},\"state_label\":\"posted\",\"assign_by_time\":1332082800,\"state\":\"opened\"}],\"links\":{\"get\":\"/api/v1/users/49720/tasks\",\"last\":\"/api/v1/users/49720/tasks?page=1\",\"first\":\"/api/v1/users/49720/tasks?page=1\"}},\"short_name\":\"Bob\",\"full_name\":\"Bob Sponge\",\"last_name\":\"Sponge\",\"links\":{\"get\":\"/api/v1/users/49720\",\"avatar_url\":\"http://local.taskrabbit.com/images/default_avatars/poster_thumb.png\"},\"display_name\":\"Bob S.\",\"locations\":{\"items\":[{\"name\":\"Home\",\"city\":\"San Francisco\",\"approximate_radius\":0,\"address\":\"432 example\",\"zip\":\"94123\",\"partial\":\"example, San Francisco, Ca 94123\",\"id\":37439,\"lng\":2.108266,\"complete\":\"432 example, San Francisco, Ca 94123\",\"lat\":41.5512199,\"state\":\"Ca\"}],\"links\":{\"get\":\"/api/v1/users/49720/locations\"}},\"email\":\"bobsponge@example.com\",\"first_name\":\"Bob\",\"counts\":{\"posted_tasks\":30,\"active_tasks\":3,\"ongoing_tasks\":3}}"
32
- http_version: "1.1"
23
+ status:
24
+ - 200 OK
25
+ set-cookie:
26
+ - current_geo=1053; path=/; expires=Tue, 13-Nov-2012 00:05:11 GMT
27
+ x-runtime:
28
+ - '0.276146'
29
+ content-length:
30
+ - '2486'
31
+ etag:
32
+ - ! '"a161b4e56960d3355460e1e8621d6892"'
33
+ x-ua-compatible:
34
+ - IE=Edge,chrome=1
35
+ cache-control:
36
+ - max-age=0, private, must-revalidate
37
+ body: ! '{"links":{"get":"/api/v1/users/40","avatar_url":"http://s-app1.taskrabbit.com/images/default_avatars/poster_thumb.png"},"tasks":{"links":{"first":"/api/v1/users/40/tasks?page=1","last":"/api/v1/users/40/tasks?page=1","get":"/api/v1/users/40/tasks"},"items":[{"links":{"put":"/api/v1/tasks/52","get":"/api/v1/tasks/52","html":"http://s-app1.taskrabbit.com/tasks/house-cleaning-7091","authenticated":"http://s-app1.taskrabbit.com/go/82d359e524666a2d8b96f6df1fbfcad4a720a0b4fed8c3f0985139a13a4d6433b65f7f05e80360af131d8f9638f8307e035b","delete":"/api/v1/tasks/52"},"private_runner":false,"charge_price":23,"runners":{"items":[]},"id":52,"cost_in_cents":0,"state_changed_at":1347490579,"named_price":23,"description":"I
38
+ need to clean my house","assignment_type":"auto","name":"House Cleaning","assign_by_time":1347577200,"city":{"lat":37.77493,"links":{"get":"/api/v1/cities/3"},"id":1053,"name":"SF
39
+ Bay Area","lng":-122.419416},"runner_fee":0,"complete_by_time":1347663600,"state_label":"posted","description_properties":[{"value":"I
40
+ need to clean my house","key":"description","title":"Description"},{"value":null,"key":"private_description","title":"Private
41
+ description"},{"value":"Regular Maintenance","key":"task_field_16","title":"Level
42
+ of cleaning"},{"value":"Multiple Rooms, 1 Bathroom","key":"task_field_17","title":"Size
43
+ of house"},{"value":"Cleaning supplies are already in the house","key":"task_field_18","title":"Do
44
+ you have all the necessary cleaning supplies at your house"},{"value":1347577200,"key":"assign_by_time","title":"If
45
+ unassigned, Task will expire on"},{"value":1347663600,"key":"complete_by_time","title":"Task
46
+ should be completed by"}],"state":"opened"}]},"first_name":"UserWith","friend_code_url":"http://taskrabbit.com/PAL/40","counts":{"posted_tasks":1,"active_tasks":1,"ongoing_tasks":1},"id":40,"short_name":"UserWith","locations":{"links":{"get":"/api/v1/users/40/locations"},"items":[{"lat":37.7867363,"zip":"94102","id":52,"partial":"Powell
47
+ Street, San Francisco, CA, San Francisco, CA 94102","complete":"213 Powell Street,
48
+ San Francisco, CA, San Francisco, CA 94102","name":"Home","city":"San Francisco","lng":-122.4080542,"approximate_radius":0,"address":"213
49
+ Powell Street, San Francisco, CA","state":"CA"}]},"display_name":"UserWith c.","last_name":"card","city":{"links":{"get":"/api/v1/cities/3"},"lat":37.77493,"id":1053,"lng":-122.419416,"name":"SF
50
+ Bay Area"},"zip_code":"12345","full_name":"UserWith card","email":"userwithcard@taskrabbit.com"}'
51
+ http_version: '1.1'
@@ -2,13 +2,13 @@
2
2
  - !ruby/struct:VCR::HTTPInteraction
3
3
  request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://localhost:3000/api/v1/account?
5
+ uri: https://taskrabbitdev.com/api/v1/account?
6
6
  body:
7
7
  headers:
8
- x-client-application:
9
- - euqmQpzV04GmN1dJTY639PdI7eiSjCjI3lKTkPWn
10
- authorization:
11
- - OAuth RhyRtRg1bRNyqmdozkY6JJJ3eGDpoRGTm9AXUudp
8
+ x-client-application:
9
+ - <API_SECRET>
10
+ authorization:
11
+ - OAuth <USER_WITH_CARD>
12
12
  response: !ruby/struct:VCR::Response
13
13
  status: !ruby/struct:VCR::ResponseStatus
14
14
  code: 200
@@ -33,13 +33,13 @@
33
33
  - !ruby/struct:VCR::HTTPInteraction
34
34
  request: !ruby/struct:VCR::Request
35
35
  method: :get
36
- uri: http://localhost:3000/api/v1/users/49720/tasks?
36
+ uri: https://taskrabbitdev.com/api/v1/users/49720/tasks?include[task][]=errors&include[task][]=links&include[task][]=error&include[task][]=id&include[task][]=name&include[task][]=user&include[task][]=runner&include[task][]=runners&include[task][]=named_price&include[task][]=charge_price&include[task][]=cost_in_cents&include[task][]=number_runners_to_fill&include[task][]=state_label&include[task][]=city_id&include[task][]=city&include[task][]=description&include[task][]=private_description&include[task][]=private_runner&include[task][]=virtual&include[task][]=state&include[task][]=assignment_type&include[task][]=complete_by_time&include[task][]=state_changed_at&include[task][]=assign_by_time&include[task][]=location_visits&include[task][]=offers&include[task][]=other_locations_attributes&include[task][]=uploaded_photos_attributes&include[task][]=uploaded_sounds_attributes
37
37
  body:
38
38
  headers:
39
- x-client-application:
40
- - euqmQpzV04GmN1dJTY639PdI7eiSjCjI3lKTkPWn
41
- authorization:
42
- - OAuth RhyRtRg1bRNyqmdozkY6JJJ3eGDpoRGTm9AXUudp
39
+ x-client-application:
40
+ - <API_SECRET>
41
+ authorization:
42
+ - OAuth <USER_WITH_CARD>
43
43
  response: !ruby/struct:VCR::Response
44
44
  status: !ruby/struct:VCR::ResponseStatus
45
45
  code: 200
@@ -2,13 +2,13 @@
2
2
  - !ruby/struct:VCR::HTTPInteraction
3
3
  request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://localhost:3000/api/v1/account?
5
+ uri: https://taskrabbitdev.com/api/v1/account?
6
6
  body:
7
7
  headers:
8
- x-client-application:
9
- - euqmQpzV04GmN1dJTY639PdI7eiSjCjI3lKTkPWn
10
- authorization:
11
- - OAuth RhyRtRg1bRNyqmdozkY6JJJ3eGDpoRGTm9AXUudp
8
+ x-client-application:
9
+ - <API_SECRET>
10
+ authorization:
11
+ - OAuth <USER_WITH_CARD>
12
12
  response: !ruby/struct:VCR::Response
13
13
  status: !ruby/struct:VCR::ResponseStatus
14
14
  code: 200
@@ -2,11 +2,11 @@
2
2
  - !ruby/struct:VCR::HTTPInteraction
3
3
  request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://localhost:3000/api/v1/cities?
5
+ uri: https://taskrabbitdev.com/api/v1/cities?
6
6
  body:
7
7
  headers:
8
8
  x-client-application:
9
- - euqmQpzV04GmN1dJTY639PdI7eiSjCjI3lKTkPWn
9
+ - <API_SECRET>
10
10
  authorization:
11
11
  - OAuth
12
12
  response: !ruby/struct:VCR::Response
@@ -2,11 +2,11 @@
2
2
  - !ruby/struct:VCR::HTTPInteraction
3
3
  request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://localhost:3000/api/v1/cities/3?
5
+ uri: https://taskrabbitdev.com/api/v1/cities/3?
6
6
  body:
7
7
  headers:
8
8
  x-client-application:
9
- - euqmQpzV04GmN1dJTY639PdI7eiSjCjI3lKTkPWn
9
+ - <API_SECRET>
10
10
  authorization:
11
11
  - OAuth
12
12
  response: !ruby/struct:VCR::Response
@@ -2,11 +2,11 @@
2
2
  - !ruby/struct:VCR::HTTPInteraction
3
3
  request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://localhost:3000/api/v1/cities/3?
5
+ uri: https://taskrabbitdev.com/api/v1/cities/3?
6
6
  body:
7
7
  headers:
8
8
  x-client-application:
9
- - euqmQpzV04GmN1dJTY639PdI7eiSjCjI3lKTkPWn
9
+ - <API_SECRET>
10
10
  authorization:
11
11
  - OAuth
12
12
  response: !ruby/struct:VCR::Response
@@ -1,362 +1,34 @@
1
- ---
2
- - !ruby/struct:VCR::HTTPInteraction
3
- request: !ruby/struct:VCR::Request
1
+ ---
2
+ - !ruby/struct:VCR::HTTPInteraction
3
+ request: !ruby/struct:VCR::Request
4
4
  method: :get
5
- uri: http://localhost:3000/api/v1/tasks/something-that-doesnot-exists?
5
+ uri: https://taskrabbitdev.com:443/api/v1/tasks/something-that-doesnot-exists?include[task][]=errors&include[task][]=links&include[task][]=error&include[task][]=id&include[task][]=name&include[task][]=user&include[task][]=runner&include[task][]=runners&include[task][]=named_price&include[task][]=charge_price&include[task][]=cost_in_cents&include[task][]=number_runners_to_fill&include[task][]=state_label&include[task][]=city_id&include[task][]=city&include[task][]=description&include[task][]=private_description&include[task][]=private_runner&include[task][]=virtual&include[task][]=state&include[task][]=assignment_type&include[task][]=complete_by_time&include[task][]=state_changed_at&include[task][]=assign_by_time&include[task][]=location_visits&include[task][]=offers&include[task][]=other_locations_attributes&include[task][]=uploaded_photos_attributes&include[task][]=uploaded_sounds_attributes
6
6
  body:
7
- headers:
8
- x-client-application:
9
- - ""
10
- authorization:
7
+ headers:
8
+ x-client-application:
9
+ - <API_SECRET>
10
+ authorization:
11
11
  - OAuth
12
- response: !ruby/struct:VCR::Response
13
- status: !ruby/struct:VCR::ResponseStatus
12
+ response: !ruby/struct:VCR::Response
13
+ status: !ruby/struct:VCR::ResponseStatus
14
14
  code: 404
15
15
  message: Not Found
16
- headers:
17
- content-type:
18
- - text/html; charset=utf-8
19
- server:
20
- - WEBrick/1.3.1 (Ruby/1.8.7/2011-02-18)
21
- date:
22
- - Sat, 17 Mar 2012 23:11:28 GMT
23
- content-length:
24
- - "23415"
25
- cache-control:
16
+ headers:
17
+ server:
18
+ - nginx/1.0.11
19
+ date:
20
+ - Thu, 13 Sep 2012 00:54:53 GMT
21
+ content-type:
22
+ - application/json; charset=utf-8
23
+ status:
24
+ - 404 Not Found
25
+ x-runtime:
26
+ - '0.031340'
27
+ content-length:
28
+ - '53'
29
+ x-ua-compatible:
30
+ - IE=Edge,chrome=1
31
+ cache-control:
26
32
  - no-cache
27
- body: |
28
- <html xmlns="http://www.w3.org/1999/xhtml">
29
- <head>
30
- <title>Action Controller: Exception caught</title>
31
- <style>
32
- body { background-color: #fff; color: #333; }
33
-
34
- body, p, ol, ul, td {
35
- font-family: verdana, arial, helvetica, sans-serif;
36
- font-size: 13px;
37
- line-height: 18px;
38
- }
39
-
40
- pre {
41
- background-color: #eee;
42
- padding: 10px;
43
- font-size: 11px;
44
- }
45
-
46
- a { color: #000; }
47
- a:visited { color: #666; }
48
- a:hover { color: #fff; background-color:#000; }
49
- </style>
50
- </head>
51
- <body>
52
-
53
- <h1>
54
- ActiveRecord::RecordNotFound
55
-
56
- in Api/v1/tasksController#show
57
-
58
- </h1>
59
- <pre>ActiveRecord::RecordNotFound</pre>
60
-
61
-
62
-
63
- <p><code>RAILS_ROOT: /Users/xlrj/Sites/taskrabbit</code></p>
64
-
65
- <div id="traces">
66
-
67
-
68
- <a href="#" onclick="document.getElementById('Framework-Trace').style.display='none';document.getElementById('Full-Trace').style.display='none';document.getElementById('Application-Trace').style.display='block';; return false;">Application Trace</a> |
69
-
70
-
71
- <a href="#" onclick="document.getElementById('Application-Trace').style.display='none';document.getElementById('Full-Trace').style.display='none';document.getElementById('Framework-Trace').style.display='block';; return false;">Framework Trace</a> |
72
-
73
-
74
- <a href="#" onclick="document.getElementById('Application-Trace').style.display='none';document.getElementById('Framework-Trace').style.display='none';document.getElementById('Full-Trace').style.display='block';; return false;">Full Trace</a>
75
-
76
-
77
-
78
- <div id="Application-Trace" style="display: block;">
79
- <pre><code>/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/friendly_id-2.2.7/lib/friendly_id/sluggable_class_methods.rb:30:in `find_one'
80
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/base.rb:1603:in `find_from_ids'
81
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/base.rb:620:in `find'
82
- /Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:141:in `load_controller_object'
83
- /Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:497:in `send'
84
- /Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:497:in `filter_resource_access'
85
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:182:in `call'
86
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:182:in `evaluate_method'
87
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:166:in `call'
88
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:225:in `call'
89
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:629:in `run_before_filters'
90
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
91
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:638:in `run_before_filters'
92
- /Users/xlrj/Sites/taskrabbit/app/controllers/rabbit/base_controller.rb:105:in `set_thread_variables'
93
- /Users/xlrj/Sites/taskrabbit/app/controllers/rabbit/client_app_controller.rb:52:in `set_thread_variables'
94
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `send'
95
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `evaluate_method'
96
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:186:in `call'
97
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:635:in `run_before_filters'
98
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
99
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:638:in `run_before_filters'
100
- /Users/xlrj/Sites/taskrabbit/lib/master_slave_hooks.rb:51:in `with_consistency_filter'
101
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `send'
102
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `evaluate_method'
103
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:186:in `call'
104
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:635:in `run_before_filters'
105
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
106
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:610:in `perform_action_without_benchmark'
107
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
108
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/core_ext/benchmark.rb:17:in `ms'
109
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/core_ext/benchmark.rb:17:in `ms'
110
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
111
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/rescue.rb:160:in `perform_action_without_flash'
112
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/flash.rb:151:in `perform_action'
113
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:532:in `send'
114
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:532:in `process_without_filters'
115
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:606:in `process_without_compass'
116
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/compass-0.11.5/lib/compass/app_integration/rails/actionpack2/action_controller.rb:7:in `process'
117
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:391:in `process'
118
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:386:in `call'
119
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/routing/route_set.rb:438:in `call'</code></pre>
120
- </div>
121
-
122
- <div id="Framework-Trace" style="display: none;">
123
- <pre><code>/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/benchmark.rb:308:in `realtime'
124
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:87:in `dispatch'
125
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:121:in `_call'
126
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:130:in `build_middleware_stack'
127
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:114:in `call'
128
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:108:in `call'
129
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
130
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
131
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
132
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:162:in `start'
133
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
134
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:95:in `start'
135
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:92:in `each'
136
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:92:in `start'
137
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:23:in `start'
138
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:82:in `start'
139
- script/server:3:in `require'
140
- script/server:3</code></pre>
141
- </div>
142
-
143
- <div id="Full-Trace" style="display: none;">
144
- <pre><code>/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/friendly_id-2.2.7/lib/friendly_id/sluggable_class_methods.rb:30:in `find_one'
145
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/base.rb:1603:in `find_from_ids'
146
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/base.rb:620:in `find'
147
- /Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:141:in `load_controller_object'
148
- /Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:497:in `send'
149
- /Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:497:in `filter_resource_access'
150
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:182:in `call'
151
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:182:in `evaluate_method'
152
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:166:in `call'
153
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:225:in `call'
154
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:629:in `run_before_filters'
155
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
156
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:638:in `run_before_filters'
157
- /Users/xlrj/Sites/taskrabbit/app/controllers/rabbit/base_controller.rb:105:in `set_thread_variables'
158
- /Users/xlrj/Sites/taskrabbit/app/controllers/rabbit/client_app_controller.rb:52:in `set_thread_variables'
159
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `send'
160
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `evaluate_method'
161
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:186:in `call'
162
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:635:in `run_before_filters'
163
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
164
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:638:in `run_before_filters'
165
- /Users/xlrj/Sites/taskrabbit/lib/master_slave_hooks.rb:51:in `with_consistency_filter'
166
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `send'
167
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `evaluate_method'
168
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:186:in `call'
169
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:635:in `run_before_filters'
170
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
171
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:610:in `perform_action_without_benchmark'
172
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
173
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/core_ext/benchmark.rb:17:in `ms'
174
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/benchmark.rb:308:in `realtime'
175
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/core_ext/benchmark.rb:17:in `ms'
176
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
177
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/rescue.rb:160:in `perform_action_without_flash'
178
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/flash.rb:151:in `perform_action'
179
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:532:in `send'
180
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:532:in `process_without_filters'
181
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:606:in `process_without_compass'
182
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/compass-0.11.5/lib/compass/app_integration/rails/actionpack2/action_controller.rb:7:in `process'
183
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:391:in `process'
184
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:386:in `call'
185
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/routing/route_set.rb:438:in `call'
186
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:87:in `dispatch'
187
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:121:in `_call'
188
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:130:in `build_middleware_stack'
189
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/query_cache.rb:29:in `call'
190
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/query_cache.rb:29:in `call'
191
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/connection_adapters/abstract/query_cache.rb:34:in `cache'
192
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/query_cache.rb:9:in `cache'
193
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/query_cache.rb:28:in `call'
194
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/connection_adapters/abstract/connection_pool.rb:361:in `call'
195
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
196
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
197
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
198
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
199
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
200
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
201
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
202
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
203
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:136:in `call_app!'
204
- /Users/xlrj/Sites/taskrabbit/lib/omniauth/strategies/facebook_token.rb:21:in `call!'
205
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
206
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
207
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
208
- /Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/builder.rb:30:in `call'
209
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/sass-3.1.15/lib/sass/plugin/rack.rb:54:in `call'
210
- /Users/xlrj/Sites/taskrabbit/lib/middleware/referral_filter.rb:33:in `call'
211
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/string_coercion.rb:25:in `call'
212
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/head.rb:9:in `call'
213
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/methodoverride.rb:24:in `call'
214
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/params_parser.rb:15:in `call'
215
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/session/cookie_store.rb:100:in `call'
216
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/hoptoad_notifier-2.2.2/lib/hoptoad_notifier/rack.rb:27:in `call'
217
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/failsafe.rb:26:in `call'
218
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/lock.rb:11:in `call'
219
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/lock.rb:11:in `synchronize'
220
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/lock.rb:11:in `call'
221
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:114:in `call'
222
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/reloader.rb:34:in `run'
223
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:108:in `call'
224
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rails-2.3.10/lib/rails/rack/static.rb:31:in `call'
225
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/urlmap.rb:47:in `call'
226
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/urlmap.rb:41:in `each'
227
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/urlmap.rb:41:in `call'
228
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rails-2.3.10/lib/rails/rack/log_tailer.rb:17:in `call'
229
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/content_length.rb:13:in `call'
230
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/handler/webrick.rb:48:in `service'
231
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
232
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
233
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
234
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:162:in `start'
235
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
236
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:95:in `start'
237
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:92:in `each'
238
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:92:in `start'
239
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:23:in `start'
240
- /Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:82:in `start'
241
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/handler/webrick.rb:14:in `run'
242
- /Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rails-2.3.10/lib/commands/server.rb:111
243
- script/server:3:in `require'
244
- script/server:3</code></pre>
245
- </div>
246
-
247
- </div>
248
-
249
-
250
-
251
-
252
-
253
-
254
- <h2 style="margin-top: 30px">Request</h2>
255
- <p><b>Parameters</b>: <pre>{&quot;format&quot;=&gt;:json,
256
- &quot;id&quot;=&gt;&quot;something-that-doesnot-exists&quot;}</pre></p>
257
-
258
- <p><a href="#" onclick="document.getElementById('session_dump').style.display='block'; return false;">Show session dump</a></p>
259
- <div id="session_dump" style="display:none"><pre class='debug_dump'>---
260
- </pre></div>
261
-
262
-
263
- <h2 style="margin-top: 30px">Response</h2>
264
- <p><b>Headers</b>: <pre>{&quot;Content-Type&quot;=&gt;&quot;&quot;,
265
- &quot;Cache-Control&quot;=&gt;&quot;no-cache&quot;}</pre></p>
266
-
267
-
268
-
269
- </body>
270
- </html><script type="text/javascript">
271
- var Hoptoad = {
272
- host : &quot;hoptoadapp.com&quot;,
273
- api_key : &quot;d05f933d72e9ce90a819ed66a3f3e5cd&quot;,
274
- notice : {&quot;error_class&quot;:&quot;ActiveRecord::RecordNotFound&quot;,&quot;line_number&quot;:&quot;30&quot;,&quot;action&quot;:&quot;show&quot;,&quot;component&quot;:&quot;api/v1/tasks&quot;,&quot;file&quot;:&quot;[GEM_ROOT]/gems/friendly_id-2.2.7/lib/friendly_id/sluggable_class_methods.rb&quot;,&quot;environment_name&quot;:&quot;production&quot;},
275
- message : 'This error exists in production!',
276
-
277
- initialize: function() {
278
- if (this.initialized) {
279
- return;
280
- } else {
281
- this.initialized = true;
282
- }
283
-
284
- var data = [];
285
-
286
- for (var key in this.notice) {
287
- data[data.length] = 'notice[' + key + ']=' + this.notice[key];
288
- }
289
-
290
- data[data.length] = 'notice[api_key]=' + this.api_key;
291
- data[data.length] = 'callback=Hoptoad.onSuccess';
292
- data[data.length] = '_=' + (new Date()).getTime();
293
-
294
- var head = document.getElementsByTagName('head')[0];
295
- var done = false;
296
-
297
- var
298
- script = document.createElement('script');
299
- script.src = 'http://' + this.host + '/notices_api/v1/notices/exist?' +
300
- data.join('&');
301
- script.type = 'text/javascript';
302
- script.onload = script.onreadystatechange = function(){
303
- if (!done && (!this.readyState ||
304
- this.readyState == 'loaded' || this.readyState == 'complete')) {
305
-
306
- done = true;
307
-
308
- // Handle memory leak in IE. (via jQuery)
309
- script.onload = script.onreadystatechange = null;
310
- head.removeChild(script);
311
- }
312
- };
313
-
314
- head.appendChild(script);
315
- },
316
-
317
- onSuccess: function(error) {
318
- var body = document.getElementsByTagName('body')[0];
319
- var text = document.createTextNode(this.message);
320
- var element = document.createElement('a');
321
-
322
- element.id = 'hoptoad';
323
- element.href = 'http://' + error.subdomain + '.' + this.host +
324
- '/projects/' + error.project_id + '/errors/' + error.id;
325
- element.appendChild(text);
326
-
327
- body.insertBefore(element, body.firstChild);
328
-
329
- var h1 = document.getElementsByTagName('h1')[0];
330
- var pre = document.getElementsByTagName('pre')[0];
331
- var wrapper = document.createElement('div');
332
-
333
- wrapper.id = 'wrapper';
334
- wrapper.appendChild(h1);
335
- wrapper.appendChild(pre);
336
-
337
- body.insertBefore(wrapper, body.children[1]);
338
- }
339
- };
340
-
341
- window.onload = function() {
342
- Hoptoad.initialize.apply(Hoptoad);
343
- };
344
- </script>
345
-
346
- <style type="text/css">
347
- #hoptoad {
348
- background: #FFF url(http://hoptoadapp.com/images/fell-off-the-toad.gif) no-repeat top right;
349
- color: #F00;
350
- padding: 45px 101px 45px 12px;
351
- font-size: 14px;
352
- font-weight: bold;
353
- display: block;
354
- float: right;
355
- }
356
-
357
- #wrapper {
358
- padding-right: 360px;
359
- }
360
- </style>
361
-
362
- http_version: "1.1"
33
+ body: ! '{"error":"The requested resource could not be found"}'
34
+ http_version: '1.1'