Best Python code snippet using lisa_python
tests.py
Source:tests.py  
1"""2Test that ``PipInstall`` is a ``Command``.3The ``distutils`` package defines what is required by a ``Command``4inside of the source code (see *distutils/cmd.py:_Command*).  The5tests in this module verify that ``setupext.pip.PipInstall`` meets6the requirements described below.7``command_name``8    string returned from the ``get_command_name()`` method9``initialize_options()``10    provide default values for all options; may be customized by11    setup script, by options from config file(s), or by command-line12    options13``finalize_options()``14    decide on the final values for all options; this is called15    after all possible intervention from the outside world16    (command-line, option file, etc.) has been processed17``run()``18    run the command: do whatever it is we're here to do,19    controlled by the command's various option values20"""21from distutils import dist, errors22import atexit23import os24import tempfile25try:26    from unittest import mock27except ImportError:28    import mock29import setuptools30from setupext import pip31########################################################################32# setupext.pip.PipInstall33########################################################################34def should_define_command_name():35    assert pip.PipInstall.command_name is not None36def should_define_description():37    assert pip.PipInstall.description is not None38def should_define_default_for_each_option():39    distribution = mock.Mock(spec=dist.Distribution)40    distribution.verbose = mock.sentinel.verbose41    command = pip.PipInstall(distribution)42    for long_opt, short_opt, desc in pip.PipInstall.user_options:43        attr_name = long_opt.replace('-', '_').rstrip('=')44        attr_value = getattr(command, attr_name, mock.sentinel.unspecified)45        assert attr_value is not mock.sentinel.unspecified, (46            'attribute for option {0} was not found'.format(long_opt))47@mock.patch('setupext.pip.install')48def should_implement_setuptools_command_protocol(install_module):49    pip_command = install_module.InstallCommand()50    pip_command.run = mock.Mock()51    pip_command.cmd_opts = mock.MagicMock()52    install_module.InstallCommand.return_value = pip_command53    setuptools.setup(54        name='testing-setup',55        cmdclass={'requirements': pip.PipInstall},56        script_name='setup.py',57        script_args=[58            'requirements',59            '--requirement-file', 'requirements.txt',60            '--find-links', 'http://cheese-shop.local/links',61            '--index-url', 'http://cheese-shop.local/simple',62            '--pre',63            '--no-use-wheel',64        ],65    )66    pip_command.cmd_opts.parser.parse_args.assert_called_with([67        '-r', 'requirements.txt',68        '-f', 'http://cheese-shop.local/links',69        '-i', 'http://cheese-shop.local/simple',70        '--no-use-wheel',71        '--pre',72    ])73@mock.patch('setupext.pip.install')74def should_default_to_installing_package_requirements(install_module):75    pip_command = install_module.InstallCommand()76    pip_command.run = mock.Mock()77    pip_command.cmd_opts = mock.MagicMock()78    install_module.InstallCommand.return_value = pip_command79    setuptools.setup(80        name='testing-setup',81        cmdclass={'requirements': pip.PipInstall},82        script_name='setup.py',83        script_args=['requirements'],84        install_requires=[85            'docopt==0.6.1',86            'requests==2.3.0',87        ],88    )89    pip_command.cmd_opts.parser.parse_args.assert_called_with(90        ['docopt==0.6.1', 'requests==2.3.0'])91@mock.patch.object(pip, 'install')92def should_raise_setup_error_when_pip_import_fails(_):93    pip.install = None94    command = pip.PipInstall(dist.Distribution())95    try:96        command.run()97    except Exception as exc:98        assert isinstance(exc, errors.DistutilsSetupError)99    else:100        raise AssertionError('should have raised DistutilsSetupError')101@mock.patch('setupext.pip.install')102def should_do_nothing_without_install_requires(install_module):103    setuptools.setup(104        name='testing-setup',105        cmdclass={'requirements': pip.PipInstall},106        script_name='setup.py',107        script_args=['requirements'],108    )109    assert not install_module.InstallCommand.called110@mock.patch('setupext.pip.install')111def should_install_test_requirements_when_instructed_to(install_module):112    pip_command = install_module.InstallCommand()113    pip_command.run = mock.Mock()114    pip_command.cmd_opts = mock.MagicMock()115    install_module.InstallCommand.return_value = pip_command116    setuptools.setup(117        name='testing-setup',118        cmdclass={'requirements': pip.PipInstall},119        script_name='setup.py',120        script_args=[121            'requirements',122            '--install-test-requirements',123        ],124        tests_require=['tox==1.7.2'],125    )126    pip_command.cmd_opts.parser.parse_args.assert_called_with(127        ['tox==1.7.2'])128@mock.patch('setupext.pip.install')129def should_install_requirements_for_specified_extra(install_module):130    pip_command = install_module.InstallCommand()131    pip_command.run = mock.Mock()132    pip_command.cmd_opts = mock.MagicMock()133    install_module.InstallCommand.return_value = pip_command134    setuptools.setup(135        name='testing-setup',136        cmdclass={'requirements': pip.PipInstall},137        script_name='setup.py',138        script_args=[139            'requirements',140            '--install-extra-requirements=doc',141        ],142        extras_require={'doc': ['sphinx']}143    )144    pip_command.cmd_opts.parser.parse_args.assert_called_with(['sphinx'])145@mock.patch('setupext.pip.install')146def should_not_install_when_extra_does_not_exist(install_module):147    setuptools.setup(148        name='testing-setup',149        cmdclass={'requirements': pip.PipInstall},150        script_name='setup.py',151        script_args=[152            'requirements',153            '--install-extra-requirements=doc',154        ],155        extras_require={'not doc': []},156    )157    assert not install_module.InstallCommand.called158@mock.patch('setupext.pip.install')159def should_not_install_when_no_extras_require(install_module):160    setuptools.setup(161        name='testing-setup',162        cmdclass={'requirements': pip.PipInstall},163        script_name='setup.py',164        script_args=[165            'requirements',166            '--install-extra-requirements=doc',167        ],168    )169    assert not install_module.InstallCommand.called170########################################################################171# setupext.pip.read_requirements_from_file172########################################################################173def should_read_complex_requirements_file():174    fd, name = tempfile.mkstemp()175    atexit.register(os.unlink, name)176    os.write(fd, '\n'.join([177        '# this comment is ignored',178        '  --always-unzip  # ignored',179        '-Z',180        'Unsafe_Name>1',181        '-i ignored/index/url',182        '--index-url=ignored/url',183        '-f ignored-links-path',184        '--find-links=ignored',185        'requests==1.2.3',186        'illegal name ignored',187    ]).encode('utf-8'))188    requirements = pip.read_requirements_from_file(name)189    assert (190        requirements[0] in ['Unsafe-Name>1', 'Unsafe_Name>1']191    ), 'Unsafe name not adjusted'192    assert requirements[1] == 'requests==1.2.3', 'Simple dependency broken'...install_or_skip_dependencies.py
Source:install_or_skip_dependencies.py  
1import sys2from continuous_integration import utils3def install_or_skip_dependencies():4    def install_module(command: str, process_name: str) -> int:5        returncode = utils.run_process(command, process_name)6        if returncode != utils.RETURN_CODE_OK:7            sys.exit(-1)8        return returncode9    # TODO: Use dataclass and loop it for DRY10    black_version = "20.8b1"11    coverage_version = "5.3.1"12    mypy_version = "0.790"13    pylint_version = "2.6.0"14    xenon_version = "0.7.1"15    returncode = install_module("pip install pipenv", "pipenv")16    returncode = install_module(f"pipenv install black=={black_version}", "black")17    returncode = install_module("pipenv install codecov", "codecov")18    returncode = install_module(19        f"pipenv install coverage=={coverage_version}", "coverage"20    )21    returncode = install_module(f"pipenv install mypy=={mypy_version}", "mypy")22    returncode = install_module(f"pipenv install pylint=={pylint_version}", "pylint")23    returncode = install_module(f"pipenv install xenon=={xenon_version}", "xenon")...main.py
Source:main.py  
...12	settings = yaml.load(open('settings.yaml'))13	bot = IRCBot(settings['nick'], settings['user'], settings['realname'])14	for network, server in settings['servers'].items():15		bot.connect(network, **server)16	bot.install_module(ChannelModule, channels=settings['channels'])17	bot.install_module(PermissionModule)18	bot.install_module(AutoOPModule)19	bot.install_module(TitleModule)20	bot.install_module(CalcModule)21	bot.install_module(CodeForcesModule)22	bot.install_module(AdminModule)23	bot.install_module(DynamicModuleLoaderModule)...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
