From: Sebastian Wagner Date: Mon, 8 Feb 2021 00:24:38 +0000 (+0100) Subject: mgr/orch: Remove old tests X-Git-Tag: v16.2.0~119^2~20 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f952888b8183b84f7c12a91d7b2e2d5cffcda6dd;p=ceph.git mgr/orch: Remove old tests Signed-off-by: Sebastian Wagner (cherry picked from commit b6c770a4cb4ab1fdcf738dd1df2fe6ca8801f1ad) --- diff --git a/src/pybind/mgr/orchestrator/tests/test_orchestrator.py b/src/pybind/mgr/orchestrator/tests/test_orchestrator.py index 96ce7436b641..35f4b64b8782 100644 --- a/src/pybind/mgr/orchestrator/tests/test_orchestrator.py +++ b/src/pybind/mgr/orchestrator/tests/test_orchestrator.py @@ -11,9 +11,7 @@ from ceph.utils import datetime_now from mgr_module import HandleCommandResult from test_orchestrator import TestOrchestrator as _TestOrchestrator -from tests import mock -from orchestrator import raise_if_exception, Completion, ProgressReference from orchestrator import InventoryHost, DaemonDescription, ServiceDescription, DaemonDescriptionStatus from orchestrator import OrchestratorValidationError from orchestrator.module import to_format, Format, OrchestratorCli, preview_table_osd @@ -72,178 +70,6 @@ def test_daemon_description(): assert dd.status.value == DaemonDescriptionStatus.error.value -def test_raise(): - c = Completion() - c._exception = ZeroDivisionError() - with pytest.raises(ZeroDivisionError): - raise_if_exception(c) - - -def test_promise(): - p = Completion(value=3) - p.finalize() - assert p.result == 3 - - -def test_promise_then(): - p = Completion(value=3).then(lambda three: three + 1) - p.finalize() - assert p.result == 4 - - -def test_promise_mondatic_then(): - p = Completion(value=3) - p.then(lambda three: Completion(value=three + 1)) - p.finalize() - assert p.result == 4 - - -def some_complex_completion(): - c = Completion(value=3).then( - lambda three: Completion(value=three + 1).then( - lambda four: four + 1)) - return c - - -def test_promise_mondatic_then_combined(): - p = some_complex_completion() - p.finalize() - assert p.result == 5 - - -def test_promise_flat(): - p = Completion() - p.then(lambda r1: Completion(value=r1 + ' there').then( - lambda r11: r11 + '!')) - p.finalize('hello') - assert p.result == 'hello there!' - - -def test_side_effect(): - foo = {'x': 1} - - def run(x): - foo['x'] = x - - foo['x'] = 1 - Completion(value=3).then(run).finalize() - assert foo['x'] == 3 - - -def test_progress(): - c = some_complex_completion() - mgr = mock.MagicMock() - mgr.process = lambda cs: [c.finalize(None) for c in cs] - - progress_val = 0.75 - c._last_promise().then( - on_complete=ProgressReference(message='hello world', - mgr=mgr, - completion=lambda: Completion( - on_complete=lambda _: progress_val)) - ) - mgr.remote.assert_called_with('progress', 'update', c.progress_reference.progress_id, 'hello world', 0.0, [ - ('origin', 'orchestrator')]) - - c.finalize() - mgr.remote.assert_called_with('progress', 'complete', c.progress_reference.progress_id) - - c.progress_reference.update() - mgr.remote.assert_called_with('progress', 'update', c.progress_reference.progress_id, - 'hello world', progress_val, [('origin', 'orchestrator')]) - assert not c.progress_reference.effective - - progress_val = 1 - c.progress_reference.update() - assert c.progress_reference.effective - mgr.remote.assert_called_with('progress', 'complete', c.progress_reference.progress_id) - - -def test_with_progress(): - mgr = mock.MagicMock() - mgr.process = lambda cs: [c.finalize(None) for c in cs] - - def execute(y): - return str(y) - - def run(x): - def two(_): - return execute(x * 2) - - return Completion.with_progress( - message='message', - on_complete=two, - mgr=mgr - - ) - c = Completion(on_complete=lambda x: x * 10).then(run)._first_promise - c.finalize(2) - assert c.result == '40' - c.progress_reference.update() - assert c.progress_reference.effective - - -def test_exception(): - - def run(x): - raise KeyError(x) - - c = Completion(value=3).then(run) - c.finalize() - with pytest.raises(KeyError): - raise_if_exception(c) - - -def test_fail(): - c = Completion().then(lambda _: 3) - c._first_promise.fail(KeyError()) - assert isinstance(c.exception, KeyError) - - with pytest.raises(ValueError, - match='Invalid State: called fail, but Completion is already finished: {}'.format( - str(ZeroDivisionError()))): - c._first_promise.fail(ZeroDivisionError()) - - -def test_pretty_print(): - mgr = mock.MagicMock() - mgr.process = lambda cs: [c.finalize(None) for c in cs] - - def add_one(x): - return x + 1 - - c = Completion(value=1, on_complete=add_one).then( - str - ).add_progress('message', mgr) - - assert c.pretty_print() == """[ - add_one(1), - str(...), - ProgressReference(...), -]""" - c.finalize() - assert c.pretty_print() == """[ -(done) add_one(1), -(done) str(2), -(done) ProgressReference('2'), -]""" - - p = some_complex_completion() - assert p.pretty_print() == """[ - (3), - lambda x: x(...), -]""" - p.finalize() - assert p.pretty_print() == """[ -(done) (3), -(done) (4), -(done) lambda x: x(5), -(done) lambda x: x(5), -]""" - - assert p.result == 5 - - def test_apply(): to = _TestOrchestrator('', 0, 0) completion = to.apply([ @@ -251,8 +77,8 @@ def test_apply(): ServiceSpec(service_type='nfs'), ServiceSpec(service_type='nfs'), ]) - completion.finalize(42) - assert completion.result == [None, None, None] + res = '' + assert completion.result == [res, res, res] def test_yaml():