Пример #1
0
        def decorator(*args, **kwargs):
            output = ''
            if self.cloudshell_config_reader.read().online_mode.lower(
            ) == "true":
                try:
                    is_greater_version, is_major_release = is_index_version_greater_than_current(
                    )
                except ShellFoundryVersionException as err:
                    click.secho(str(err), fg='red')
                    raise click.Abort()
                if is_greater_version:
                    if is_major_release:
                        output = 'This version of shellfoundry is not supported anymore, ' \
                                 'please upgrade by running: pip install shellfoundry --upgrade'

                        if self.abort_if_major:
                            click.secho(output, fg='yellow')
                            print('')
                            raise click.Abort()
                    else:
                        output = 'There is a new version of shellfoundry available, ' \
                                 'please upgrade by running: pip install shellfoundry --upgrade'

            f(**kwargs)

            if output:
                print('')
                click.secho(output, fg='yellow')
Пример #2
0
    def test_current_version_is_equal_to_index_version(self):
        # Arrange
        releases = {'0.2.7': 'data'}

        server_proxy = Mock(package_releases=Mock(return_value=releases))

        # Act
        with patch('shellfoundry.utilities.get_installed_version', return_value='0.2.7'), \
             patch('shellfoundry.utilities.ServerProxy', return_value=server_proxy):
            is_greater_version, is_major_release = is_index_version_greater_than_current(
            )

        # Assert
        self.assertFalse(is_greater_version)
        self.assertFalse(is_major_release)
Пример #3
0
    def test_current_version_lower_than_index_by_a_major(self):
        # Arrange
        releases = {
            '0.2.7': 'data',
            '0.2.8': 'some other data',
            '1.0.0': 'amazing data'
        }

        server_proxy = Mock(package_releases=Mock(return_value=releases))

        # Act
        with patch('shellfoundry.utilities.get_installed_version', return_value='0.2.7'), \
             patch('shellfoundry.utilities.ServerProxy', return_value=server_proxy):
            is_greater_version, is_major_release = is_index_version_greater_than_current(
            )

        # Assert
        self.assertTrue(is_greater_version)
        self.assertTrue(is_major_release)
Пример #4
0
        def decorator(*args, **kwargs):
            output = ''
            is_greater_version, is_major_release = is_index_version_greater_than_current()
            if is_greater_version:
                if is_major_release:
                    output = 'This version of shellfoundry is not supported anymore, please upgrade by running: pip install shellfoundry --upgrade'

                    if self.abort_if_major:
                        click.secho(output, fg='yellow')
                        print ''
                        raise click.Abort()
                else:
                    output = 'There is a new version of shellfoundry available, please upgrade by running: pip install shellfoundry --upgrade'

            f(**kwargs)

            if output:
                print ''
                click.secho(output, fg='yellow')