Ejemplo n.º 1
0
def test_invalid_import2(mocker, tmpdir, capsys):
    sys_exit = mocker.patch('watchgod.cli.sys.exit')
    cli('pprint.foobar')
    sys_exit.assert_called_once_with(1)
    out, err = capsys.readouterr()
    assert out == ''
    assert err == 'ImportError: Module "pprint" does not define a "foobar" attribute\n'
Ejemplo n.º 2
0
def test_invalid_path(mocker, capsys):
    sys_exit = mocker.patch('watchgod.cli.sys.exit')
    cli('tests.test_cli.foobar', '/does/not/exist')
    sys_exit.assert_called_once_with(1)
    out, err = capsys.readouterr()
    assert out == ''
    assert err == 'path "/does/not/exist" does not exist\n'
Ejemplo n.º 3
0
def test_invalid_import1(mocker, tmpdir, capsys):
    sys_exit = mocker.patch('watchgod.cli.sys.exit')
    cli('foobar')
    sys_exit.assert_called_once_with(1)
    out, err = capsys.readouterr()
    assert out == ''
    assert err == 'ImportError: "foobar" doesn\'t look like a module path\n'
Ejemplo n.º 4
0
def test_tty_attribute_error(mocker, tmpdir):
    mocker.patch('watchgod.cli.set_start_method')
    mocker.patch('watchgod.cli.sys.stdin.fileno', side_effect=AttributeError)
    mock_run_process = mocker.patch('watchgod.cli.run_process')
    cli('tests.test_cli.foobar', str(tmpdir))
    mock_run_process.assert_called_once_with(Path(str(tmpdir)),
                                             run_function,
                                             args=('tests.test_cli.foobar',
                                                   None),
                                             callback=callback)
Ejemplo n.º 5
0
def test_tty_os_error(mocker, tmpworkdir):
    mocker.patch('watchgod.cli.set_start_method')
    mocker.patch('watchgod.cli.sys.stdin.fileno', side_effect=OSError)
    mock_run_process = mocker.patch('watchgod.cli.run_process')
    cli('tests.test_cli.foobar')
    mock_run_process.assert_called_once_with(Path(str(tmpworkdir)),
                                             run_function,
                                             args=('tests.test_cli.foobar',
                                                   '/dev/tty'),
                                             callback=callback)
Ejemplo n.º 6
0
def test_simple(mocker, tmpdir):
    mocker.patch('watchgod.cli.set_start_method')
    mocker.patch('watchgod.cli.sys.stdin.fileno')
    mocker.patch('os.ttyname', return_value='/path/to/tty')
    mock_run_process = mocker.patch('watchgod.cli.run_process')
    cli('tests.test_cli.foobar', str(tmpdir))
    mock_run_process.assert_called_once_with(Path(str(tmpdir)),
                                             run_function,
                                             args=('tests.test_cli.foobar',
                                                   '/path/to/tty'),
                                             callback=callback)
Ejemplo n.º 7
0
def test_func_with_parser(tmpworkdir, mocker, initial, expected):
    # setup
    mocker.patch('sys.argv', ['foo.py', *initial])
    mocker.patch('watchgod.cli.set_start_method')
    mocker.patch('watchgod.cli.sys.stdin.fileno', side_effect=AttributeError)
    mock_run_process = mocker.patch('watchgod.cli.run_process')
    # test
    assert not tmpworkdir.join('sentinel').exists()
    cli('tests.test_cli.with_parser',
        str(tmpworkdir))  # run til mock_run_process
    run_function('tests.test_cli.with_parser',
                 None)  # run target function once
    file = tmpworkdir.join('sentinel')
    mock_run_process.assert_called_once_with(
        Path(str(tmpworkdir)),
        run_function,
        args=('tests.test_cli.with_parser', None),
        callback=callback)
    assert file.exists()
    assert file.read_text(encoding='utf-8') == ' '.join(expected)