Beispiel #1
0
def reset_conf_before_test():
    from spyder.config.manager import CONF
    CONF.reset_to_defaults(notification=False)

    from spyder.plugins.completion.api import COMPLETION_ENTRYPOINT
    from spyder.plugins.completion.plugin import CompletionPlugin

    # Restore completion clients default settings, since they
    # don't have default values on the configuration.
    from pkg_resources import iter_entry_points

    provider_configurations = {}
    for entry_point in iter_entry_points(COMPLETION_ENTRYPOINT):
        Provider = entry_point.resolve()
        provider_name = Provider.COMPLETION_PROVIDER_NAME

        (provider_conf_version, current_conf_values,
         provider_defaults) = CompletionPlugin._merge_default_configurations(
             Provider, provider_name, provider_configurations)

        new_provider_config = {
            'version': provider_conf_version,
            'values': current_conf_values,
            'defaults': provider_defaults
        }
        provider_configurations[provider_name] = new_provider_config

    CONF.set('completions',
             'provider_configuration',
             provider_configurations,
             notification=False)
Beispiel #2
0
def setup_workingdirectory(qtbot, request, tmpdir):
    """Setup working directory plugin."""
    CONF.reset_to_defaults()
    use_startup_wdir = request.node.get_closest_marker('use_startup_wdir')
    use_cli_wdir = request.node.get_closest_marker('use_cli_wdir')

    # Setting default options
    CONF.set('workingdir', 'startup/use_project_or_home_directory', True)
    CONF.set('workingdir', 'startup/use_fixed_directory', False)

    # Create main window and new directory
    main_window = MainWindow()

    if use_startup_wdir:
        new_wdir = tmpdir.mkdir(NEW_DIR + '_startup')
        CONF.set('workingdir', 'startup/use_project_or_home_directory', False)
        CONF.set('workingdir', 'startup/use_fixed_directory', True)
        CONF.set('workingdir', 'startup/fixed_directory', str(new_wdir))
    elif use_cli_wdir:
        new_wdir = tmpdir.mkdir(NEW_DIR + '_cli')
        main_window._cli_options.working_directory = str(new_wdir)

    workingdirectory = WorkingDirectory(main_window, configuration=CONF)
    workingdirectory.on_initialize()
    workingdirectory.close = lambda: True

    return workingdirectory
Beispiel #3
0
def main_window(qtbot):
    """Main Window fixture."""
    CONF.reset_to_defaults()
    window = start.main()
    main_window.window = window
    qtbot.addWidget(window)
    yield window
Beispiel #4
0
def test_get_workingdir_startup(setup_workingdirectory):
    """Test the method that defines the working directory at home."""
    workingdirectory, qtbot = setup_workingdirectory
    # Start the working directory on the home directory
    act_wdir = workingdirectory.get_workdir()
    folders = osp.split(act_wdir)
    assert folders[-1] == NEW_DIR
    CONF.reset_to_defaults()
Beispiel #5
0
def conf(request):
    """
    Fixture yielding the Spyder config and resetting it after the test.

    You can use conf.set() to change the Spyder config in your test function.
    If you want to change the config at setup time, then use
    @pytest.mark.parametrize('conf', [(section, label, value)], indirect=True)
    in front of your test function
    """
    if hasattr(request, 'param'):
        CONF.set(*request.param)
    yield CONF
    CONF.reset_to_defaults()
Beispiel #6
0
def test_get_workingdir_startup(setup_workingdirectory):
    """
    Test the method that sets the working directory according to the one
    selected in preferences.
    """
    workingdirectory = setup_workingdirectory

    # Get the current working directory
    cwd = workingdirectory.get_workdir()
    folders = osp.split(cwd)

    # Asert working directory is the expected one
    assert folders[-1] == NEW_DIR + '_startup'
    CONF.reset_to_defaults()
Beispiel #7
0
def test_get_workingdir_cli(setup_workingdirectory):
    """
    Test that the plugin sets the working directory passed by users on the
    command line with the --workdir option.
    """
    workingdirectory = setup_workingdirectory

    # Get the current working directory
    cwd = workingdirectory.get_container().history[-1]
    folders = osp.split(cwd)

    # Asert working directory is the expected one
    assert folders[-1] == NEW_DIR + '_cli'
    CONF.reset_to_defaults()
Beispiel #8
0
def setup_workingdirectory(request):
    """Setup working directory plugin."""
    CONF.reset_to_defaults()
    use_startup_wdir = request.node.get_closest_marker('use_startup_wdir')
    if use_startup_wdir:
        new_wdir = osp.join(os.getcwd(), NEW_DIR)
        if not osp.exists(new_wdir):
            os.mkdir(new_wdir)
        CONF.set('workingdir', 'startup/use_fixed_directory', True)
        CONF.set('workingdir', 'startup/fixed_directory', new_wdir)
    else:
        CONF.set('workingdir', 'startup/use_fixed_directory', False)
        CONF.set('workingdir', 'console/use_fixed_directory', False)
        CONF.set('workingdir', 'startup/fixed_directory', get_home_dir())

    workingdirectory = WorkingDirectory(None, configuration=CONF)
    workingdirectory.close = lambda: True

    return workingdirectory
Beispiel #9
0
def setup_workingdirectory(qtbot, request):
    """Setup working directory plugin."""
    CONF.reset_to_defaults()
    use_startup_wdir = request.node.get_closest_marker('use_startup_wdir')
    if use_startup_wdir:
        new_wdir = osp.join(os.getcwd(), NEW_DIR)
        if not osp.exists(new_wdir):
            os.mkdir(new_wdir)
        CONF.set('workingdir', 'startup/use_fixed_directory', True)
        CONF.set('workingdir', 'startup/fixed_directory', new_wdir)
    else:
        CONF.set('workingdir', 'startup/use_fixed_directory', False)
        CONF.set('workingdir', 'console/use_fixed_directory', False)
        CONF.set('workingdir', 'startup/fixed_directory', get_home_dir())

    workingdirectory = WorkingDirectory(None)
    qtbot.addWidget(workingdirectory)
    workingdirectory.show()

    return workingdirectory, qtbot
Beispiel #10
0
def reset_shortcuts():
    """Reset keyboard shortcuts to default values"""
    CONF.reset_to_defaults(section='shortcuts')
Beispiel #11
0
 def reset_to_default(self):
     CONF.reset_to_defaults(section='lsp-server')
     self.table.load_servers()
     self.load_from_conf()
     self.set_modified(True)