def test_simplest_resource(self): self.runner.set_runs(fixture_agent_load_calls() + fixture.calls_cib( self.fixture_resources_pre, self.fixture_resources_post_simple, self.upgraded_cib, )) self.simplest_create() self.runner.assert_everything_launched()
def assert_command_effect(self, cib_pre, cmd, cib_post, reports=None): self.runner.set_runs( fixture.calls_cib(cib_pre, cib_post, cib_base_file=self.cib_base_file)) cmd() self.env.report_processor.assert_reports(reports if reports else []) self.runner.assert_everything_launched()
def test_disabled_wait_ok_run_ok(self): self.runner.set_runs(fixture.call_wait_supported() + fixture.calls_cib( self.fixture_cib_pre, self.fixture_resources_bundle_simple_disabled, cib_base_file=self.cib_base_file, ) + fixture.call_wait(self.timeout) + fixture.call_status( fixture.state_complete(self.fixture_status_not_running))) self.simple_bundle_create(self.timeout, disabled=True) self.runner.assert_everything_launched()
def test_disabled_wait_ok_not_running(self): self.runner.set_runs(fixture.call_dummy_metadata( ) + fixture.call_wait_supported() + fixture.calls_cib( self.fixture_resources_pre, self.fixture_resources_post_disabled, cib_base_file=self.upgraded_cib, ) + fixture.call_wait(10) + fixture.call_status( fixture.state_complete(self.fixture_status_primitive_not_running))) self.simplest_create(10, disabled=True) self.env.report_processor.assert_reports( [fixture.report_resource_not_running("A")]) self.runner.assert_everything_launched()
def test_wait_ok_run_fail(self): self.runner.set_runs(fixture.call_wait_supported() + fixture.calls_cib( self.fixture_cib_pre, self.fixture_resources_bundle_simple, cib_base_file=self.cib_base_file, ) + fixture.call_wait(self.timeout) + fixture.call_status( fixture.state_complete(self.fixture_status_not_running))) assert_raise_library_error( lambda: self.simple_bundle_create(self.timeout), fixture.report_resource_not_running("B1", severities.ERROR), ) self.runner.assert_everything_launched()
def test_wait_ok_run_fail(self): self.runner.set_runs(fixture.call_dummy_metadata( ) + fixture.call_wait_supported() + fixture.calls_cib( self.fixture_resources_pre, self.fixture_resources_post_simple, cib_base_file=self.upgraded_cib, ) + fixture.call_wait(10) + fixture.call_status( fixture.state_complete(self.fixture_status_primitive_not_running))) assert_raise_library_error( lambda: self.simplest_create(10), fixture.report_resource_not_running("A", severities.ERROR), ) self.runner.assert_everything_launched()
def test_wait_ok_run_ok(self): self.runner.set_runs(fixture.call_wait_supported() + fixture.calls_cib( self.fixture_cib_pre, self.fixture_resources_bundle_simple, cib_base_file=self.cib_base_file, ) + fixture.call_wait(self.timeout) + fixture.call_status( fixture.state_complete(self.fixture_status_running))) self.simple_bundle_create(self.timeout) self.env.report_processor.assert_reports([ fixture.report_resource_running("B1", {"Started": ["node1", "node2"]}), ]) self.runner.assert_everything_launched()
def test_wait_fail(self): self.runner.set_runs( fixture.call_dummy_metadata() + fixture.call_wait_supported() + fixture.calls_cib( self.fixture_resources_pre, self.fixture_resources_post_simple, cib_base_file=self.upgraded_cib, ) + fixture.call_wait(10, 62, self.fixture_wait_timeout_error)) assert_raise_library_error( lambda: self.simplest_create(10), fixture.report_wait_for_idle_timed_out( self.fixture_wait_timeout_error), ) self.runner.assert_everything_launched()
def test_cib_upgrade(self): self.runner.set_runs( fixture.calls_cib_load_and_upgrade(self.fixture_cib_pre) + fixture.calls_cib(self.fixture_cib_pre, self.fixture_resources_bundle_simple, cib_base_file=self.cib_base_file)) resource.bundle_create(self.env, "B1", "docker", { "image": "pcs:test", }) self.env.report_processor.assert_reports([ (severities.INFO, report_codes.CIB_UPGRADE_SUCCESSFUL, {}, None), ]) self.runner.assert_everything_launched()
def test_wait_ok_run_ok(self): self.runner.set_runs( fixture.call_dummy_metadata() + fixture.call_wait_supported() + fixture.calls_cib( self.fixture_resources_pre, self.fixture_resources_post_simple, cib_base_file=self.upgraded_cib, ) + fixture.call_wait(10) + fixture.call_status( fixture.state_complete( self.fixture_status_running_with_primitive))) self.simplest_create(10) self.env.report_processor.assert_reports([ fixture.report_resource_running("A", {"Started": ["node1"]}), ]) self.runner.assert_everything_launched()
def test_disabled_wait_ok_running(self): self.runner.set_runs( fixture.call_dummy_metadata() + fixture.call_wait_supported() + fixture.calls_cib( self.fixture_resources_pre, self.fixture_resources_post_disabled, cib_base_file=self.upgraded_cib, ) + fixture.call_wait(10) + fixture.call_status( fixture.state_complete( self.fixture_status_running_with_primitive))) assert_raise_library_error( lambda: self.simplest_create(10, disabled=True), fixture.report_resource_running("A", {"Started": ["node1"]}, severities.ERROR), ) self.runner.assert_everything_launched()
def test_wait_fail(self): fixture_wait_timeout_error = dedent("""\ Pending actions: Action 12: B1-node2-stop on node2 Error performing operation: Timer expired """) self.runner.set_runs(fixture.call_wait_supported() + fixture.calls_cib( self.fixture_cib_pre, self.fixture_resources_bundle_simple, cib_base_file=self.cib_base_file, ) + fixture.call_wait(self.timeout, 62, fixture_wait_timeout_error)) assert_raise_library_error( lambda: self.simple_bundle_create(self.timeout), fixture.report_wait_for_idle_timed_out(fixture_wait_timeout_error), ) self.runner.assert_everything_launched()
def test_cib_upgrade(self): fixture_cib_pre = """ <resources> <bundle id="B1"> <docker image="pcs:test" /> </bundle> </resources> """ self.runner.set_runs( fixture.calls_cib_load_and_upgrade(fixture_cib_pre) + fixture.calls_cib(fixture_cib_pre, fixture_cib_pre, cib_base_file=self.cib_base_file)) resource.bundle_update(self.env, "B1") self.env.report_processor.assert_reports([ (severities.INFO, report_codes.CIB_UPGRADE_SUCCESSFUL, {}, None), ]) self.runner.assert_everything_launched()
def fixture_calls_initial(self): return (fixture.call_wait_supported() + fixture.calls_cib( self.fixture_cib_pre, self.fixture_resources_bundle_simple, cib_base_file=self.cib_base_file, ))