Esempio n. 1
0
File: test.py Progetto: boegel/spack
def test(parser, args):
    if args.list:
        print "Available tests:"
        colify(spack.test.list_tests(), indent=2)

    else:
        spack.test.run(args.names, args.verbose)
Esempio n. 2
0
def run(names, verbose=False):
    """Run tests with the supplied names.  Names should be a list.  If
       it's empty, run ALL of Spack's tests."""
    verbosity = 1 if not verbose else 2

    if not names:
        names = test_names
    else:
        for test in names:
            if test not in test_names:
                tty.error("%s is not a valid spack test name." % test,
                          "Valid names are:")
                colify(test_names, indent=4)
                sys.exit(1)

    runner = unittest.TextTestRunner(verbosity=verbosity)

    testsRun = errors = failures = skipped = 0
    for test in names:
        module = 'spack.test.' + test
        print module
        suite = unittest.defaultTestLoader.loadTestsFromName(module)

        tty.msg("Running test: %s" % test)
        result = runner.run(suite)
        testsRun += result.testsRun
        errors   += len(result.errors)
        failures += len(result.failures)
        skipped  += len(result.skipped)

    succeeded = not errors and not failures
    tty.msg("Tests Complete.",
            "%5d tests run" % testsRun,
            "%5d skipped" % skipped,
            "%5d failures" % failures,
            "%5d errors" % errors)

    if not errors and not failures:
        tty.info("OK", format='g')
    else:
        tty.info("FAIL", format='r')
        sys.exit(1)
Esempio n. 3
0
File: info.py Progetto: boegel/spack
def info(parser, args):
    package = packages.get(args.name)
    print "Package:   ", package.name
    print "Homepage:  ", package.homepage
    print "Download:  ", package.url

    print
    print "Safe versions:  "

    if package.versions:
        colify(reversed(sorted(package.versions)), indent=4)
    else:
        print "None.  Use spack versions %s to get a list of downloadable versions." % package.name

    print
    print "Dependencies:"
    if package.dependencies:
        colify(package.dependencies, indent=4)
    else:
        print "    None"

    print
    print "Virtual packages: "
    if package.provided:
        for spec, when in package.provided.items():
            print "    %s provides %s" % (when, spec)
    else:
        print "    None"

    print
    print "Description:"
    if package.__doc__:
        doc = re.sub(r'\s+', ' ', package.__doc__)
        lines = textwrap.wrap(doc, 72)
        for line in lines:
            print "    " + line
    else:
        print "    None"
Esempio n. 4
0
def versions(parser, args):
    pkg = packages.get(args.package)
    colify(reversed(pkg.fetch_available_versions()))
Esempio n. 5
0
File: list.py Progetto: boegel/spack
def list(parser, args):
    # Print all the package names in columns
    colify(packages.all_package_names())
Esempio n. 6
0
def compilers(parser, args):
    tty.msg("Supported compilers")
    colify(spack.compilers.supported_compilers(), indent=4)
Esempio n. 7
0
def providers(parser, args):
    for spec in spack.cmd.parse_specs(args.vpkg_spec):
        colify(sorted(spack.packages.providers_for(spec)), indent=4)