Пример #1
0
import stat
from shutil import rmtree
import subprocess
from contextlib import contextmanager

import pytest

from univention.appcenter.actions import get_action, Abort
from univention.appcenter.app_cache import Apps
from univention.appcenter.settings import SettingValueError
from univention.appcenter.ucr import ucr_get, ucr_save
from univention.appcenter.log import log_to_logfile, log_to_stream
from univention.appcenter.docker import Docker

log_to_logfile()
log_to_stream()


class Configuring(object):
    def __init__(self, app, revert='configure'):
        self.settings = set()
        self.app = app
        self.revert = revert

    def __enter__(self):
        return self

    def set(self, config):
        self.settings.update(config)
        configure = get_action('configure')
        configure.call(app=self.app, set_vars=config, run_script='no')
Пример #2
0
        try:
            function(app_center, function.__name__.replace("_", "-"))
        except Exception:
            print("Error in {}{}".format(function.__name__, function.__doc__))
            raise
        print("Ok - {}{}".format(function.__name__, function.__doc__))

    return wrapper


def fail(message):
    raise AppCenterTestFailure(message)


if __name__ == "__main__":
    app_logger.log_to_stream()
    app_logger.get_base_logger().setLevel(logging.WARNING)

    with local_appcenter():
        app_center = AppCenterOperations()

        package = AppPackage.with_package(name="my-test-app",
                                          app_version="1.0")
        package.build_and_publish()

        test = TestOperations(app_center, package.app_id)
        test.test_install_remove_cycle()

        with test.test_install_safe():

            dependency = DebianPackage("my-dependency")