pipeline_deals 0.0.2 → 0.1.0

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.
Files changed (38) hide show
  1. data/Gemfile +1 -0
  2. data/lib/pipeline_deals.rb +2 -5
  3. data/lib/pipeline_deals/collection.rb +1 -1
  4. data/lib/pipeline_deals/resources.rb +6 -0
  5. data/lib/pipeline_deals/resources/company.rb +4 -3
  6. data/lib/pipeline_deals/resources/deal.rb +7 -6
  7. data/lib/pipeline_deals/resources/document.rb +9 -0
  8. data/lib/pipeline_deals/resources/person.rb +2 -2
  9. data/lib/pipeline_deals/resources/user.rb +1 -1
  10. data/lib/pipeline_deals/version.rb +1 -1
  11. data/spec/cassettes/PipelineDeals_Company_documents.yml +49 -0
  12. data/spec/cassettes/PipelineDeals_Company_items.yml +335 -0
  13. data/spec/cassettes/PipelineDeals_Company_next_page.yml +53 -0
  14. data/spec/cassettes/PipelineDeals_Company_people.yml +51 -0
  15. data/spec/cassettes/PipelineDeals_Company_per_page.yml +63 -0
  16. data/spec/cassettes/PipelineDeals_Company_six_things.yml +60 -0
  17. data/spec/cassettes/PipelineDeals_Deal_different_page.yml +55 -0
  18. data/spec/cassettes/PipelineDeals_Deal_documents.yml +49 -0
  19. data/spec/cassettes/PipelineDeals_Deal_items.yml +291 -0
  20. data/spec/cassettes/PipelineDeals_Deal_next_page.yml +55 -0
  21. data/spec/cassettes/PipelineDeals_Deal_per_page.yml +68 -0
  22. data/spec/cassettes/PipelineDeals_Deal_six_things.yml +65 -0
  23. data/spec/cassettes/company_deals.yml +50 -0
  24. data/spec/cassettes/company_people.yml +51 -0
  25. data/spec/cassettes/deal_documents.yml +49 -0
  26. data/spec/cassettes/deal_with_company.yml +49 -0
  27. data/spec/cassettes/deal_with_primary_contact.yml +49 -0
  28. data/spec/cassettes/deals_filtered_by_stage.yml +109 -0
  29. data/spec/cassettes/get_a_company.yml +48 -0
  30. data/spec/cassettes/get_deals.yml +291 -0
  31. data/spec/pipeline_deals/companies_spec.rb +77 -0
  32. data/spec/pipeline_deals/custom_fields_spec.rb +2 -0
  33. data/spec/pipeline_deals/deals_spec.rb +66 -32
  34. data/spec/pipeline_deals/has_documents.rb +9 -0
  35. data/spec/pipeline_deals/has_people.rb +10 -0
  36. data/spec/pipeline_deals/pagination_spec.rb +38 -0
  37. data/spec/spec_helper.rb +9 -1
  38. metadata +55 -5
@@ -0,0 +1,9 @@
1
+ shared_examples_for "an object that can have documents" do
2
+ it "should have documents" do
3
+ VCR.use_cassette(cassette('documents')) do
4
+ docs_obj.documents.size.should == 1
5
+ docs_obj.documents.first.should be_an_instance_of PipelineDeals::Document
6
+ end
7
+ end
8
+ end
9
+
@@ -0,0 +1,10 @@
1
+ shared_examples_for "an object that can have people" do
2
+ it "should have people" do
3
+ VCR.use_cassette(cassette('people')) do
4
+ people_obj.people.size.should == 1
5
+ people_obj.people.first.should be_an_instance_of PipelineDeals::Person
6
+ end
7
+ end
8
+ end
9
+
10
+
@@ -0,0 +1,38 @@
1
+
2
+ shared_examples_for "a paginated collection" do
3
+ let(:paginated_items) { VCR.use_cassette(cassette('items')) { described_class.find(:all) } }
4
+
5
+ it "should have a pagination object" do
6
+ paginated_items.pagination.should_not be_nil
7
+ end
8
+
9
+ describe "the pagination object" do
10
+ let(:pagination) { paginated_items.pagination }
11
+
12
+ it "should have a total" do
13
+ pagination[:total].should_not be_nil
14
+ end
15
+
16
+ it "should have a page number" do
17
+ pagination[:page].should_not be_nil
18
+ end
19
+ end
20
+
21
+ describe "specify per_page" do
22
+ let(:per_page) { VCR.use_cassette(cassette('per_page')) { described_class.where(per_page: 7) } }
23
+
24
+ it "should be able to specify a per_page" do
25
+ per_page.size.should == 7
26
+ end
27
+ end
28
+
29
+ describe "getting a different page" do
30
+ let(:six_things) { VCR.use_cassette(cassette('six_things')) { described_class.where(page: 1, per_page: 6) } }
31
+ let(:next_page) { VCR.use_cassette(cassette('next_page')) { described_class.where(page: 2, per_page: 3) } }
32
+ it "should get the next page of stuff" do
33
+ six_things[3..5].map(&:id).should == next_page.map(&:id)
34
+ end
35
+ end
36
+ end
37
+
38
+
@@ -3,9 +3,13 @@ require 'vcr'
3
3
  require 'pipeline_deals'
4
4
  require 'pry'
5
5
 
6
+ require 'pipeline_deals/pagination_spec'
7
+ require 'pipeline_deals/has_documents'
8
+ require 'pipeline_deals/has_people'
9
+
6
10
  PipelineDeals::Resource.site = "http://localhost:3000"
7
11
 
8
- ActiveResource::Base.logger = Logger.new(STDOUT)
12
+ #ActiveResource::Base.logger = Logger.new(STDOUT)
9
13
 
10
14
  VCR.configure do |c|
11
15
  c.cassette_library_dir = './spec/cassettes'
@@ -16,3 +20,7 @@ end
16
20
  RSpec.configure do |c|
17
21
  c.extend VCR::RSpec::Macros
18
22
  end
23
+
24
+ def cassette(append)
25
+ "#{described_class.to_s}_#{append}"
26
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pipeline_deals
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-06-15 00:00:00.000000000 Z
12
+ date: 2013-06-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activeresource
@@ -46,6 +46,7 @@ files:
46
46
  - lib/pipeline_deals/admin_resource.rb
47
47
  - lib/pipeline_deals/collection.rb
48
48
  - lib/pipeline_deals/resource.rb
49
+ - lib/pipeline_deals/resources.rb
49
50
  - lib/pipeline_deals/resources/company.rb
50
51
  - lib/pipeline_deals/resources/company_custom_field_label.rb
51
52
  - lib/pipeline_deals/resources/custom_field_label_dropdown_entry.rb
@@ -53,6 +54,7 @@ files:
53
54
  - lib/pipeline_deals/resources/deal_custom_field_label.rb
54
55
  - lib/pipeline_deals/resources/deal_stage.rb
55
56
  - lib/pipeline_deals/resources/definitions.rb
57
+ - lib/pipeline_deals/resources/document.rb
56
58
  - lib/pipeline_deals/resources/event_category.rb
57
59
  - lib/pipeline_deals/resources/lead_source.rb
58
60
  - lib/pipeline_deals/resources/lead_status.rb
@@ -63,15 +65,40 @@ files:
63
65
  - lib/pipeline_deals/resources/user.rb
64
66
  - lib/pipeline_deals/version.rb
65
67
  - pipeline_deals.gemspec
68
+ - spec/cassettes/PipelineDeals_Company_documents.yml
69
+ - spec/cassettes/PipelineDeals_Company_items.yml
70
+ - spec/cassettes/PipelineDeals_Company_next_page.yml
71
+ - spec/cassettes/PipelineDeals_Company_people.yml
72
+ - spec/cassettes/PipelineDeals_Company_per_page.yml
73
+ - spec/cassettes/PipelineDeals_Company_six_things.yml
74
+ - spec/cassettes/PipelineDeals_Deal_different_page.yml
75
+ - spec/cassettes/PipelineDeals_Deal_documents.yml
76
+ - spec/cassettes/PipelineDeals_Deal_items.yml
77
+ - spec/cassettes/PipelineDeals_Deal_next_page.yml
78
+ - spec/cassettes/PipelineDeals_Deal_per_page.yml
79
+ - spec/cassettes/PipelineDeals_Deal_six_things.yml
80
+ - spec/cassettes/company_deals.yml
81
+ - spec/cassettes/company_people.yml
82
+ - spec/cassettes/deal_documents.yml
66
83
  - spec/cassettes/deal_user.yml
84
+ - spec/cassettes/deal_with_company.yml
85
+ - spec/cassettes/deal_with_primary_contact.yml
86
+ - spec/cassettes/deals_filtered_by_stage.yml
87
+ - spec/cassettes/get_a_company.yml
67
88
  - spec/cassettes/get_a_deal.yml
89
+ - spec/cassettes/get_deals.yml
68
90
  - spec/cassettes/list_deal_stages.yml
69
91
  - spec/cassettes/list_deals.yml
70
92
  - spec/cassettes/paginate_deals.yml
71
93
  - spec/cassettes/update_deal.yml
72
94
  - spec/cassettes/update_lead_source.yml
73
95
  - spec/pipeline_deals/admin_spec.rb
96
+ - spec/pipeline_deals/companies_spec.rb
97
+ - spec/pipeline_deals/custom_fields_spec.rb
74
98
  - spec/pipeline_deals/deals_spec.rb
99
+ - spec/pipeline_deals/has_documents.rb
100
+ - spec/pipeline_deals/has_people.rb
101
+ - spec/pipeline_deals/pagination_spec.rb
75
102
  - spec/spec_helper.rb
76
103
  homepage: https://github.com/PipelineDeals/pipelinedeals_api
77
104
  licenses: []
@@ -85,9 +112,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
85
112
  - - ! '>='
86
113
  - !ruby/object:Gem::Version
87
114
  version: '0'
88
- segments:
89
- - 0
90
- hash: 171927393080445298
91
115
  required_rubygems_version: !ruby/object:Gem::Requirement
92
116
  none: false
93
117
  requirements:
@@ -101,13 +125,39 @@ signing_key:
101
125
  specification_version: 3
102
126
  summary: The pipeline_deals gem is a nice ruby wrapper around the PipelineDeals API.
103
127
  test_files:
128
+ - spec/cassettes/PipelineDeals_Company_documents.yml
129
+ - spec/cassettes/PipelineDeals_Company_items.yml
130
+ - spec/cassettes/PipelineDeals_Company_next_page.yml
131
+ - spec/cassettes/PipelineDeals_Company_people.yml
132
+ - spec/cassettes/PipelineDeals_Company_per_page.yml
133
+ - spec/cassettes/PipelineDeals_Company_six_things.yml
134
+ - spec/cassettes/PipelineDeals_Deal_different_page.yml
135
+ - spec/cassettes/PipelineDeals_Deal_documents.yml
136
+ - spec/cassettes/PipelineDeals_Deal_items.yml
137
+ - spec/cassettes/PipelineDeals_Deal_next_page.yml
138
+ - spec/cassettes/PipelineDeals_Deal_per_page.yml
139
+ - spec/cassettes/PipelineDeals_Deal_six_things.yml
140
+ - spec/cassettes/company_deals.yml
141
+ - spec/cassettes/company_people.yml
142
+ - spec/cassettes/deal_documents.yml
104
143
  - spec/cassettes/deal_user.yml
144
+ - spec/cassettes/deal_with_company.yml
145
+ - spec/cassettes/deal_with_primary_contact.yml
146
+ - spec/cassettes/deals_filtered_by_stage.yml
147
+ - spec/cassettes/get_a_company.yml
105
148
  - spec/cassettes/get_a_deal.yml
149
+ - spec/cassettes/get_deals.yml
106
150
  - spec/cassettes/list_deal_stages.yml
107
151
  - spec/cassettes/list_deals.yml
108
152
  - spec/cassettes/paginate_deals.yml
109
153
  - spec/cassettes/update_deal.yml
110
154
  - spec/cassettes/update_lead_source.yml
111
155
  - spec/pipeline_deals/admin_spec.rb
156
+ - spec/pipeline_deals/companies_spec.rb
157
+ - spec/pipeline_deals/custom_fields_spec.rb
112
158
  - spec/pipeline_deals/deals_spec.rb
159
+ - spec/pipeline_deals/has_documents.rb
160
+ - spec/pipeline_deals/has_people.rb
161
+ - spec/pipeline_deals/pagination_spec.rb
113
162
  - spec/spec_helper.rb
163
+ has_rdoc: