示例#1
0
 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()
示例#2
0
 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()
示例#3
0
文件: control.py 项目: fathi10/test
def retreive_metadata():
    """retrieve metadata.

    :rtype: bootstrap_py.classifiers.Classifiers
    :return: Classifiers()
    """
    return Classifiers()
示例#4
0
 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())
示例#5
0
 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)
示例#6
0
 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)
示例#7
0
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()
示例#8
0
 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')
示例#9
0
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)
示例#10
0
 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)