Source code for message_ix_models.tests.project.test_scenariomip

import pytest

from message_ix_models import Context
from message_ix_models.project.scenariomip import workflow as w
from message_ix_models.project.scenariomip.workflow import generate
from message_ix_models.testing import bare_res


[docs] @pytest.mark.parametrize( "step_order, last_log", ( # Default steps (None, "Not implemented: step_16(…)"), # Some other order ([w.step_16, w.step_01], "Not implemented: step_01(…)"), ), ) def test_generate( caplog: pytest.LogCaptureFixture, request: pytest.FixtureRequest, test_context: Context, step_order: list | None, last_log: str, ) -> None: # Create a empty RES scenario for testing s = bare_res(request, test_context) # Set the workflow to start from this scenario test_context.set_scenario(s) # Function runs, returns a workflow wf = generate(test_context, step_order) # Workflow runs, does nothing wf.run("all") # Final log message is as expected assert last_log == caplog.messages[-1]