X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=modules%2Flibjuju%2Ftests%2Fintegration%2Ftest_machine.py;h=9a5f075833d9c9a893dbc92d0f7857193fee0fcc;hp=cabf46d7f2bd784d1d83b6c9608864197d9c00ad;hb=refs%2Fchanges%2F94%2F6394%2F1;hpb=1a15d1c84fc826fa7996c1c9d221a324edd33432 diff --git a/modules/libjuju/tests/integration/test_machine.py b/modules/libjuju/tests/integration/test_machine.py index cabf46d..9a5f075 100644 --- a/modules/libjuju/tests/integration/test_machine.py +++ b/modules/libjuju/tests/integration/test_machine.py @@ -1,8 +1,8 @@ import asyncio -import pytest - from tempfile import NamedTemporaryFile +import pytest + from .. import base @@ -26,22 +26,24 @@ async def test_status(event_loop): assert machine.agent_status == 'pending' assert not machine.agent_version + # there is some inconsistency in the capitalization of status_message + # between different providers await asyncio.wait_for( - model.block_until(lambda: (machine.status == 'running' and - machine.agent_status == 'started' and - machine.agent_version is not None)), + model.block_until( + lambda: (machine.status == 'running' and + machine.status_message.lower() == 'running' and + machine.agent_status == 'started')), timeout=480) - assert machine.status == 'running' - # there is some inconsistency in the message case between providers - assert machine.status_message.lower() == 'running' - assert machine.agent_status == 'started' - assert machine.agent_version.major >= 2 - @base.bootstrapped @pytest.mark.asyncio async def test_scp(event_loop): + # ensure that asyncio.subprocess will work; + try: + asyncio.get_child_watcher().attach_loop(event_loop) + except RuntimeError: + pytest.skip('test_scp will always fail outside of MainThread') async with base.CleanModel() as model: await model.add_machine() await asyncio.wait_for(