Skip to content

Commit

Permalink
Add integration tests for CLI functionality (#729)
Browse files Browse the repository at this point in the history
This currently covers functionality added in #575
  • Loading branch information
TheRealFalcon committed Dec 15, 2020
1 parent 2022bc7 commit 9e89ca7
Showing 1 changed file with 45 additions and 0 deletions.
45 changes: 45 additions & 0 deletions tests/integration_tests/modules/test_cli.py
@@ -0,0 +1,45 @@
"""Integration tests for CLI functionality
These would be for behavior manually invoked by user from the command line
"""

import pytest

from tests.integration_tests.instances import IntegrationInstance


VALID_USER_DATA = """\
#cloud-config
runcmd:
- echo 'hi' > /var/tmp/test
"""

INVALID_USER_DATA = """\
runcmd:
- echo 'hi' > /var/tmp/test
"""


@pytest.mark.sru_2020_11
@pytest.mark.user_data(VALID_USER_DATA)
def test_valid_userdata(client: IntegrationInstance):
"""Test `cloud-init devel schema` with valid userdata.
PR #575
"""
result = client.execute('cloud-init devel schema --system')
assert result.ok
assert 'Valid cloud-config: system userdata' == result.stdout.strip()


@pytest.mark.sru_2020_11
@pytest.mark.user_data(INVALID_USER_DATA)
def test_invalid_userdata(client: IntegrationInstance):
"""Test `cloud-init devel schema` with invalid userdata.
PR #575
"""
result = client.execute('cloud-init devel schema --system')
assert not result.ok
assert 'Cloud config schema errors' in result.stderr
assert 'needs to begin with "#cloud-config"' in result.stderr

0 comments on commit 9e89ca7

Please sign in to comment.