def __init__(self, args): """Initialize Package.""" self.metadata = Classifiers() if hasattr(args, '__dict__'): for name, value in vars(args).items(): self._set_param(name, value) self._check_or_set_default_params()
def setUp(self): """Prepare test data.""" with requests_mock.Mocker() as mock: with open('bootstrap_py/data/classifiers.txt') as fobj: data = fobj.read() mock.get(Classifiers.url, text=data, status_code=200) self.data = Classifiers()
def retreive_metadata(): """retrieve metadata. :rtype: bootstrap_py.classifiers.Classifiers :return: Classifiers() """ return Classifiers()
def test_setoption_version(self): """parser add_argument version.""" commands.setoption(self.parser, Classifiers()) with self.assertRaises(SystemExit) as exc: self.parser.parse_args('-v'.split()) self.assertEqual(0, exc.exception.code) if sys.version_info > (3, 4): self.assertEqual(__version__ + '\n', sys.stdout.getvalue()) else: self.assertEqual(__version__ + '\n', sys.stderr.getvalue())
def test_setoption_minimum_username(self): """parse argument minimum with username.""" commands.setoption(self.parser, Classifiers()) args = 'create -a "Alice Forest" -e [email protected] -U alice foo' self.assertEqual('foo', self.parser.parse_args(shlex.split(args)).name) self.assertEqual('Alice Forest', self.parser.parse_args(shlex.split(args)).author) self.assertEqual('*****@*****.**', self.parser.parse_args(shlex.split(args)).email) self.assertEqual('alice', self.parser.parse_args(shlex.split(args)).username)
def test_setoption_minimum_url(self): """parse argument minimum with url.""" commands.setoption(self.parser, Classifiers()) args = ('create -a "Alice Forest" -e [email protected] ' '-u http://example.org foo') self.assertEqual('foo', self.parser.parse_args(shlex.split(args)).name) self.assertEqual('Alice Forest', self.parser.parse_args(shlex.split(args)).author) self.assertEqual('*****@*****.**', self.parser.parse_args(shlex.split(args)).email) self.assertEqual('http://example.org', self.parser.parse_args(shlex.split(args)).url)
def stub_request_metadata(badge=False): """Stub request classifiers, badge.""" if badge: with requests_mock.Mocker() as mock: with open('bootstrap_py/tests/data/badge.svg') as fobj: svg_data = fobj.read() mock.get(Update.badge_url, text=svg_data, status_code=200) with requests_mock.Mocker() as mock: with open('bootstrap_py/data/classifiers.txt') as fobj: data = fobj.read() mock.get(Classifiers.url, text=data, status_code=200) return Classifiers()
def setUp(self): """Prepare tests.""" with requests_mock.Mocker() as mock: with open('bootstrap_py/data/classifiers.txt') as fobj: data = fobj.read() mock.get(Classifiers.url, text=data, status_code=200) self.metadata = Classifiers() self.parser = argparse.ArgumentParser(description='usage') self.capture = sys.stdout self.capture_error = sys.stderr sys.stdout = six.StringIO() sys.stderr = six.StringIO() self.outdir = tempfile.mkdtemp(suffix='-bootstrap-py-test')
def main(): """main function.""" try: metadata = Classifiers() args = parse_options(metadata) if args.licenses: _pp(metadata.licenses_desc()) sys.exit(0) pypi.package_existent(args.name) pkg_data = control.PackageData(args) pkg_tree = control.PackageTree(pkg_data) pkg_tree.generate() pkg_tree.move() except (RuntimeError, BackendFailure, Conflict) as exc: sys.stderr.write('{0}\n'.format(exc)) sys.exit(1)
def test_setoption_with_extras(self): """parse argument extras.""" commands.setoption(self.parser, Classifiers()) args = ('create -a "Alice Forest" -e [email protected] -U alice ' '-l LGPLv3+ -s Beta foo') self.assertEqual('foo', self.parser.parse_args(shlex.split(args)).name) self.assertEqual('Alice Forest', self.parser.parse_args(shlex.split(args)).author) self.assertEqual('*****@*****.**', self.parser.parse_args(shlex.split(args)).email) self.assertEqual('alice', self.parser.parse_args(shlex.split(args)).username) self.assertEqual('LGPLv3+', self.parser.parse_args(shlex.split(args)).license) self.assertEqual('Beta', self.parser.parse_args(shlex.split(args)).status)