nurego 1.1.20 → 1.1.21

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 9fd050b25a4f218e696b283b83fd92b53465043e
4
+ data.tar.gz: 561bd9c4233c2434914894f4dec6cd02d331542a
5
+ SHA512:
6
+ metadata.gz: bf5b1c5b5f4be28293466ff82ed203b27ee165c6647d798c3b48f37a446db3b27a77bf525567d49089d3db400a362a768f0107ad453a8464aced6b8bbb0d1c94
7
+ data.tar.gz: 515e3d7888256c0a9d8454b37923f55e11d16277644208290d9388da69fef4c4018f8fdf8375a7515c0bc9d64ee6017fffca9c8c1f18397ae3c8b5e23efebaaa
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- nurego (1.1.19)
4
+ nurego (1.1.20)
5
5
  cf-uaa-lib (= 1.3.10)
6
6
  mime-types (~> 1.25)
7
7
  multi_json (>= 1.0.4, < 2)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.20
1
+ 1.1.21
@@ -0,0 +1,77 @@
1
+ require File.join(File.dirname(__FILE__), '../spec/integration/spec_helper')
2
+
3
+ begin
4
+ setup_nurego_lib(true,false)
5
+ setup_login_and_login(true)
6
+ @email = "integration.test+#{UUIDTools::UUID.random_create.to_s}@openskymarkets.com"
7
+
8
+
9
+
10
+
11
+ # retrieve catalog
12
+ catalog = Nurego::Catalog.retrieve()
13
+ puts "Retrieve a catalog:\n" ,catalog[:data]
14
+
15
+ #retrieve service by guid
16
+ service = Nurego::Service.retrieve(catalog[:data][0][:services][:data][0][:id])
17
+ puts "Retrieve a service by guid:\n" , service , "\n"
18
+
19
+ # retrieve current offering
20
+ current_offering = Nurego::Offering.current
21
+ puts "Retrieve the current offering:\n" , current_offering , "\n"
22
+
23
+ #retrieve offering by dist channel & segment
24
+ params = Hash.new
25
+ ### must make sure the segment guid exists in the environment where the tests are being executed on.
26
+ params[:distribution_channel] = 'website'
27
+ params[:segment_guid] = 'seg_7c77-8800-4fe6-9ced-6ce886ce2438'
28
+ offering = Nurego::Offering.current(params)
29
+ puts "Retrieve an offering:\n" , offering , "\n"
30
+
31
+ # register
32
+ registration = Nurego::Registration.create({email: @email})
33
+ puts "Register:\n" , registration , "\n"
34
+ customer = registration.complete(id: registration.id, password: EXAMPLE_PASSWORD)
35
+
36
+ #retrieve logged in user
37
+ Nurego::Auth.login(customer["email"], EXAMPLE_PASSWORD)
38
+ retrieved_customer = Nurego::Customer.me
39
+ puts "Retrieve customer details:\n" , retrieved_customer , "\n"
40
+
41
+ org_id = retrieved_customer.organization_id
42
+ org = Nurego::Organization.retrieve(org_id)
43
+ puts "Retrieve an organization by guid:\n" , org , "\n"
44
+
45
+ entitlements = Nurego::Entitlement.all(org_id)
46
+ puts "Retrieve entitlements by organization guid\n" , entitlements, "\n"
47
+
48
+ #create a new subscription
49
+ params = {}
50
+ params[:plan_id] = current_offering.plans[:data][2][:id]
51
+ sub = Nurego::Subscription.create(org_id, params)
52
+
53
+ puts "The newly creation subscription:\n" , sub, "\n"
54
+ puts "The Customer subscription:\n", Nurego::Customer.me.subscriptions , "\n"
55
+
56
+
57
+ #update subscription plan
58
+ newplan = current_offering.plans[:data][3][:id]
59
+ updatedsub = Nurego::Subscription.update(org_id,sub.id,newplan)
60
+ puts "The Customer subscription (notice the plan update):\n", Nurego::Customer.me.subscriptions , "\n"
61
+
62
+ #cancel subscription
63
+ updatedsub.cancel
64
+ puts "The Customer subscription (notice end date:\n", Nurego::Customer.me.subscriptions , "\n"
65
+
66
+ # update usage
67
+ entitlement = org.entitlements.first
68
+ Nurego::Entitlement.set_usage(org_id,entitlement.id, 13)
69
+ puts "Notice the usage of #{entitlement.id} is now set to 13:\n", Nurego::Organization.retrieve(org_id).entitlements.first, "\n"
70
+
71
+
72
+
73
+ end
74
+
75
+
76
+
77
+
@@ -26,6 +26,7 @@ require 'nurego/registration'
26
26
  require 'nurego/customer'
27
27
  require 'nurego/organization'
28
28
  require 'nurego/instance'
29
+ require 'nurego/catalog'
29
30
  require 'nurego/connector'
30
31
  require 'nurego/password_reset'
31
32
  require 'nurego/offering'
@@ -40,6 +41,7 @@ require 'nurego/legal_doc'
40
41
  require 'nurego/extensions'
41
42
  require 'nurego/subscription'
42
43
  require 'nurego/cf/broker_utility'
44
+ require 'nurego/user'
43
45
 
44
46
 
45
47
  # Errors
@@ -4,11 +4,11 @@ module Nurego
4
4
  self.name.split('::')[-1]
5
5
  end
6
6
 
7
- def self.url()
7
+ def self.url(plural = true)
8
8
  if self == APIResource
9
9
  raise NotImplementedError.new('APIResource is an abstract class. You should perform actions on its subclasses (Customer, etc.)')
10
10
  end
11
- "/v1/#{CGI.escape(class_name.downcase)}s"
11
+ "/v1/#{CGI.escape(class_name.downcase)}"+ (plural ? 's' : '')
12
12
  end
13
13
 
14
14
  def url
@@ -0,0 +1,11 @@
1
+ module Nurego
2
+
3
+ class Catalog < APIResource
4
+
5
+ def self.retrieve(params = {}, api_key = nil)
6
+ response, api_key = Nurego.request(:get, self.url(false), api_key, params)
7
+ Util.convert_to_nurego_object(response, api_key)
8
+ end
9
+
10
+ end
11
+ end
@@ -0,0 +1,5 @@
1
+ module Nurego
2
+ class Category < APIResource
3
+
4
+ end
5
+ end
@@ -33,7 +33,7 @@ module Nurego
33
33
  return nil if nurego_notified(params)
34
34
  raise InvalidRequestError.new('Invalid parameter instance_id', 'instance_id') unless params['instance_id']
35
35
  sub = Subscription.retrieve(params['instance_id'])
36
- sub.delete({ provider: PROVIDER, skip_service_webhook: true })
36
+ sub.cancel({ provider: PROVIDER, skip_service_webhook: true })
37
37
  end
38
38
 
39
39
  def self.nurego_notified(params)
@@ -42,18 +42,14 @@ module Nurego
42
42
 
43
43
  def self.get_service_catalog(service_id)
44
44
  service = Service.retrieve(service_id)
45
- service_to_cloud_foundry_catalog(service)
45
+ plans = service.plans
46
+ service_to_cloud_foundry_catalog(service, plans)
46
47
  end
47
48
 
48
49
  private
49
50
 
50
- def self.service_to_cloud_foundry_catalog(service)
51
- cf_catalog = {
52
- offer_id: service.offerings.first['id'],
53
- offer_name: service.offerings.first['name'],
54
- offer_description: service.offerings.first['description'],
55
- services: []
56
- }
51
+ def self.service_to_cloud_foundry_catalog(service, plans)
52
+ cf_catalog = { services: [] }
57
53
  cf_service = {
58
54
  # required
59
55
  id: service['id'],
@@ -70,18 +66,19 @@ module Nurego
70
66
  # dashboard_client: Object {id,secret,redirect_uri}
71
67
 
72
68
  }
73
- service.offerings.first['plans']['data'].each do | nurego_plan |
69
+ plans.each do | nurego_plan |
74
70
  cf_plan = {
75
- # required
76
- id: nurego_plan['id'],
77
- name: nurego_plan['name'],
78
- description: nurego_plan['description'] || " ",
79
-
80
- ## possible
81
- # metadata: Object,
82
- # free: true,
71
+ # required
72
+ id: nurego_plan['id'],
73
+ name: nurego_plan['name'],
74
+ description: nurego_plan['description'] || nurego_plan['name'],
75
+
76
+ ## possible
77
+ # metadata: Object,
78
+ # free: true,
83
79
  }
84
80
 
81
+
85
82
  recurring = nurego_plan['features']['data'].find { | feature | feature['element_type'] == 'recurring' }
86
83
  cf_plan[:free] = !(recurring && recurring['price'] > 0)
87
84
 
@@ -3,12 +3,12 @@ module Nurego
3
3
  include Nurego::APIOperations::List
4
4
  include Nurego::APIOperations::Create
5
5
 
6
- def set_usage(feature_id, amount)
6
+ def self.set_usage(organization_id, feature_id, amount)
7
7
  payload = {
8
8
  feature_id: feature_id,
9
9
  amount: amount,
10
10
  }
11
- response, api_key = Nurego.request(:post, "/v1/organizations/#{id}/entitlements/usage", nil, payload)
11
+ response, api_key = Nurego.request(:post, "/v1/organizations/#{organization_id}/entitlements/usage", nil, payload)
12
12
  end
13
13
 
14
14
  def self.all(organization_id, filters={}, api_key=nil)
@@ -11,9 +11,5 @@ module Nurego
11
11
  Util.convert_to_nurego_object(response, api_key)
12
12
  end
13
13
 
14
- def plans
15
- Plan.all({:offering => id }, @api_key)
16
- end
17
-
18
14
  end
19
15
  end
@@ -15,16 +15,17 @@ module Nurego
15
15
  Bill.all({ :organization => id }, @api_key)[:bills]
16
16
  end
17
17
 
18
- def self.entitlements(organization_id, params = {}, api_key = nil)
19
- Entitlement.all(organization_id, {:feature_id => params[:feature_id] }, api_key)
20
- end
21
-
22
18
  def entitlements(feature_id = nil)
23
19
  Entitlement.all(id, {:feature_id => feature_id, :external_ids => 'false' }, @api_key)
24
20
  end
25
21
 
26
- def plan(params = {}, api_key = nil)
27
- response, api_key = Nurego.request(:get, url + '/plan', api_key, params)
22
+ def subscriptions(params = {}, api_key = nil)
23
+ response, api_key = Nurego.request(:get, url + '/subscriptions', api_key, params)
24
+ Util.convert_to_nurego_object(response, api_key)
25
+ end
26
+
27
+ def users(params = {}, api_key = nil)
28
+ response, api_key = Nurego.request(:get, url + '/users', api_key, params)
28
29
  Util.convert_to_nurego_object(response, api_key)
29
30
  end
30
31
 
@@ -1,9 +1,5 @@
1
1
  module Nurego
2
2
  class Plan < APIResource
3
3
  include Nurego::APIOperations::List
4
-
5
- def features
6
- Features.all({:plan => id }, @api_key)
7
- end
8
4
  end
9
5
  end
@@ -2,5 +2,10 @@ module Nurego
2
2
 
3
3
  class Service < APIResource
4
4
 
5
+ def plans(params = {}, api_key = nil)
6
+ response, api_key = Nurego.request(:get, url + '/plans', api_key, params)
7
+ Util.convert_to_nurego_object(response, api_key)
8
+ end
9
+
5
10
  end
6
11
  end
@@ -24,7 +24,7 @@ module Nurego
24
24
  end
25
25
 
26
26
  # Delete override
27
- def delete(params={})
27
+ def cancel(params={})
28
28
  # use params to pass extra parameters to Nurego backend
29
29
  response, api_key = Nurego.request(:delete, url(self.organization_id), @api_key, params)
30
30
  refresh_from(response, api_key)
@@ -46,5 +46,15 @@ module Nurego
46
46
  "#{self.class.url(org_id)}/#{CGI.escape(id)}"
47
47
  end
48
48
 
49
+ def update(plan_id)
50
+ response, api_key = Nurego.request(:put, url(self.organization_id), nil, { :plan_id => plan_id })
51
+ Util.convert_to_nurego_object(response, api_key)
52
+ end
53
+
54
+ def self.update(org_id,sub_id,plan_id)
55
+ response, api_key = Nurego.request(:put, "#{url(org_id)}/#{CGI.escape(sub_id)}", nil, { :plan_id => plan_id })
56
+ Util.convert_to_nurego_object(response, api_key)
57
+ end
58
+
49
59
  end
50
60
  end
@@ -0,0 +1,40 @@
1
+ module Nurego
2
+ class User < APIResource
3
+ include Nurego::APIOperations::List
4
+
5
+ # Create override
6
+ def self.create(org_id, params={}, api_key=nil)
7
+ response, api_key = Nurego.request(:post, url(org_id), api_key, params)
8
+ Util.convert_to_nurego_object(response, api_key)
9
+ end
10
+
11
+ # Delete override
12
+ def cancel(params={})
13
+ # use params to pass extra parameters to Nurego backend
14
+ response, api_key = Nurego.request(:delete, url(self.organization_id), @api_key, params)
15
+ refresh_from(response, api_key)
16
+ self
17
+ end
18
+
19
+ def self.all(org_id, params={}, api_key=nil)
20
+ response, api_key = Nurego.request(:get, self.url(org_id), api_key, params)
21
+ Util.convert_to_nurego_object(response, api_key)
22
+ end
23
+
24
+ # override class url
25
+ def self.url(org_id = nil)
26
+ return super() unless org_id
27
+ "/v1/organizations/#{CGI.escape(org_id)}/#{CGI.escape(class_name.downcase)}s"
28
+ end
29
+
30
+ # override instance url
31
+ def url(org_id = nil)
32
+ return super() unless org_id
33
+ unless id = self['id']
34
+ raise InvalidRequestError.new("Could not determine which URL to request: #{self.class} instance has no ID: #{self.inspect}", 'id')
35
+ end
36
+ "#{self.class.url(org_id)}/#{CGI.escape(id)}"
37
+ end
38
+
39
+ end
40
+ end
@@ -17,6 +17,9 @@ module Nurego
17
17
 
18
18
  def self.object_classes
19
19
  @object_classes ||= {
20
+ #TODO: {omry} - find out how to add category to the object classes.
21
+ 'catalog' => Catalog,
22
+ 'entitlement' => Entitlement,
20
23
  'customer' => Customer,
21
24
  'registration' => Registration,
22
25
  'organization' => Organization,
@@ -31,6 +34,7 @@ module Nurego
31
34
  'paymentmethod' => PaymentMethod,
32
35
  'bill' => Bill,
33
36
  'discount' => Discount,
37
+ 'user' => User,
34
38
  'list' => ListObject
35
39
  }
36
40
  end
@@ -0,0 +1,43 @@
1
+ require File.expand_path('../../../test_helper', __FILE__)
2
+ describe Nurego::Cf::BrokerUtility do
3
+
4
+ before(:each) do
5
+ @mock = double
6
+ Nurego.mock_rest_client = @mock
7
+ Nurego.api_key="foo"
8
+ end
9
+
10
+ it "can parse service offering to cloud foundry catalog" do
11
+ @mock.should_receive(:get).with(/(.*)\/services\/(.*)/,anything(),anything()).and_return(test_response(test_service_without_offering))
12
+ @mock.should_receive(:get).with(/(.*)\/services\/(.*)\/plans/,anything(),anything()).and_return(test_response(test_service_plans))
13
+ offer_as_catalog = Nurego::Cf::BrokerUtility.get_service_catalog("testservice")
14
+ response_json = JSON.parse offer_as_catalog
15
+
16
+ expect(response_json.keys).to include("services")
17
+
18
+ services = response_json["services"]
19
+ expect(services.length).to be > 0
20
+
21
+ services.each do |service|
22
+ expect(service.keys.length).to be >= 5
23
+ expect(service.keys).to include("id")
24
+ expect(service.keys).to include("name")
25
+ expect(service.keys).to include("description")
26
+ expect(service.keys).to include("bindable")
27
+ expect(service.keys).to include("plans")
28
+
29
+ plans = service["plans"]
30
+
31
+ plans.each do |plan|
32
+ expect(plan.keys.length).to be >= 3
33
+ expect(plan.keys).to include("id")
34
+ expect(plan.keys).to include("name")
35
+ expect(plan.keys).to include("description")
36
+ expect(plan['description']).to match /[^\s]/
37
+ end
38
+ end
39
+ end
40
+
41
+
42
+
43
+ end
@@ -40,6 +40,30 @@ def test_customer(params={})
40
40
  }.merge(params)
41
41
  end
42
42
 
43
+ def test_service_without_offering
44
+ {
45
+ :id=> "ser_113c-4b83-4ec1-aee4-c1762801ca42",
46
+ :object => "service",
47
+ :name => "testservice",
48
+ :description => "testservice",
49
+ :service_status => "active",
50
+ :service_id => "testservice",
51
+ :webhook_type => "",
52
+ :provider_id => "231c0942-e896-4e7c-93bc-c1b31303792b",
53
+ :guid => "ser_113c-4b83-4ec1-aee4-c1762801ca42",
54
+ :offerings => {data:[] ,object:"list",count:0}
55
+ }
56
+
57
+ end
58
+
59
+ def test_service_plans
60
+ {
61
+ data:[] ,
62
+ object:"list",
63
+ count:0
64
+ }
65
+ end
66
+
43
67
  def test_customer_array
44
68
  (0..5).collect { test_customer }
45
69
  end
metadata CHANGED
@@ -1,74 +1,66 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nurego
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.20
5
- prerelease:
4
+ version: 1.1.21
6
5
  platform: ruby
7
6
  authors:
8
7
  - Ilia Gilderman
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2015-06-30 00:00:00.000000000 Z
11
+ date: 2015-08-17 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rest-client
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
19
  version: '1.4'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ~>
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
26
  version: '1.4'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: mime-types
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
33
  version: '1.25'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ~>
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
40
  version: '1.25'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: multi_json
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: 1.0.4
54
- - - <
48
+ - - "<"
55
49
  - !ruby/object:Gem::Version
56
50
  version: '2'
57
51
  type: :runtime
58
52
  prerelease: false
59
53
  version_requirements: !ruby/object:Gem::Requirement
60
- none: false
61
54
  requirements:
62
- - - ! '>='
55
+ - - ">="
63
56
  - !ruby/object:Gem::Version
64
57
  version: 1.0.4
65
- - - <
58
+ - - "<"
66
59
  - !ruby/object:Gem::Version
67
60
  version: '2'
68
61
  - !ruby/object:Gem::Dependency
69
62
  name: cf-uaa-lib
70
63
  requirement: !ruby/object:Gem::Requirement
71
- none: false
72
64
  requirements:
73
65
  - - '='
74
66
  - !ruby/object:Gem::Version
@@ -76,7 +68,6 @@ dependencies:
76
68
  type: :runtime
77
69
  prerelease: false
78
70
  version_requirements: !ruby/object:Gem::Requirement
79
- none: false
80
71
  requirements:
81
72
  - - '='
82
73
  - !ruby/object:Gem::Version
@@ -84,129 +75,113 @@ dependencies:
84
75
  - !ruby/object:Gem::Dependency
85
76
  name: rake
86
77
  requirement: !ruby/object:Gem::Requirement
87
- none: false
88
78
  requirements:
89
- - - ! '>='
79
+ - - ">="
90
80
  - !ruby/object:Gem::Version
91
81
  version: '0'
92
82
  type: :development
93
83
  prerelease: false
94
84
  version_requirements: !ruby/object:Gem::Requirement
95
- none: false
96
85
  requirements:
97
- - - ! '>='
86
+ - - ">="
98
87
  - !ruby/object:Gem::Version
99
88
  version: '0'
100
89
  - !ruby/object:Gem::Dependency
101
90
  name: uuidtools
102
91
  requirement: !ruby/object:Gem::Requirement
103
- none: false
104
92
  requirements:
105
- - - ! '>='
93
+ - - ">="
106
94
  - !ruby/object:Gem::Version
107
95
  version: '0'
108
96
  type: :development
109
97
  prerelease: false
110
98
  version_requirements: !ruby/object:Gem::Requirement
111
- none: false
112
99
  requirements:
113
- - - ! '>='
100
+ - - ">="
114
101
  - !ruby/object:Gem::Version
115
102
  version: '0'
116
103
  - !ruby/object:Gem::Dependency
117
104
  name: rspec
118
105
  requirement: !ruby/object:Gem::Requirement
119
- none: false
120
106
  requirements:
121
- - - ! '>='
107
+ - - ">="
122
108
  - !ruby/object:Gem::Version
123
109
  version: '0'
124
110
  type: :development
125
111
  prerelease: false
126
112
  version_requirements: !ruby/object:Gem::Requirement
127
- none: false
128
113
  requirements:
129
- - - ! '>='
114
+ - - ">="
130
115
  - !ruby/object:Gem::Version
131
116
  version: '0'
132
117
  - !ruby/object:Gem::Dependency
133
118
  name: simplecov
134
119
  requirement: !ruby/object:Gem::Requirement
135
- none: false
136
120
  requirements:
137
- - - ! '>='
121
+ - - ">="
138
122
  - !ruby/object:Gem::Version
139
123
  version: '0'
140
124
  type: :development
141
125
  prerelease: false
142
126
  version_requirements: !ruby/object:Gem::Requirement
143
- none: false
144
127
  requirements:
145
- - - ! '>='
128
+ - - ">="
146
129
  - !ruby/object:Gem::Version
147
130
  version: '0'
148
131
  - !ruby/object:Gem::Dependency
149
132
  name: simplecov-rcov
150
133
  requirement: !ruby/object:Gem::Requirement
151
- none: false
152
134
  requirements:
153
- - - ! '>='
135
+ - - ">="
154
136
  - !ruby/object:Gem::Version
155
137
  version: '0'
156
138
  type: :development
157
139
  prerelease: false
158
140
  version_requirements: !ruby/object:Gem::Requirement
159
- none: false
160
141
  requirements:
161
- - - ! '>='
142
+ - - ">="
162
143
  - !ruby/object:Gem::Version
163
144
  version: '0'
164
145
  - !ruby/object:Gem::Dependency
165
146
  name: simplecov-csv
166
147
  requirement: !ruby/object:Gem::Requirement
167
- none: false
168
148
  requirements:
169
- - - ! '>='
149
+ - - ">="
170
150
  - !ruby/object:Gem::Version
171
151
  version: '0'
172
152
  type: :development
173
153
  prerelease: false
174
154
  version_requirements: !ruby/object:Gem::Requirement
175
- none: false
176
155
  requirements:
177
- - - ! '>='
156
+ - - ">="
178
157
  - !ruby/object:Gem::Version
179
158
  version: '0'
180
159
  - !ruby/object:Gem::Dependency
181
160
  name: rack-test
182
161
  requirement: !ruby/object:Gem::Requirement
183
- none: false
184
162
  requirements:
185
- - - ! '>='
163
+ - - ">="
186
164
  - !ruby/object:Gem::Version
187
165
  version: '0'
188
166
  type: :development
189
167
  prerelease: false
190
168
  version_requirements: !ruby/object:Gem::Requirement
191
- none: false
192
169
  requirements:
193
- - - ! '>='
170
+ - - ">="
194
171
  - !ruby/object:Gem::Version
195
172
  version: '0'
196
173
  - !ruby/object:Gem::Dependency
197
174
  name: ci_reporter
198
175
  requirement: !ruby/object:Gem::Requirement
199
- none: false
200
176
  requirements:
201
- - - ! '>='
177
+ - - ">="
202
178
  - !ruby/object:Gem::Version
203
179
  version: '0'
204
180
  type: :development
205
181
  prerelease: false
206
182
  version_requirements: !ruby/object:Gem::Requirement
207
- none: false
208
183
  requirements:
209
- - - ! '>='
184
+ - - ">="
210
185
  - !ruby/object:Gem::Version
211
186
  version: '0'
212
187
  description: Business Operations for Subscription Services. See http://www.nurego.com
@@ -217,53 +192,58 @@ executables: []
217
192
  extensions: []
218
193
  extra_rdoc_files: []
219
194
  files:
195
+ - Gemfile
196
+ - Gemfile.lock
197
+ - LICENSE
198
+ - README.md
199
+ - Rakefile
200
+ - VERSION
201
+ - examples/complete_example.rb
202
+ - examples/enumerate_plans.rb
203
+ - lib/data/ca-certificates.crt
220
204
  - lib/nurego.rb
221
- - lib/nurego/entitlement.rb
222
- - lib/nurego/legal_doc.rb
223
- - lib/nurego/password_reset.rb
224
- - lib/nurego/discount.rb
225
- - lib/nurego/util.rb
226
- - lib/nurego/registration.rb
227
- - lib/nurego/cf/broker_utility.rb
228
- - lib/nurego/version.rb
229
- - lib/nurego/bill.rb
230
- - lib/nurego/json.rb
231
- - lib/nurego/instance.rb
232
- - lib/nurego/list_object.rb
233
- - lib/nurego/payment_method.rb
234
- - lib/nurego/offering.rb
235
- - lib/nurego/subscription.rb
236
- - lib/nurego/plan.rb
237
- - lib/nurego/feature.rb
238
- - lib/nurego/auth.rb
239
- - lib/nurego/api_operations/update.rb
240
- - lib/nurego/api_operations/list.rb
241
- - lib/nurego/api_operations/delete.rb
242
205
  - lib/nurego/api_operations/create.rb
243
- - lib/nurego/organization.rb
206
+ - lib/nurego/api_operations/delete.rb
207
+ - lib/nurego/api_operations/list.rb
208
+ - lib/nurego/api_operations/update.rb
244
209
  - lib/nurego/api_resource.rb
210
+ - lib/nurego/auth.rb
211
+ - lib/nurego/bill.rb
212
+ - lib/nurego/catalog.rb
213
+ - lib/nurego/category.rb
214
+ - lib/nurego/cf/broker_utility.rb
245
215
  - lib/nurego/connector.rb
246
- - lib/nurego/nurego_object.rb
247
216
  - lib/nurego/customer.rb
248
- - lib/nurego/extensions.rb
249
- - lib/nurego/errors/card_error.rb
250
- - lib/nurego/errors/authentication_error.rb
217
+ - lib/nurego/discount.rb
218
+ - lib/nurego/entitlement.rb
251
219
  - lib/nurego/errors/api_connection_error.rb
252
220
  - lib/nurego/errors/api_error.rb
221
+ - lib/nurego/errors/authentication_error.rb
222
+ - lib/nurego/errors/card_error.rb
253
223
  - lib/nurego/errors/invalid_request_error.rb
254
224
  - lib/nurego/errors/nurego_error.rb
255
225
  - lib/nurego/errors/user_not_found_error.rb
226
+ - lib/nurego/extensions.rb
227
+ - lib/nurego/feature.rb
228
+ - lib/nurego/instance.rb
229
+ - lib/nurego/json.rb
230
+ - lib/nurego/legal_doc.rb
231
+ - lib/nurego/list_object.rb
232
+ - lib/nurego/nurego_object.rb
233
+ - lib/nurego/offering.rb
234
+ - lib/nurego/organization.rb
235
+ - lib/nurego/password_reset.rb
236
+ - lib/nurego/payment_method.rb
237
+ - lib/nurego/plan.rb
238
+ - lib/nurego/registration.rb
256
239
  - lib/nurego/service.rb
257
- - lib/data/ca-certificates.crt
258
- - examples/enumerate_plans.rb
259
- - Gemfile
260
- - Gemfile.lock
240
+ - lib/nurego/subscription.rb
241
+ - lib/nurego/user.rb
242
+ - lib/nurego/util.rb
243
+ - lib/nurego/version.rb
261
244
  - nurego.gemspec
262
- - Rakefile
263
- - VERSION
264
- - LICENSE
265
- - README.md
266
245
  - spec/unit/nurego/api_resource_spec.rb
246
+ - spec/unit/nurego/cf/broker_utility_spec.rb
267
247
  - spec/unit/nurego/customer_spec.rb
268
248
  - spec/unit/nurego/list_object_spec.rb
269
249
  - spec/unit/nurego/util_spec.rb
@@ -271,31 +251,32 @@ files:
271
251
  homepage: http://www.nurego.com/api
272
252
  licenses:
273
253
  - MIT
254
+ metadata: {}
274
255
  post_install_message:
275
256
  rdoc_options: []
276
257
  require_paths:
277
258
  - lib
278
259
  required_ruby_version: !ruby/object:Gem::Requirement
279
- none: false
280
260
  requirements:
281
- - - ! '>='
261
+ - - ">="
282
262
  - !ruby/object:Gem::Version
283
263
  version: '0'
284
264
  required_rubygems_version: !ruby/object:Gem::Requirement
285
- none: false
286
265
  requirements:
287
- - - ! '>='
266
+ - - ">="
288
267
  - !ruby/object:Gem::Version
289
268
  version: '0'
290
269
  requirements: []
291
270
  rubyforge_project:
292
- rubygems_version: 1.8.24
271
+ rubygems_version: 2.4.6
293
272
  signing_key:
294
- specification_version: 3
273
+ specification_version: 4
295
274
  summary: Ruby bindings for the Nurego API
296
275
  test_files:
297
276
  - spec/unit/nurego/api_resource_spec.rb
277
+ - spec/unit/nurego/cf/broker_utility_spec.rb
298
278
  - spec/unit/nurego/customer_spec.rb
299
279
  - spec/unit/nurego/list_object_spec.rb
300
280
  - spec/unit/nurego/util_spec.rb
301
281
  - spec/unit/test_helper.rb
282
+ has_rdoc: