X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=tests%2Fintegration%2Ftest_application.py;h=1a4fcaabd027ce853f027cd50be2a3575dda21bd;hb=8853ffc9d7f624099e476a740ca1eab2393f990a;hp=1618a5addbf7231f4f9349b9f4a1866e9c0019ef;hpb=f5341c9db31e56527fcb0bb320abea86fe17a550;p=osm%2FN2VC.git diff --git a/tests/integration/test_application.py b/tests/integration/test_application.py index 1618a5a..1a4fcaa 100644 --- a/tests/integration/test_application.py +++ b/tests/integration/test_application.py @@ -50,3 +50,45 @@ async def test_add_units(event_loop): assert len(units) == 2 for unit in units: assert isinstance(unit, Unit) + + +@base.bootstrapped +@pytest.mark.asyncio +async def test_upgrade_charm(event_loop): + async with base.CleanModel() as model: + app = await model.deploy('ubuntu-0') + assert app.data['charm-url'] == 'cs:ubuntu-0' + await app.upgrade_charm() + assert app.data['charm-url'].startswith('cs:ubuntu-') + assert app.data['charm-url'] != 'cs:ubuntu-0' + + +@base.bootstrapped +@pytest.mark.asyncio +async def test_upgrade_charm_channel(event_loop): + async with base.CleanModel() as model: + app = await model.deploy('ubuntu-0') + assert app.data['charm-url'] == 'cs:ubuntu-0' + await app.upgrade_charm(channel='stable') + assert app.data['charm-url'].startswith('cs:ubuntu-') + assert app.data['charm-url'] != 'cs:ubuntu-0' + + +@base.bootstrapped +@pytest.mark.asyncio +async def test_upgrade_charm_revision(event_loop): + async with base.CleanModel() as model: + app = await model.deploy('ubuntu-0') + assert app.data['charm-url'] == 'cs:ubuntu-0' + await app.upgrade_charm(revision=8) + assert app.data['charm-url'] == 'cs:ubuntu-8' + + +@base.bootstrapped +@pytest.mark.asyncio +async def test_upgrade_charm_switch(event_loop): + async with base.CleanModel() as model: + app = await model.deploy('ubuntu-0') + assert app.data['charm-url'] == 'cs:ubuntu-0' + await app.upgrade_charm(switch='ubuntu-8') + assert app.data['charm-url'] == 'cs:ubuntu-8'