Exemple #1
0
def test_check_senza_version_notty(monkeypatch, mock_get_app_dir, mock_get, mock_warning):
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        monkeypatch.setattr("senza.subcommands.root.__file__",
                            '/home/someuser/pymodules/root.py')
        check_senza_version("0.40")
        mock_warning.assert_not_called()
Exemple #2
0
def test_check_senza_version_notty(monkeypatch, mock_get_app_dir, mock_get, mock_warning):
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        monkeypatch.setattr("senza.subcommands.root.__file__",
                            '/home/someuser/pymodules/root.py')
        check_senza_version("0.40")
        mock_warning.assert_not_called()
Exemple #3
0
def test_check_senza_version_exception(monkeypatch,
                                       mock_get_app_dir,
                                       mock_get,
                                       mock_warning,
                                       mock_tty):
    mock_sentry = MagicMock()
    monkeypatch.setattr("senza.subcommands.root.sentry", mock_sentry)
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        mock_get.raise_for_status.side_effect = HTTPError(404, "Not Found")
        check_senza_version("0.2")
        mock_warning.assert_not_called()
        mock_sentry.captureException.assert_called_once_with()

    monkeypatch.setattr("senza.subcommands.root.sentry", None)
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        mock_get.raise_for_status.side_effect = HTTPError(404, "Not Found")
        check_senza_version("0.2")
        mock_warning.assert_not_called()
Exemple #4
0
def test_check_senza_version_exception(monkeypatch,
                                       mock_get_app_dir,
                                       mock_get,
                                       mock_warning,
                                       mock_tty):
    mock_sentry = MagicMock()
    monkeypatch.setattr("senza.subcommands.root.sentry", mock_sentry)
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        mock_get.raise_for_status.side_effect = HTTPError(404, "Not Found")
        check_senza_version("0.2")
        mock_warning.assert_not_called()
        mock_sentry.captureException.assert_called_once_with()

    monkeypatch.setattr("senza.subcommands.root.sentry", None)
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        mock_get.raise_for_status.side_effect = HTTPError(404, "Not Found")
        check_senza_version("0.2")
        mock_warning.assert_not_called()
Exemple #5
0
def test_check_senza_version_outdated_cache(monkeypatch,  # noqa: F811
                                            mock_get_app_dir,
                                            mock_get,
                                            mock_warning,
                                            mock_tty):
    monkeypatch.setattr("senza.subcommands.root.__file__",
                        '/usr/pymodules/root.py')
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        with open(temp_dir + '/pypi_version', 'w') as fd:
            fd.write('0.40')
        check_senza_version("0.40")  # This should use the disk cache
        mock_warning.assert_not_called()

        monkeypatch.setattr("senza.subcommands.root.ONE_DAY", 0)
        check_senza_version("0.40")  # This should use the API again

        mock_warning.assert_called_once_with(
            "Your senza version (0.40) is outdated. "
            "Please install the new one using "
            "'sudo pip install --upgrade stups-senza'"
        )
Exemple #6
0
def test_check_senza_version_outdated_cache(monkeypatch,  # noqa: F811
                                            mock_get_app_dir,
                                            mock_get,
                                            mock_warning,
                                            mock_tty):
    monkeypatch.setattr("senza.subcommands.root.__file__",
                        '/usr/pymodules/root.py')
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        with open(temp_dir + '/pypi_version', 'w') as fd:
            fd.write('0.40')
        check_senza_version("0.40")  # This should use the disk cache
        mock_warning.assert_not_called()

        monkeypatch.setattr("senza.subcommands.root.ONE_DAY", 0)
        check_senza_version("0.40")  # This should use the API again

        mock_warning.assert_called_once_with(
            "Your senza version (0.40) is outdated. "
            "Please install the new one using "
            "'sudo pip3 install --upgrade stups-senza'"
        )
Exemple #7
0
def test_check_senza_version(monkeypatch,
                             mock_get_app_dir, mock_get, mock_warning, mock_tty):

    with TemporaryDirectory() as temp_dir_1:
        mock_get_app_dir.return_value = temp_dir_1
        check_senza_version("0.42")
        mock_warning.assert_not_called()
        with open(temp_dir_1 + '/pypi_version') as fd:
            assert fd.read() == '0.42'

    with TemporaryDirectory() as temp_dir_2:
        mock_get_app_dir.return_value = temp_dir_2
        check_senza_version("0.43")
        mock_warning.assert_not_called()

    with TemporaryDirectory() as temp_dir_3:
        mock_get_app_dir.return_value = temp_dir_3
        monkeypatch.setattr("senza.subcommands.root.__file__",
                            '/home/someuser/pymodules/root.py')
        check_senza_version("0.40")
        mock_warning.assert_called_once_with(
            "Your senza version (0.40) is outdated. "
            "Please install the new one using 'pip install --upgrade stups-senza'"
        )

    with TemporaryDirectory() as temp_dir_4:
        mock_get_app_dir.return_value = temp_dir_4
        mock_warning.reset_mock()
        monkeypatch.setattr("senza.subcommands.root.__file__",
                            '/usr/pymodules/root.py')
        check_senza_version("0.40")
        mock_warning.assert_called_once_with(
            "Your senza version (0.40) is outdated. "
            "Please install the new one using "
            "'sudo pip install --upgrade stups-senza'"
        )
Exemple #8
0
def test_check_senza_version(monkeypatch,
                             mock_get_app_dir, mock_get, mock_warning, mock_tty):

    with TemporaryDirectory() as temp_dir_1:
        mock_get_app_dir.return_value = temp_dir_1
        check_senza_version("0.42")
        mock_warning.assert_not_called()
        with open(temp_dir_1 + '/pypi_version') as fd:
            assert fd.read() == '0.42'

    with TemporaryDirectory() as temp_dir_2:
        mock_get_app_dir.return_value = temp_dir_2
        check_senza_version("0.43")
        mock_warning.assert_not_called()

    with TemporaryDirectory() as temp_dir_3:
        mock_get_app_dir.return_value = temp_dir_3
        monkeypatch.setattr("senza.subcommands.root.__file__",
                            '/home/someuser/pymodules/root.py')
        check_senza_version("0.40")
        mock_warning.assert_called_once_with(
            "Your senza version (0.40) is outdated. "
            "Please install the new one using 'pip3 install --upgrade stups-senza'"
        )

    with TemporaryDirectory() as temp_dir_4:
        mock_get_app_dir.return_value = temp_dir_4
        mock_warning.reset_mock()
        monkeypatch.setattr("senza.subcommands.root.__file__",
                            '/usr/pymodules/root.py')
        check_senza_version("0.40")
        mock_warning.assert_called_once_with(
            "Your senza version (0.40) is outdated. "
            "Please install the new one using "
            "'sudo pip3 install --upgrade stups-senza'"
        )
Exemple #9
0
def test_check_senza_version_timeout(mock_get_app_dir, mock_get, mock_warning, mock_tty):
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        mock_get.side_effect = Timeout
        check_senza_version("0.2")
        mock_warning.assert_not_called()
Exemple #10
0
def test_check_senza_version_timeout(mock_get_app_dir, mock_get, mock_warning, mock_tty):
    with TemporaryDirectory() as temp_dir:
        mock_get_app_dir.return_value = temp_dir
        mock_get.side_effect = Timeout
        check_senza_version("0.2")
        mock_warning.assert_not_called()