debian-mirror-gitlab/vendor/gems/kubeclient/test/test_replication_controller.rb
2023-03-04 22:38:38 +05:30

47 lines
1.8 KiB
Ruby

require_relative 'test_helper'
# Replication Controller entity tests
class TestReplicationController < MiniTest::Test
def test_get_from_json_v1
stub_core_api_list
stub_request(:get, %r{/replicationcontrollers})
.to_return(body: open_test_file('replication_controller.json'),
status: 200)
client = Kubeclient::Client.new('http://localhost:8080/api/', 'v1')
rc = client.get_replication_controller('frontendController', 'default')
assert_instance_of(Kubeclient::Resource, rc)
assert_equal('guestbook-controller', rc.metadata.name)
assert_equal('c71aa4c0-a240-11e4-a265-3c970e4a436a', rc.metadata.uid)
assert_equal('default', rc.metadata.namespace)
assert_equal(3, rc.spec.replicas)
assert_equal('guestbook', rc.spec.selector.name)
assert_requested(:get,
'http://localhost:8080/api/v1/namespaces/default/replicationcontrollers/frontendController',
times: 1)
end
def test_delete_replicaset_cascade
stub_core_api_list
client = Kubeclient::Client.new('http://localhost:8080/api/', 'v1')
opts = Kubeclient::Resource.new(
apiVersion: 'meta/v1',
gracePeriodSeconds: 0,
kind: 'DeleteOptions',
propagationPolicy: 'Foreground'
)
stub_request(:delete,
'http://localhost:8080/api/v1/namespaces/default/replicationcontrollers/frontendController')
.with(body: opts.to_hash.to_json)
.to_return(status: 200, body: open_test_file('replication_controller.json'), headers: {})
rc = client.delete_replication_controller('frontendController', 'default', delete_options: opts)
assert_kind_of(RecursiveOpenStruct, rc)
assert_requested(:delete,
'http://localhost:8080/api/v1/namespaces/default/replicationcontrollers/frontendController',
times: 1)
end
end