summaryrefslogtreecommitdiff
path: root/vendor/gems/kubeclient/test/test_node.rb
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/gems/kubeclient/test/test_node.rb')
-rw-r--r--vendor/gems/kubeclient/test/test_node.rb70
1 files changed, 70 insertions, 0 deletions
diff --git a/vendor/gems/kubeclient/test/test_node.rb b/vendor/gems/kubeclient/test/test_node.rb
new file mode 100644
index 00000000000..aa7459d63c9
--- /dev/null
+++ b/vendor/gems/kubeclient/test/test_node.rb
@@ -0,0 +1,70 @@
+require_relative 'test_helper'
+
+# Node entity tests
+class TestNode < MiniTest::Test
+ def test_get_from_json_v1
+ stub_core_api_list
+ stub_request(:get, %r{/nodes})
+ .to_return(body: open_test_file('node.json'), status: 200)
+
+ client = Kubeclient::Client.new('http://localhost:8080/api/', 'v1')
+ node = client.get_node('127.0.0.1')
+
+ assert_instance_of(Kubeclient::Resource, node)
+
+ assert_equal('041143c5-ce39-11e4-ac24-3c970e4a436a', node.metadata.uid)
+ assert_equal('127.0.0.1', node.metadata.name)
+ assert_equal('1724', node.metadata.resourceVersion)
+ assert_equal('v1', node.apiVersion)
+ assert_equal('2015-03-19T15:08:20+02:00', node.metadata.creationTimestamp)
+
+ assert_requested(
+ :get,
+ 'http://localhost:8080/api/v1',
+ times: 1
+ )
+ assert_requested(
+ :get,
+ 'http://localhost:8080/api/v1/nodes/127.0.0.1',
+ times: 1
+ )
+ end
+
+ def test_get_from_json_v1_raw
+ stub_core_api_list
+ stub_request(:get, %r{/nodes})
+ .to_return(body: open_test_file('node.json'), status: 200)
+
+ client = Kubeclient::Client.new('http://localhost:8080/api/', 'v1')
+ response = client.get_node('127.0.0.1', nil, as: :raw)
+
+ assert_equal(open_test_file('node.json').read, response)
+
+ assert_requested(
+ :get,
+ 'http://localhost:8080/api/v1',
+ times: 1
+ )
+ assert_requested(
+ :get,
+ 'http://localhost:8080/api/v1/nodes/127.0.0.1',
+ times: 1
+ )
+ end
+
+ def test_get_from_json_v1_raw_error
+ stub_request(:get, %r{/nodes})
+ .to_return(body: open_test_file('node.json'), status: 200)
+ stub_request(:get, %r{/api/v1$})
+ .to_return(body: open_test_file('core_api_resource_list.json'), status: 500)
+
+ client = Kubeclient::Client.new('http://localhost:8080/api/', 'v1')
+
+ exception = assert_raises(Kubeclient::HttpError) do
+ client.get_node('127.0.0.1', nil, as: :raw)
+ end
+
+ assert_instance_of(Kubeclient::HttpError, exception)
+ assert_equal('500 Internal Server Error', exception.message)
+ end
+end