pipeline_deals 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. data/README.md +47 -8
  2. data/lib/pipeline_deals.rb +5 -4
  3. data/lib/pipeline_deals/admin_resource.rb +6 -0
  4. data/lib/{collection.rb → pipeline_deals/collection.rb} +0 -0
  5. data/lib/{resource.rb → pipeline_deals/resource.rb} +3 -1
  6. data/lib/{resources → pipeline_deals/resources}/company.rb +0 -0
  7. data/lib/pipeline_deals/resources/company_custom_field_label.rb +4 -0
  8. data/lib/pipeline_deals/resources/custom_field_label_dropdown_entry.rb +4 -0
  9. data/lib/pipeline_deals/resources/deal.rb +10 -0
  10. data/lib/pipeline_deals/resources/deal_custom_field_label.rb +4 -0
  11. data/lib/pipeline_deals/resources/deal_stage.rb +4 -0
  12. data/lib/pipeline_deals/resources/definitions.rb +21 -0
  13. data/lib/pipeline_deals/resources/event_category.rb +5 -0
  14. data/lib/pipeline_deals/resources/lead_source.rb +5 -0
  15. data/lib/pipeline_deals/resources/lead_status.rb +4 -0
  16. data/lib/pipeline_deals/resources/note_category.rb +5 -0
  17. data/lib/{resources → pipeline_deals/resources}/person.rb +0 -0
  18. data/lib/pipeline_deals/resources/person_custom_field_label.rb +4 -0
  19. data/lib/pipeline_deals/resources/predefined_contacts_tags.rb +5 -0
  20. data/lib/{resources → pipeline_deals/resources}/user.rb +1 -0
  21. data/lib/{version.rb → pipeline_deals/version.rb} +1 -1
  22. data/pipeline_deals.gemspec +1 -1
  23. data/spec/cassettes/deal_user.yml +46 -0
  24. data/spec/cassettes/get_a_deal.yml +51 -0
  25. data/spec/cassettes/list_deal_stages.yml +47 -0
  26. data/spec/cassettes/list_deals.yml +10 -528
  27. data/spec/cassettes/paginate_deals.yml +12 -33
  28. data/spec/cassettes/update_deal.yml +104 -0
  29. data/spec/cassettes/update_lead_source.yml +197 -0
  30. data/spec/pipeline_deals/admin_spec.rb +14 -0
  31. data/spec/pipeline_deals/deals_spec.rb +53 -0
  32. data/spec/spec_helper.rb +4 -0
  33. metadata +38 -13
  34. data/lib/resources/deal.rb +0 -56
  35. data/lib/resources/definitions.rb +0 -10
  36. data/spec/pipelinedeals_spec.rb +0 -53
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: http://127.0.0.1:3000/api/v3/deals.json?api_key=n8PJJWRsx0MxgOEwGk7&page=2&per_page=5
5
+ uri: http://localhost:3000/api/v3/deals.json?api_key=xxxkeyxxx&page=2&per_page=5
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
@@ -15,47 +15,26 @@ http_interactions:
15
15
  - Ruby
16
16
  response:
17
17
  status:
18
- code: 200
19
- message: OK
18
+ code: 406
19
+ message: Not Acceptable
20
20
  headers:
21
21
  Date:
22
- - Mon, 22 Apr 2013 21:17:52 GMT
22
+ - Fri, 14 Jun 2013 23:55:59 GMT
23
23
  Status:
24
- - 200 OK
24
+ - 406 Not Acceptable
25
25
  Connection:
26
26
  - close
27
- Set-Cookie:
28
- - _session_id=d591a74b50fb63df9c3bfdedc7f66807; path=/; HttpOnly
29
- - is_legacy_user=; domain=pipelinedeals.com; path=/; expires=Thu, 01-Jan-1970
30
- 00:00:00 GMT
31
- Content-Length:
32
- - '3573'
27
+ Cache-Control:
28
+ - no-cache
33
29
  Content-Type:
34
30
  - application/json; charset=utf-8
35
- Cache-Control:
36
- - private, max-age=0, must-revalidate
37
- Etag:
38
- - ! '"07586330fcab734b3878c6cf6de5c7af"'
31
+ Content-Length:
32
+ - '27'
39
33
  X-Runtime:
40
- - '67'
34
+ - '12'
41
35
  body:
42
36
  encoding: US-ASCII
43
- string: ! '{"pagination":{"pages":29,"page":2,"page_var":"page","per_page":5,"total":142},"entries":[{"summary":null,"primary_contact_id":null,"expected_close_date":null,"deal_stage_id":null,"name":"monetize
44
- strategic ROI","primary_contact":null,"user_id":1,"company_id":null,"source_id":null,"is_example":null,"created_at":"2013/04/16
45
- 10:09:43 -0400","company":null,"person_ids":[],"collaborators":[],"people":[],"status":1,"custom_fields":{"custom_label_29":null,"custom_label_27":null,"custom_label_26":null,"custom_label_25":null},"probability":39,"is_archived":false,"closed_time":null,"deal_stage":null,"id":6,"user":{"id":1,"last_name":"hoboson","first_name":"hobo"},"value_in_cents":365857,"import_id":null,"updated_at":"2013/04/16
46
- 10:09:44 -0400","expected_close_date_event_id":null},{"summary":null,"primary_contact_id":null,"expected_close_date":null,"deal_stage_id":null,"name":"architect
47
- B2C ROI","primary_contact":null,"user_id":1,"company_id":null,"source_id":null,"is_example":null,"created_at":"2013/04/16
48
- 10:09:44 -0400","company":null,"person_ids":[],"collaborators":[],"people":[],"status":-1,"custom_fields":{"custom_label_29":null,"custom_label_27":null,"custom_label_26":null,"custom_label_25":null},"probability":2,"is_archived":false,"closed_time":null,"deal_stage":null,"id":7,"user":{"id":1,"last_name":"hoboson","first_name":"hobo"},"value_in_cents":7919635,"import_id":null,"updated_at":"2013/04/16
49
- 10:09:44 -0400","expected_close_date_event_id":null},{"summary":null,"primary_contact_id":null,"expected_close_date":null,"deal_stage_id":null,"name":"cultivate
50
- back-end models","primary_contact":null,"user_id":1,"company_id":null,"source_id":null,"is_example":null,"created_at":"2013/04/16
51
- 10:09:44 -0400","company":null,"person_ids":[],"collaborators":[],"people":[],"status":0,"custom_fields":{"custom_label_29":null,"custom_label_27":null,"custom_label_26":null,"custom_label_25":null},"probability":53,"is_archived":false,"closed_time":null,"deal_stage":null,"id":8,"user":{"id":1,"last_name":"hoboson","first_name":"hobo"},"value_in_cents":4737478,"import_id":null,"updated_at":"2013/04/16
52
- 10:09:44 -0400","expected_close_date_event_id":null},{"summary":null,"primary_contact_id":null,"expected_close_date":null,"deal_stage_id":null,"name":"deliver
53
- ubiquitous infrastructures","primary_contact":null,"user_id":1,"company_id":null,"source_id":null,"is_example":null,"created_at":"2013/04/16
54
- 10:09:44 -0400","company":null,"person_ids":[],"collaborators":[],"people":[],"status":-1,"custom_fields":{"custom_label_29":null,"custom_label_27":null,"custom_label_26":null,"custom_label_25":null},"probability":4,"is_archived":false,"closed_time":null,"deal_stage":null,"id":9,"user":{"id":1,"last_name":"hoboson","first_name":"hobo"},"value_in_cents":8211008,"import_id":null,"updated_at":"2013/04/16
55
- 10:09:44 -0400","expected_close_date_event_id":null},{"summary":null,"primary_contact_id":null,"expected_close_date":null,"deal_stage_id":null,"name":"brand
56
- leading-edge e-tailers","primary_contact":null,"user_id":1,"company_id":null,"source_id":null,"is_example":null,"created_at":"2013/04/16
57
- 10:09:45 -0400","company":null,"person_ids":[],"collaborators":[],"people":[],"status":-1,"custom_fields":{"custom_label_29":null,"custom_label_27":null,"custom_label_26":null,"custom_label_25":null},"probability":40,"is_archived":false,"closed_time":null,"deal_stage":null,"id":10,"user":{"id":1,"last_name":"hoboson","first_name":"hobo"},"value_in_cents":6172077,"import_id":null,"updated_at":"2013/04/16
58
- 10:09:45 -0400","expected_close_date_event_id":null}]}'
37
+ string: ! '{"error":"Unknown api key"}'
59
38
  http_version:
60
- recorded_at: Mon, 22 Apr 2013 21:17:52 GMT
39
+ recorded_at: Fri, 14 Jun 2013 23:55:59 GMT
61
40
  recorded_with: VCR 2.3.0
@@ -0,0 +1,104 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: put
5
+ uri: http://localhost:3000/api/v3/deals/1.json?api_key=iJHyFkMUBSfjUovt29
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ! '{"deal":{"value_in_cents":45600,"is_example":null,"company_id":null,"shared_user_ids":[],"user_id":1,"import_id":null,"deal_stage_id":2,"deal_stage":{"percent":10,"id":2,"name":"Qualified
9
+ Lead"},"collaborators":[],"company":null,"summary":null,"possible_notify_user_ids":[],"updated_at":"2013/06/14
10
+ 19:54:48 -0400","source_id":2,"source":{"id":2,"name":"Cold Call"},"probability":0,"primary_contact_id":null,"created_at":"2013/05/31
11
+ 13:10:26 -0400","expected_close_date_event_id":null,"id":1,"expected_close_date":null,"primary_contact":null,"user":{"last_name":"hoboson","first_name":"hobo","id":1},"closed_time":"2013/06/03
12
+ 15:25:21 -0400","custom_fields":{"custom_label_29":10,"custom_label_28":0,"custom_label_27":8,"custom_label_26":5,"custom_label_25":1},"person_ids":[],"status":2,"name":"architect
13
+ open-source bandwidth","people":[],"is_archived":false}}'
14
+ headers:
15
+ Content-Type:
16
+ - application/json
17
+ Accept:
18
+ - ! '*/*'
19
+ User-Agent:
20
+ - Ruby
21
+ response:
22
+ status:
23
+ code: 200
24
+ message: OK
25
+ headers:
26
+ Date:
27
+ - Fri, 14 Jun 2013 23:55:58 GMT
28
+ Status:
29
+ - 200 OK
30
+ Connection:
31
+ - close
32
+ Cache-Control:
33
+ - private, max-age=0, must-revalidate
34
+ Set-Cookie:
35
+ - _session_id=992ce8bc41d6d031fe3f9d44f5da0495; path=/; HttpOnly
36
+ - is_legacy_user=; domain=pipelinedeals.com; path=/; expires=Thu, 01-Jan-1970
37
+ 00:00:00 GMT
38
+ Content-Type:
39
+ - application/json; charset=utf-8
40
+ Etag:
41
+ - ! '"8132923694d46ee3cfec015954966a69"'
42
+ Content-Length:
43
+ - '853'
44
+ X-Runtime:
45
+ - '93'
46
+ body:
47
+ encoding: US-ASCII
48
+ string: ! '{"value_in_cents":45600,"is_example":null,"company_id":null,"shared_user_ids":[],"user_id":1,"import_id":null,"deal_stage_id":2,"deal_stage":{"percent":10,"id":2,"name":"Qualified
49
+ Lead"},"collaborators":[],"company":null,"summary":null,"possible_notify_user_ids":[],"updated_at":"2013/06/14
50
+ 19:54:48 -0400","source_id":2,"source":{"id":2,"name":"Cold Call"},"probability":0,"primary_contact_id":null,"created_at":"2013/05/31
51
+ 13:10:26 -0400","expected_close_date_event_id":null,"id":1,"expected_close_date":null,"primary_contact":null,"user":{"last_name":"hoboson","first_name":"hobo","id":1},"closed_time":"2013/06/03
52
+ 15:25:21 -0400","custom_fields":{"custom_label_29":10,"custom_label_28":0,"custom_label_27":8,"custom_label_26":5,"custom_label_25":1},"person_ids":[],"status":2,"name":"architect
53
+ open-source bandwidth","people":[],"is_archived":false}'
54
+ http_version:
55
+ recorded_at: Fri, 14 Jun 2013 23:55:58 GMT
56
+ - request:
57
+ method: get
58
+ uri: http://localhost:3000/api/v3/deals/1.json?api_key=iJHyFkMUBSfjUovt29
59
+ body:
60
+ encoding: US-ASCII
61
+ string: ''
62
+ headers:
63
+ Accept:
64
+ - application/json
65
+ Accept-Encoding:
66
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
67
+ User-Agent:
68
+ - Ruby
69
+ response:
70
+ status:
71
+ code: 200
72
+ message: OK
73
+ headers:
74
+ Date:
75
+ - Fri, 14 Jun 2013 23:55:58 GMT
76
+ Status:
77
+ - 200 OK
78
+ Connection:
79
+ - close
80
+ Cache-Control:
81
+ - private, max-age=0, must-revalidate
82
+ Set-Cookie:
83
+ - _session_id=d7b7223c22193c1d556c567509c26c24; path=/; HttpOnly
84
+ - is_legacy_user=; domain=pipelinedeals.com; path=/; expires=Thu, 01-Jan-1970
85
+ 00:00:00 GMT
86
+ Content-Type:
87
+ - application/json; charset=utf-8
88
+ Etag:
89
+ - ! '"6de39b87bebe7538b7b38d5c1085ec74"'
90
+ Content-Length:
91
+ - '853'
92
+ X-Runtime:
93
+ - '44'
94
+ body:
95
+ encoding: US-ASCII
96
+ string: ! '{"value_in_cents":45600,"is_example":null,"company_id":null,"shared_user_ids":[],"user_id":1,"import_id":null,"deal_stage_id":2,"deal_stage":{"percent":10,"id":2,"name":"Qualified
97
+ Lead"},"collaborators":[],"company":null,"summary":null,"possible_notify_user_ids":[],"updated_at":"2013/06/14
98
+ 19:55:58 -0400","source_id":2,"source":{"id":2,"name":"Cold Call"},"probability":0,"primary_contact_id":null,"created_at":"2013/05/31
99
+ 13:10:26 -0400","expected_close_date_event_id":null,"id":1,"expected_close_date":null,"primary_contact":null,"user":{"last_name":"hoboson","first_name":"hobo","id":1},"closed_time":"2013/06/03
100
+ 15:25:21 -0400","custom_fields":{"custom_label_29":10,"custom_label_28":0,"custom_label_27":8,"custom_label_26":5,"custom_label_25":1},"person_ids":[],"status":2,"name":"architect
101
+ open-source bandwidth","people":[],"is_archived":false}'
102
+ http_version:
103
+ recorded_at: Fri, 14 Jun 2013 23:55:58 GMT
104
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,197 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://localhost:3000/api/v3/admin/lead_sources.json?api_key=iJHyFkMUBSfjUovt29
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Sat, 15 Jun 2013 00:05:18 GMT
23
+ Status:
24
+ - 200 OK
25
+ Connection:
26
+ - close
27
+ Cache-Control:
28
+ - private, max-age=0, must-revalidate
29
+ Set-Cookie:
30
+ - _session_id=ddca432e0e9b34a033d4969805a6395d; path=/; HttpOnly
31
+ - is_legacy_user=; domain=pipelinedeals.com; path=/; expires=Thu, 01-Jan-1970
32
+ 00:00:00 GMT
33
+ Content-Type:
34
+ - application/json; charset=utf-8
35
+ Etag:
36
+ - ! '"76457704dbc4a975c52ebe4280e4e44a"'
37
+ Content-Length:
38
+ - '578'
39
+ X-Runtime:
40
+ - '19'
41
+ body:
42
+ encoding: US-ASCII
43
+ string: ! '{"pagination":{"per_page":200,"total":6,"pages":1,"page_var":"page","page":1},"entries":[{"flat_fee_in_cents":null,"cost_per_lead_in_cents":null,"id":2,"name":"Cold
44
+ Call"},{"flat_fee_in_cents":null,"cost_per_lead_in_cents":null,"id":6,"name":"Import"},{"flat_fee_in_cents":null,"cost_per_lead_in_cents":null,"id":1,"name":"None"},{"flat_fee_in_cents":null,"cost_per_lead_in_cents":null,"id":3,"name":"Referral"},{"flat_fee_in_cents":null,"cost_per_lead_in_cents":null,"id":4,"name":"Trade
45
+ Show"},{"flat_fee_in_cents":null,"cost_per_lead_in_cents":null,"id":5,"name":"Website"}]}'
46
+ http_version:
47
+ recorded_at: Sat, 15 Jun 2013 00:05:18 GMT
48
+ - request:
49
+ method: put
50
+ uri: http://localhost:3000/api/v3/deals/1.json?api_key=iJHyFkMUBSfjUovt29
51
+ body:
52
+ encoding: US-ASCII
53
+ string: ! '{"deal":{"value_in_cents":45600,"is_example":null,"company_id":null,"shared_user_ids":[],"user_id":1,"import_id":null,"deal_stage_id":2,"deal_stage":{"percent":10,"id":2,"name":"Qualified
54
+ Lead"},"collaborators":[],"company":null,"summary":null,"possible_notify_user_ids":[],"updated_at":"2013/06/14
55
+ 19:54:48 -0400","source_id":5,"source":{"id":2,"name":"Cold Call"},"probability":0,"primary_contact_id":null,"created_at":"2013/05/31
56
+ 13:10:26 -0400","expected_close_date_event_id":null,"id":1,"expected_close_date":null,"primary_contact":null,"user":{"last_name":"hoboson","first_name":"hobo","id":1},"closed_time":"2013/06/03
57
+ 15:25:21 -0400","custom_fields":{"custom_label_29":10,"custom_label_28":0,"custom_label_27":8,"custom_label_26":5,"custom_label_25":2},"person_ids":[],"status":2,"name":"architect
58
+ open-source bandwidth","people":[],"is_archived":false}}'
59
+ headers:
60
+ Content-Type:
61
+ - application/json
62
+ Accept:
63
+ - ! '*/*'
64
+ User-Agent:
65
+ - Ruby
66
+ response:
67
+ status:
68
+ code: 200
69
+ message: OK
70
+ headers:
71
+ Date:
72
+ - Sat, 15 Jun 2013 00:05:18 GMT
73
+ Status:
74
+ - 200 OK
75
+ Connection:
76
+ - close
77
+ Cache-Control:
78
+ - private, max-age=0, must-revalidate
79
+ Set-Cookie:
80
+ - _session_id=6fcacf0be69d9c9ed531cffd115e5415; path=/; HttpOnly
81
+ - is_legacy_user=; domain=pipelinedeals.com; path=/; expires=Thu, 01-Jan-1970
82
+ 00:00:00 GMT
83
+ Content-Type:
84
+ - application/json; charset=utf-8
85
+ Etag:
86
+ - ! '"f4a47dc831559ddda21a4ad0bc398a50"'
87
+ Content-Length:
88
+ - '853'
89
+ X-Runtime:
90
+ - '335'
91
+ body:
92
+ encoding: US-ASCII
93
+ string: ! '{"value_in_cents":45600,"is_example":null,"company_id":null,"shared_user_ids":[],"user_id":1,"import_id":null,"deal_stage_id":2,"deal_stage":{"percent":10,"id":2,"name":"Qualified
94
+ Lead"},"collaborators":[],"company":null,"summary":null,"possible_notify_user_ids":[],"updated_at":"2013/06/14
95
+ 20:05:18 -0400","source_id":5,"source":{"id":2,"name":"Cold Call"},"probability":0,"primary_contact_id":null,"created_at":"2013/05/31
96
+ 13:10:26 -0400","expected_close_date_event_id":null,"id":1,"expected_close_date":null,"primary_contact":null,"user":{"last_name":"hoboson","first_name":"hobo","id":1},"closed_time":"2013/06/03
97
+ 15:25:21 -0400","custom_fields":{"custom_label_29":10,"custom_label_28":0,"custom_label_27":8,"custom_label_26":5,"custom_label_25":2},"person_ids":[],"status":2,"name":"architect
98
+ open-source bandwidth","people":[],"is_archived":false}'
99
+ http_version:
100
+ recorded_at: Sat, 15 Jun 2013 00:05:18 GMT
101
+ - request:
102
+ method: get
103
+ uri: http://localhost:3000/api/v3/deals/1.json?api_key=iJHyFkMUBSfjUovt29
104
+ body:
105
+ encoding: US-ASCII
106
+ string: ''
107
+ headers:
108
+ Accept:
109
+ - application/json
110
+ Accept-Encoding:
111
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
112
+ User-Agent:
113
+ - Ruby
114
+ response:
115
+ status:
116
+ code: 200
117
+ message: OK
118
+ headers:
119
+ Date:
120
+ - Sat, 15 Jun 2013 00:05:19 GMT
121
+ Status:
122
+ - 200 OK
123
+ Connection:
124
+ - close
125
+ Cache-Control:
126
+ - private, max-age=0, must-revalidate
127
+ Set-Cookie:
128
+ - _session_id=f8cc0d2efb1a79c888683ac4c975bfa1; path=/; HttpOnly
129
+ - is_legacy_user=; domain=pipelinedeals.com; path=/; expires=Thu, 01-Jan-1970
130
+ 00:00:00 GMT
131
+ Content-Type:
132
+ - application/json; charset=utf-8
133
+ Etag:
134
+ - ! '"cef0c6a12770ab0ca607e93f3c26b4e9"'
135
+ Content-Length:
136
+ - '851'
137
+ X-Runtime:
138
+ - '40'
139
+ body:
140
+ encoding: US-ASCII
141
+ string: ! '{"value_in_cents":45600,"is_example":null,"company_id":null,"shared_user_ids":[],"user_id":1,"import_id":null,"deal_stage_id":2,"deal_stage":{"percent":10,"id":2,"name":"Qualified
142
+ Lead"},"collaborators":[],"company":null,"summary":null,"possible_notify_user_ids":[],"updated_at":"2013/06/14
143
+ 20:05:18 -0400","source_id":5,"source":{"id":5,"name":"Website"},"probability":0,"primary_contact_id":null,"created_at":"2013/05/31
144
+ 13:10:26 -0400","expected_close_date_event_id":null,"id":1,"expected_close_date":null,"primary_contact":null,"user":{"last_name":"hoboson","first_name":"hobo","id":1},"closed_time":"2013/06/03
145
+ 15:25:21 -0400","custom_fields":{"custom_label_29":10,"custom_label_28":0,"custom_label_27":8,"custom_label_26":5,"custom_label_25":2},"person_ids":[],"status":2,"name":"architect
146
+ open-source bandwidth","people":[],"is_archived":false}'
147
+ http_version:
148
+ recorded_at: Sat, 15 Jun 2013 00:05:19 GMT
149
+ - request:
150
+ method: get
151
+ uri: http://localhost:3000/api/v3/deals/1.json?api_key=iJHyFkMUBSfjUovt29
152
+ body:
153
+ encoding: US-ASCII
154
+ string: ''
155
+ headers:
156
+ Accept:
157
+ - application/json
158
+ Accept-Encoding:
159
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
160
+ User-Agent:
161
+ - Ruby
162
+ response:
163
+ status:
164
+ code: 200
165
+ message: OK
166
+ headers:
167
+ Date:
168
+ - Sat, 15 Jun 2013 00:05:19 GMT
169
+ Status:
170
+ - 200 OK
171
+ Connection:
172
+ - close
173
+ Cache-Control:
174
+ - private, max-age=0, must-revalidate
175
+ Set-Cookie:
176
+ - _session_id=28697eab4a1ebf89d932f9d7ebae8546; path=/; HttpOnly
177
+ - is_legacy_user=; domain=pipelinedeals.com; path=/; expires=Thu, 01-Jan-1970
178
+ 00:00:00 GMT
179
+ Content-Type:
180
+ - application/json; charset=utf-8
181
+ Etag:
182
+ - ! '"cef0c6a12770ab0ca607e93f3c26b4e9"'
183
+ Content-Length:
184
+ - '851'
185
+ X-Runtime:
186
+ - '235'
187
+ body:
188
+ encoding: US-ASCII
189
+ string: ! '{"value_in_cents":45600,"is_example":null,"company_id":null,"shared_user_ids":[],"user_id":1,"import_id":null,"deal_stage_id":2,"deal_stage":{"percent":10,"id":2,"name":"Qualified
190
+ Lead"},"collaborators":[],"company":null,"summary":null,"possible_notify_user_ids":[],"updated_at":"2013/06/14
191
+ 20:05:18 -0400","source_id":5,"source":{"id":5,"name":"Website"},"probability":0,"primary_contact_id":null,"created_at":"2013/05/31
192
+ 13:10:26 -0400","expected_close_date_event_id":null,"id":1,"expected_close_date":null,"primary_contact":null,"user":{"last_name":"hoboson","first_name":"hobo","id":1},"closed_time":"2013/06/03
193
+ 15:25:21 -0400","custom_fields":{"custom_label_29":10,"custom_label_28":0,"custom_label_27":8,"custom_label_26":5,"custom_label_25":2},"person_ids":[],"status":2,"name":"architect
194
+ open-source bandwidth","people":[],"is_archived":false}'
195
+ http_version:
196
+ recorded_at: Sat, 15 Jun 2013 00:05:19 GMT
197
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,14 @@
1
+ require 'spec_helper'
2
+ describe PipelineDeals, "admin data" do
3
+ before(:each) { PipelineDeals.api_key = ENV['PIPELINEDEALS_API_KEY'] }
4
+ describe "deal stages" do
5
+ it "should list the deal stages" do
6
+ VCR.use_cassette(:list_deal_stages) do
7
+ stages = PipelineDeals::DealStage.find(:all)
8
+ stages.size.should == 6
9
+ stages.first.name.should == 'Lost'
10
+ end
11
+ end
12
+ end
13
+ end
14
+
@@ -0,0 +1,53 @@
1
+ require 'spec_helper'
2
+ PipelineDeals.api_key = ENV['PIPELINEDEALS_API_KEY']
3
+ describe PipelineDeals, "deals" do
4
+ let(:deal) do
5
+ VCR.use_cassette(:get_a_deal) { PipelineDeals::Deal.find 1 }
6
+ end
7
+
8
+ it "should have a deal stage" do
9
+ deal.deal_stage.should be_an_instance_of PipelineDeals::DealStage
10
+ deal.deal_stage.name.should == "Qualified Lead"
11
+ end
12
+
13
+ describe "custom fields" do
14
+ it "should have custom fields" do
15
+ deal.custom_fields.should be_an_instance_of PipelineDeals::Deal::CustomFields
16
+ deal.custom_fields.custom_label_25.should == 2
17
+ end
18
+
19
+ it "should be able to update custom fields" do
20
+ VCR.use_cassette(:update_deal) do
21
+ deal.custom_fields.custom_label_25 = 1
22
+ deal.save
23
+ PipelineDeals::Deal.find(1).custom_fields.custom_label_25.should == 1
24
+ end
25
+ end
26
+ end
27
+
28
+ describe "source" do
29
+ it "should have a source" do
30
+ VCR.use_cassette(:lead_source) do
31
+ #deal.source.should be_an_instance_of PipelineDeals::LeadSource
32
+ deal.source.name.should == "Cold Call"
33
+ end
34
+ end
35
+
36
+ it "should be able to update the source" do
37
+ VCR.use_cassette(:update_lead_source) do
38
+ source = PipelineDeals::LeadSource.last
39
+ deal.source_id = source.id
40
+ deal.save
41
+ deal.reload.source.name.should == "Website"
42
+ end
43
+ end
44
+ end
45
+
46
+ describe "user" do
47
+ it "should have a user" do
48
+ VCR.use_cassette(:deal_user) do
49
+ deal.user.should be_an_instance_of(PipelineDeals::User)
50
+ end
51
+ end
52
+ end
53
+ end
@@ -3,6 +3,10 @@ require 'vcr'
3
3
  require 'pipeline_deals'
4
4
  require 'pry'
5
5
 
6
+ PipelineDeals::Resource.site = "http://localhost:3000"
7
+
8
+ ActiveResource::Base.logger = Logger.new(STDOUT)
9
+
6
10
  VCR.configure do |c|
7
11
  c.cassette_library_dir = './spec/cassettes'
8
12
  c.hook_into :webmock