Skip to content

Commit a813b0b

Browse files
committed
New tests for /v3/info/usage_summary
1 parent 971136d commit a813b0b

File tree

1 file changed

+24
-1
lines changed

1 file changed

+24
-1
lines changed

spec/unit/fetchers/global_usage_summary_fetcher_spec.rb

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,42 @@ module VCAP::CloudController
55
subject(:fetcher) { GlobalUsageSummaryFetcher }
66

77
describe '.summary' do
8-
let!(:task) { TaskModel.make(state: TaskModel::RUNNING_STATE, memory_in_mb: 100) }
8+
before do
9+
router_group = double('router_group', type: 'tcp', reservable_ports: [8080])
10+
routing_api_client = double('routing_api_client', router_group: router_group, enabled?: true)
11+
allow(CloudController::DependencyLocator).to receive(:instance).and_return(double(:api_client, routing_api_client:))
12+
end
13+
14+
let!(:org) { Organization.make }
15+
let!(:space) { Space.make(organization: org) }
916
let!(:completed_task) { TaskModel.make(state: TaskModel::SUCCEEDED_STATE, memory_in_mb: 100) }
17+
let!(:running_task) { TaskModel.make(state: TaskModel::RUNNING_STATE, memory_in_mb: 100) }
1018
let!(:started_process1) { ProcessModelFactory.make(instances: 3, state: 'STARTED', memory: 100) }
1119
let!(:started_process2) { ProcessModelFactory.make(instances: 6, state: 'STARTED', memory: 100) }
1220
let!(:started_process3) { ProcessModelFactory.make(instances: 7, state: 'STARTED', memory: 100) }
1321
let!(:stopped_process) { ProcessModelFactory.make(instances: 2, state: 'STOPPED', memory: 100) }
1422
let!(:process2) { ProcessModelFactory.make(instances: 5, state: 'STARTED', memory: 100) }
23+
let!(:service_instance1) { ServiceInstance.make(is_gateway_service: false) }
24+
let!(:service_instance2) { ServiceInstance.make(is_gateway_service: true) }
25+
let!(:service_key1) { VCAP::CloudController::ServiceKey.make(service_instance: service_instance1) }
26+
let!(:service_key2) { VCAP::CloudController::ServiceKey.make(service_instance: service_instance2) }
27+
let!(:shared_domain_with_router_group) { SharedDomain.make(router_group_guid: 'rg-123') }
28+
let!(:shared_domain_without_router_group) { SharedDomain.make(router_group_guid: nil) }
29+
let!(:private_domain_without_router_group) { PrivateDomain.make(owning_organization: org) }
30+
let!(:route1) { Route.make(host: '', domain: shared_domain_with_router_group, port: 8080) }
31+
let!(:route2) { Route.make(host: '', domain: private_domain_without_router_group, space: space) }
1532

1633
it 'returns a summary' do
1734
summary = fetcher.summary
1835

1936
expect(summary.started_instances).to eq(21)
2037
expect(summary.memory_in_mb).to eq(2200)
38+
expect(summary.routes).to eq(2)
39+
expect(summary.service_instances).to eq(1)
40+
expect(summary.reserved_ports).to eq(1)
41+
expect(summary.domains).to eq(2) # system domain "vcap.me" plus :private_domain_without_router_group
42+
expect(summary.per_app_tasks).to eq(1)
43+
expect(summary.service_keys).to eq(2)
2144
end
2245
end
2346
end

0 commit comments

Comments
 (0)