mirror of https://github.com/docker/docker-py.git
Added test for "top" function
Signed-off-by: Pierre Fersing <pierre.fersing@bleemeo.com>
This commit is contained in:
parent
2d4a71df2e
commit
c1577606be
|
@ -383,6 +383,33 @@ def get_fake_stats():
|
||||||
return status_code, response
|
return status_code, response
|
||||||
|
|
||||||
|
|
||||||
|
def get_fake_top():
|
||||||
|
return 200, {
|
||||||
|
'Processes': [
|
||||||
|
[
|
||||||
|
'root',
|
||||||
|
'26501',
|
||||||
|
'6907',
|
||||||
|
'0',
|
||||||
|
'10:32',
|
||||||
|
'pts/55',
|
||||||
|
'00:00:00',
|
||||||
|
'sleep 60',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'Titles': [
|
||||||
|
'UID',
|
||||||
|
'PID',
|
||||||
|
'PPID',
|
||||||
|
'C',
|
||||||
|
'STIME',
|
||||||
|
'TTY',
|
||||||
|
'TIME',
|
||||||
|
'CMD',
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
def get_fake_volume_list():
|
def get_fake_volume_list():
|
||||||
status_code = 200
|
status_code = 200
|
||||||
response = {
|
response = {
|
||||||
|
@ -462,6 +489,8 @@ fake_responses = {
|
||||||
|
|
||||||
'{1}/{0}/containers/3cc2351ab11b/stats'.format(CURRENT_VERSION, prefix):
|
'{1}/{0}/containers/3cc2351ab11b/stats'.format(CURRENT_VERSION, prefix):
|
||||||
get_fake_stats,
|
get_fake_stats,
|
||||||
|
'{1}/{0}/containers/3cc2351ab11b/top'.format(CURRENT_VERSION, prefix):
|
||||||
|
get_fake_top,
|
||||||
'{1}/{0}/containers/3cc2351ab11b/stop'.format(CURRENT_VERSION, prefix):
|
'{1}/{0}/containers/3cc2351ab11b/stop'.format(CURRENT_VERSION, prefix):
|
||||||
post_fake_stop_container,
|
post_fake_stop_container,
|
||||||
'{1}/{0}/containers/3cc2351ab11b/kill'.format(CURRENT_VERSION, prefix):
|
'{1}/{0}/containers/3cc2351ab11b/kill'.format(CURRENT_VERSION, prefix):
|
||||||
|
|
|
@ -786,6 +786,44 @@ class TestMacAddress(BaseTestCase):
|
||||||
self.client.kill(id)
|
self.client.kill(id)
|
||||||
|
|
||||||
|
|
||||||
|
class TestContainerTop(BaseTestCase):
|
||||||
|
def runTest(self):
|
||||||
|
container = self.client.create_container(
|
||||||
|
BUSYBOX, ['sleep', '60'])
|
||||||
|
|
||||||
|
id = container['Id']
|
||||||
|
|
||||||
|
self.client.start(container)
|
||||||
|
res = self.client.top(container['Id'])
|
||||||
|
print(res)
|
||||||
|
self.assertEqual(
|
||||||
|
res['Titles'],
|
||||||
|
['UID', 'PID', 'PPID', 'C', 'STIME', 'TTY', 'TIME', 'CMD']
|
||||||
|
)
|
||||||
|
self.assertEqual(len(res['Processes']), 1)
|
||||||
|
self.assertEqual(res['Processes'][0][7], 'sleep 60')
|
||||||
|
self.client.kill(id)
|
||||||
|
|
||||||
|
|
||||||
|
class TestContainerTopWithPsArgs(BaseTestCase):
|
||||||
|
def runTest(self):
|
||||||
|
container = self.client.create_container(
|
||||||
|
BUSYBOX, ['sleep', '60'])
|
||||||
|
|
||||||
|
id = container['Id']
|
||||||
|
|
||||||
|
self.client.start(container)
|
||||||
|
res = self.client.top(container['Id'], 'waux')
|
||||||
|
self.assertEqual(
|
||||||
|
res['Titles'],
|
||||||
|
['USER', 'PID', '%CPU', '%MEM', 'VSZ', 'RSS',
|
||||||
|
'TTY', 'STAT', 'START', 'TIME', 'COMMAND'],
|
||||||
|
)
|
||||||
|
self.assertEqual(len(res['Processes']), 1)
|
||||||
|
self.assertEqual(res['Processes'][0][10], 'sleep 60')
|
||||||
|
self.client.kill(id)
|
||||||
|
|
||||||
|
|
||||||
class TestRestart(BaseTestCase):
|
class TestRestart(BaseTestCase):
|
||||||
def runTest(self):
|
def runTest(self):
|
||||||
container = self.client.create_container(BUSYBOX, ['sleep', '9999'])
|
container = self.client.create_container(BUSYBOX, ['sleep', '9999'])
|
||||||
|
|
|
@ -1713,6 +1713,26 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
stream=True
|
stream=True
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def test_container_top(self):
|
||||||
|
self.client.top(fake_api.FAKE_CONTAINER_ID)
|
||||||
|
|
||||||
|
fake_request.assert_called_with(
|
||||||
|
'GET',
|
||||||
|
url_prefix + 'containers/3cc2351ab11b/top',
|
||||||
|
params={},
|
||||||
|
timeout=DEFAULT_TIMEOUT_SECONDS
|
||||||
|
)
|
||||||
|
|
||||||
|
def test_container_top_with_psargs(self):
|
||||||
|
self.client.top(fake_api.FAKE_CONTAINER_ID, 'waux')
|
||||||
|
|
||||||
|
fake_request.assert_called_with(
|
||||||
|
'GET',
|
||||||
|
url_prefix + 'containers/3cc2351ab11b/top',
|
||||||
|
params={'ps_args': 'waux'},
|
||||||
|
timeout=DEFAULT_TIMEOUT_SECONDS
|
||||||
|
)
|
||||||
|
|
||||||
##################
|
##################
|
||||||
# IMAGES TESTS #
|
# IMAGES TESTS #
|
||||||
##################
|
##################
|
||||||
|
|
Loading…
Reference in New Issue