404

[ Avaa Bypassed ]




Upload:

Command:

botdev@18.218.242.255: ~ $
# Copyright (c) 2015 Hewlett-Packard Development Company, L.P. (HP)
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.

import io
import textwrap

import six
from six.moves import configparser
import sys

from pbr.tests import base
from pbr import util


class TestExtrasRequireParsingScenarios(base.BaseTestCase):

    scenarios = [
        ('simple_extras', {
            'config_text': """
                [extras]
                first =
                    foo
                    bar==1.0
                second =
                    baz>=3.2
                    foo
                """,
            'expected_extra_requires': {'first': ['foo', 'bar==1.0'],
                                        'second': ['baz>=3.2', 'foo']}
        }),
        ('with_markers', {
            'config_text': """
                [extras]
                test =
                    foo:python_version=='2.6'
                    bar
                    baz<1.6 :python_version=='2.6'
                    zaz :python_version>'1.0'
                """,
            'expected_extra_requires': {
                "test:(python_version=='2.6')": ['foo', 'baz<1.6'],
                "test": ['bar', 'zaz']}}),
        ('no_extras', {
            'config_text': """
            [metadata]
            long_description = foo
            """,
            'expected_extra_requires':
            {}
        })]

    def config_from_ini(self, ini):
        config = {}
        if sys.version_info >= (3, 2):
            parser = configparser.ConfigParser()
        else:
            parser = configparser.SafeConfigParser()
        ini = textwrap.dedent(six.u(ini))
        parser.readfp(io.StringIO(ini))
        for section in parser.sections():
            config[section] = dict(parser.items(section))
        return config

    def test_extras_parsing(self):
        config = self.config_from_ini(self.config_text)
        kwargs = util.setup_cfg_to_setup_kwargs(config)

        self.assertEqual(self.expected_extra_requires,
                         kwargs['extras_require'])


class TestInvalidMarkers(base.BaseTestCase):

    def test_invalid_marker_raises_error(self):
        config = {'extras': {'test': "foo :bad_marker>'1.0'"}}
        self.assertRaises(SyntaxError, util.setup_cfg_to_setup_kwargs, config)

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
__init__.py File 985 B 0644
base.py File 8.57 KB 0644
test_commands.py File 3.6 KB 0644
test_core.py File 5.29 KB 0644
test_files.py File 2.52 KB 0644
test_hooks.py File 3.94 KB 0644
test_integration.py File 10.64 KB 0644
test_packaging.py File 30.35 KB 0644
test_pbr_json.py File 1.13 KB 0644
test_setup.py File 22.44 KB 0644
test_util.py File 2.73 KB 0644
test_version.py File 13.28 KB 0644
test_wsgi.py File 5.67 KB 0644
util.py File 2.61 KB 0644