Ejemplo n.º 1
0
    def is_installed(version, silent=False):
        if is_verbose():
            inform(
                "Checking whether the engine %s has been installed correctly..."
                % NetPyNEEngine.name,
                indent=1)

        ret = True
        try:

            ret_str = sp.check_output(
                ['python -c "import netpyne; print(netpyne.__version__)"'],
                shell=True,
                stderr=sp.STDOUT)
            ret = len(ret_str) > 0

            if ret and is_verbose():
                inform("%s is correctly installed..." % (NetPyNEEngine.name),
                       indent=2)
        except Exception as err:
            inform("Couldn't import netpyne into Python: ", err, indent=1)
            ret = False

        installed = ret and PyNRNEngine.is_installed(
            None) and PyNeuroMLEngine.is_installed(None)

        if not silent:
            inform("NetPyNE is_installed: %s" % ret, "", indent=1)
        return installed
Ejemplo n.º 2
0
 def is_installed(version):
     if is_verbose():
         inform("Checking whether the engine %s has been installed correctly..." %
                MooseEngine.name, indent=1)
 
     ret = True
     try:
         
         ret_str = sp.check_output(['python -c "import moose; print(moose.__version__)"'], shell=True,stderr=sp.STDOUT)
         ret = len(ret_str) > 0
         
         if ret and is_verbose():
             inform("%s is correctly installed..." % (MooseEngine.name), indent=2)
         if ret:    
             import moose
             ret = 'v%s'%moose.__version__
         
     except Exception as err:
         inform("Couldn't import moose into Python: ", err, indent=1)
         ret = False
     if not ret or not PyNeuroMLEngine.is_installed(None):
         ret = False
     
     inform("Moose is_installed(): %s"%ret, "", indent=1, verbosity=2)
     return ret
Ejemplo n.º 3
0
 def is_installed(version):
     
     PyNestEngine.environment_vars = NestEngine.get_nest_environment()
     
     ret = True
     try:
         
         ret_str = check_output(['python -c "import nest; print(nest.version())"'], shell=True, verbosity=2)
         ret = len(ret_str) > 0
         
         if ret:
             ret = 'v%s'%ret_str.split('Version')[-1].split()[0]
         
         if ret and is_verbose():
             inform("%s is correctly installed..." % (PyNestEngine.name), indent=2)
         
         if is_verbose():
             inform("NEST is installed with Python support...", indent=2)
             inform("Env vars: %s" % PyNestEngine.environment_vars, indent=2)
         
     except Exception as err:
         inform("Couldn't import NEST into Python: ", err, indent=1)
         inform("NEST env vars: %s" % PyNestEngine.environment_vars, indent=1)
         ret = False
     return ret
 def is_installed(version, silent=True):
     if is_verbose():
         inform("Checking whether the engine %s has been installed correctly..." %
                NetPyNEEngine.name, indent=1)
 
     ret = True
     try:
         
         ret_str = sp.check_output(['python -c "import netpyne; print(netpyne.__version__)"'], shell=True,stderr=sp.STDOUT)
         
         ret = len(ret_str) > 0
         
         if ret and is_verbose():
             inform("%s is correctly installed..." % (NetPyNEEngine.name), indent=2)
             
         if ret:
             ret = 'v%s'%str(ret_str.strip())
             
     except Exception as err:
         inform("Couldn't import netpyne into Python: ", err, indent=1)
         ret = False
         
     if not PyNRNEngine.is_installed(None) or not PyNeuroMLEngine.is_installed(None):
         ret = False
     
     if not silent:
         inform("NetPyNE is_installed: %s"%ret, "", indent=1)
     return ret
Ejemplo n.º 5
0
    def is_installed(version):

        PyNestEngine.environment_vars = NestEngine.get_nest_environment()

        ret = True
        try:

            ret_str = check_output(
                ['python -c "import nest; print(nest.version())"'], shell=True)
            ret = len(ret_str) > 0

            if ret and is_verbose():
                inform("%s is correctly installed..." % (PyNestEngine.name),
                       indent=2)

            if is_verbose():
                inform("NEST is installed with Python support...", indent=2)
                inform("Env vars: %s" % PyNestEngine.environment_vars,
                       indent=2)

        except Exception as err:
            inform("Couldn't import NEST into Python: ", err, indent=1)
            inform("NEST env vars: %s" % PyNestEngine.environment_vars,
                   indent=1)
            ret = False
        return ret
Ejemplo n.º 6
0
    def is_installed(version):
        ret = True
        if is_verbose():
            inform("Checking whether %s is installed..." % NeuronEngine.name,
                   indent=1)
        try:
            output = check_output(['nrniv', '--version'], verbosity=2)
            if is_verbose():
                inform('%s is installed' % output.strip(), indent=2)
            ret = 'v%s' % output.split()[3]
        except OSError:
            try:
                environment_vars, path = NeuronEngine.get_nrn_environment()

                inform('Testing NEURON with env: %s and path: %s' %
                       (environment_vars, path),
                       indent=2)
                output = check_output([path + '/nrniv', '--version'])
                if is_verbose():
                    inform('%s was already installed (by OMV..?)' %
                           output.strip(),
                           indent=2)

                ret = 'v%s' % output.split()[3]
            except OSError:
                inform('NEURON not currently installed', indent=2)
                ret = False
        return ret
Ejemplo n.º 7
0
 def is_installed(version):
     if is_verbose():
         inform("Checking whether %s is installed..." %
                JNeuroMLPyNNNRNEngine.name,
                indent=1)
     return JNeuroMLEngine.is_installed(
         None) and PyNNNRNEngine.is_installed(None)
 def is_installed(version):
     if is_verbose():
         inform("Checking whether %s is installed..." %
                PyNNBrian1Engine.name,
                indent=1)
     return PyNNEngine.is_installed(None) and Brian1Engine.is_installed(
         None)
Ejemplo n.º 9
0
    def is_installed(version):
        ret = True
        try:

            ret_str = sp.check_output(
                ['python -c "import numba; print(numba.__version__)"'],
                shell=True,
                stderr=sp.STDOUT)
            ret = len(ret_str) > 0

            if isinstance(ret_str, bytes):
                ret_str = ret_str.decode('utf-8')

            ret = 'v%s' % ret_str.strip()
            if is_verbose():
                inform("numba %s is correctly installed..." % ret,
                       indent=2,
                       verbosity=2)

        except Exception as err:
            inform("Couldn't import numba into Python: ",
                   err,
                   indent=1,
                   verbosity=2)
            ret = False
        return ret
 def is_installed(version):
     if is_verbose():
         inform("Checking whether %s is installed correctly..." %
                PyNNNRNEngine.name, indent=1)
     installed = PyNNEngine.is_installed(None) and NeuronEngine.is_installed(None)
     
     return installed
Ejemplo n.º 11
0
    def is_installed(version):
        ret = True
        try:
            if is_verbose():
                inform("Checking whether %s is installed..." %
                       PyNRNEngine.name,
                       indent=1)
            import neuron
            if is_verbose():
                inform("PyNEURON version %s is correctly installed..." %
                       neuron.sys.version,
                       indent=2)

        except Exception as err:
            inform("Couldn't import NEURON into Python: ", err, indent=1)
            ret = False
        return ret
Ejemplo n.º 12
0
    def is_installed(version):
        if is_verbose():
            inform("Checking whether %s is installed..." %
                   PyLemsNeuroML2Engine.name,
                   indent=1)

        nml2_installed = os.path.isdir(default_nml2_dir)

        return PyLemsEngine.is_installed(None) and nml2_installed
Ejemplo n.º 13
0
    def is_installed(version):
        if is_verbose():
            inform("Checking whether %s is installed correctly..." %
                   PyNNNRNEngine.name,
                   indent=1)
        installed = PyNNEngine.is_installed(
            None) and NeuronEngine.is_installed(None)

        return installed
Ejemplo n.º 14
0
 def is_installed(cls, version):
     ret = True
     
     try:
         output = check_output(['nrniv', '--version'])
         if is_verbose():
             inform('%s was already installed locally'%output.strip(), indent=2)
     except OSError:
         try:
             environment_vars, path = NeuronEngine.get_nrn_environment()
             
             inform('Testing NEURON with env: %s and path: %s'%(environment_vars, path), indent=2)
             output = check_output([path+'/nrniv', '--version'])
             if is_verbose():
                 inform('%s was already installed (by OMV..?)'%output.strip(), indent=2)
         except OSError:
                 inform('NEURON not currently installed', indent=2)
                 ret = False
     return ret
Ejemplo n.º 15
0
 def is_installed(version):
     ret = True
     try:
         if is_verbose():
             inform("Checking whether %s is installed..." %
                PyNeuroMLEngine.name, indent=1)
         FNULL = open(os.devnull, 'w')
         sp.check_call(['pynml' if os.name != 'nt' else 'pynml.bat', '-h'], stdout=FNULL)
     except OSError:
         ret = False
     return ret
Ejemplo n.º 16
0
 def is_installed(version):
     ret = True
     try:
         import pyNN
         if is_verbose():
             inform("pyNN version %s is correctly installed..." % pyNN.__version__, indent=2)
         
     except Exception as err:
         inform("Couldn't import pyNN into Python: ", err, indent=1)
         ret = False
     return ret
Ejemplo n.º 17
0
    def is_installed(version):
        ret = True
        try:
            if is_verbose():
                inform("Checking whether %s is installed..." %
                       JNeuroMLEngine.name,
                       indent=1)
            FNULL = open(os.devnull, 'w')
            jnml = JNeuroMLEngine.get_executable()
            r = check_output([jnml, '-v'],
                             verbosity=2,
                             env=JNeuroMLEngine.get_environment())
            ret = '%s' % r.split()[1]

            if is_verbose():
                inform("%s %s is installed..." % (JNeuroMLEngine.name, ret),
                       indent=2)
        except OSError as err:
            inform("Couldn't execute/import jNeuroML: ", err, indent=1)
            ret = False
        return ret
 def is_installed(version):
     ret = True
     try:
         if is_verbose():
             inform("Checking whether %s is installed..." %
                JNeuroMLEngine.name, indent=1)
         FNULL = open(os.devnull, 'w')
         r = check_output(['jnml' if os.name != 'nt' else 'jnml.bat', '-v'], verbosity=2)
         ret = '%s'%r.split()[1]
     except OSError:
         ret = False
     return ret
Ejemplo n.º 19
0
 def is_installed(version):
     ret = True
     try:
         if is_verbose():
             inform("Checking whether %s is installed..." %
                    PyNeuroMLEngine.name,
                    indent=1)
         FNULL = open(os.devnull, 'w')
         sp.check_call(['pynml' if os.name != 'nt' else 'pynml.bat', '-h'],
                       stdout=FNULL)
     except OSError:
         ret = False
     return ret
Ejemplo n.º 20
0
    def is_installed(version):

        PyNestEngine.environment_vars = NestEngine.get_nest_environment()

        ret = True
        try:

            ret_str = check_output(
                ['python -c "import nest; print(nest.version())"'],
                shell=True,
                verbosity=2)
            ret = len(ret_str) > 0

            if ret:
                ret_str = ret_str.strip().split('\n')[-1]
                #print('NEST info: %s; <<%s>>'%(ret, ret_str))
                if 'Version' in ret_str:
                    ret = 'v%s' % ret_str.split('Version')[-1].split()[0]
                elif '-' in ret_str:
                    ret = 'v%s' % ret_str.split('-')[-1].split()[0]
                else:
                    ret = 'v%s' % ret_str.split()[-1]

            if ret and is_verbose():
                inform("%s is correctly installed..." % (PyNestEngine.name),
                       indent=2)

            if is_verbose():
                inform("NEST is installed with Python support...", indent=2)
                inform("Env vars: %s" % PyNestEngine.environment_vars,
                       indent=2)

        except Exception as err:
            inform("Couldn't import NEST into Python: ", err, indent=1)
            inform("NEST env vars: %s" % PyNestEngine.environment_vars,
                   indent=1)
            ret = False
        return ret
Ejemplo n.º 21
0
def test_one(omt_fname):
    tally = parse_omt(omt_fname)
    inform('')
    if tally.all_passed():
        inform("Test passed: %s" % omt_fname, overline='=', center=True)
    else:
        inform("Test failed: %s" % (omt_fname), underline='=', center=True)

    if is_verbose():
        th = TallyHolder()
        th.add(tally)
        print('\n' + th.summary() + '\n')

    assert (tally.all_passed())
Ejemplo n.º 22
0
    def is_installed(version):
        ret = True

        environment_vars = NestEngine.get_nest_environment()

        try:
            FNULL = open(os.devnull, 'w')

            check_output([environment_vars['NEST_HOME'] + 'bin/nest', '-v'],
                         verbosity=is_verbose())
        except OSError as err:
            inform("Couldn't execute NEST: ", err, indent=1)
            ret = False
        return ret
Ejemplo n.º 23
0
 def is_installed(version):
     ret = True
     try:
         
         ret_str = sp.check_output(['python -c "import pyNN; print(pyNN.__version__)"'], shell=True,stderr=sp.STDOUT)
         ret = len(ret_str) > 0
         
         ret = 'v%s'%ret_str.strip()
         if is_verbose():
             inform("pyNN %s is correctly installed..." % ret, indent=2)
         
     except Exception as err:
         inform("Couldn't import pyNN into Python: ", err, indent=1)
         ret = False
     return ret
Ejemplo n.º 24
0
    def is_installed(version):
        ret = False
        try:
            import brian
            if is_verbose():
                inform("Brian version %s is correctly installed..." %
                       brian.__version__,
                       indent=2)

            ret = 'v%s' % brian.__version__

        except Exception as err:
            inform("Couldn't import Brian into Python: ", err, indent=1)
            ret = False
        return ret
 def is_installed(version):
     ret = True
     try:
         inform("Checking whether %s is installed..." % PyNRNEngine.name, indent=1, verbosity=2)
         
         ### Prints to stderr!!
         #ret_str = check_output(['python -c "import neuron; print(neuron.h.nrnversion())"'], shell=True, verbosity=2)
         import neuron
         ret_str = neuron.h.nrnversion()
         
         ret = 'v%s'%ret_str.split()[3]
         if is_verbose():
             inform("PyNEURON version %s is correctly installed..." % ret, indent=2)
             
         
     except Exception as err: 
         inform("Couldn't import NEURON into Python: ", err, indent=1)
         ret = False
     return ret
Ejemplo n.º 26
0
 def is_installed(version):
     ret = True
     try:
         inform("Checking whether %s is installed..." % PyNRNEngine.name, indent=1, verbosity=2)
         
         ### Prints to stderr!!
         #ret_str = check_output(['python -c "import neuron; print(neuron.h.nrnversion())"'], shell=True, verbosity=2)
         import neuron
         ret_str = neuron.h.nrnversion()
         
         ret = 'v%s'%ret_str.split()[3]
         if is_verbose():
             inform("PyNEURON version %s is correctly installed..." % ret, indent=2)
             
         
     except Exception as err: 
         inform("Couldn't import NEURON into Python: ", err, indent=1)
         ret = False
     return ret
 def is_installed(version):
     if is_verbose():
         inform("Checking whether %s is installed..." %
                PyNNNestEngine.name, indent=1)
     return PyNNEngine.is_installed(None) and PyNestEngine.is_installed(None)
 def is_installed(version):
     if is_verbose():
         inform("Checking whether %s is installed..." %
            JNeuroMLMooseEngine.name, indent=1)
     return JNeuroMLEngine.is_installed(None) and MooseEngine.is_installed(None)
Ejemplo n.º 29
0
def test_all(do_not_run=False,
             only_this_engine=None,
             include_temp_tests=False):
    cwd = Path(getcwd())
    all_omts = [p.as_posix() for p in cwd.glob('**/*.omt')]
    if include_temp_tests:
        all_omts += [p.as_posix() for p in cwd.glob('**/*.omt_')]

    th = TallyHolder()
    if environ.get('TRAVIS'):
        if not environ.get('OMV_ENGINE'):
            tallies = [parse_omt(t) for t in all_omts]
        else:
            engine = environ.get('OMV_ENGINE').lower()
            tallies = [
                parse_omt(t) for t in all_omts
                if load_yaml(t)['engine'].lower() == engine
            ]
    elif only_this_engine:

        inform('Only running tests for engine: %s' % only_this_engine)
        tallies = [
            parse_omt(t) for t in all_omts
            if load_yaml(t)['engine'].lower() == only_this_engine.lower()
        ]
    else:
        tallies = []
        failed = 0
        for i in range(len(all_omts)):
            t = all_omts[i]
            inform('')
            tally = parse_omt(t, do_not_run)
            if not tally.all_passed(): failed += 1
            if not do_not_run:
                inform('')
                inform('')
                inform('      [ Test %i of %i complete - failed so far: %s ]' %
                       (i + 1, len(all_omts), failed))
            tallies.append(tally)

    tallies.sort()

    if not do_not_run:
        for t in tallies:
            th.add(t)

        results = []
        for i in range(len(tallies)):
            t = tallies[i]
            results.append(t.all_passed())
        inform('')
        inform("%i test(s) run" % len(tallies),
               overline='-',
               underline='-',
               center=True)
        inform('')
        if len(results) == 0:
            inform("No tests found!", underline='=', center=True)
        elif all(results):
            inform("All tests passing!", underline='=', center=True)
        else:
            failed = [trim_path(t.omt) for t in tallies if not t.all_passed()]
            inform("Some test(s) failed: ", failed, underline='=')

        if is_verbose():
            print('\n' + th.summary() + '\n')

        assert len(results) > 0
        assert all(results)

    else:
        engs = {}
        tot_tests = 0
        for t in tallies:
            if not t.engine in engs:
                engs[t.engine] = 0
            engs[t.engine] += 1
            tot_tests += 1
        inform('')
        for e in sorted(engs):
            inform('  Engine %s has %s tests' % (e, engs[e]))
        inform('')
        inform('  %s OMV tests in total' % (tot_tests))
        inform('')