예제 #1
0
def setup_pre_app(argv: List[str]) -> argparse.Namespace:
    """Early setup that is done before the QApplication is created.

    Includes parsing the command line and setting up logging as well as initializing the
    components that do not require an application.

    Args:
        argv: sys.argv[1:] from the executable or argv passed by test suite.
    """
    args = parser.get_argparser().parse_args(argv)
    if args.version:
        print(version.info(), version.paths(), sep="\n\n")
        sys.exit(customtypes.Exit.success)
    migration.run()
    init_directories(args)
    log.setup_logging(args.log_level, *args.debug)
    _logger.debug("Start: vimiv %s", " ".join(argv))
    update_settings(args)
    trash_manager.init()
    return args
예제 #2
0
def test_do_not_run(mocker, mock_backup):
    mocker.patch.object(migration, "gtk_version_installed", return_value=False)
    migration.run()
    migration.backup.assert_not_called()  # pylint: disable=no-member
    assert not migration.WelcomePopUp.gtk_installed
예제 #3
0
def test_run(mock_gtk_version, mock_backup):
    migration.run()
    migration.backup.assert_called_once()  # pylint: disable=no-member
    migration.migrate_tags.assert_called_once()  # pylint: disable=no-member
    assert migration.WelcomePopUp.gtk_installed
예제 #4
0
def test_run(mock_gtk_version, mock_backup):
    migration.run()
    migration.backup.assert_called_once()
    migration.migrate_tags.assert_called_once()
    assert migration.WelcomePopUp.gtk_installed