diff --git a/.gitignore b/.gitignore index 3f432376c3af8beee100f17841e166c6f592e436..24f6cd85f90d688e1dbaf6e0c898b670b351982c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,58 +1,5 @@ -# use glob syntax. -syntax: glob -*.ser -*.class -*~ -*.bak -#*.off -*.old +# python +__pycache__ +.mypy_cache *.pyc -*.bk -*.swp -.DS_Store -**/__pycache__ - -# logging files -detailed.log - -# eclipse conf file -.settings -.classpath -.project -.manager -.scala_dependencies - -# idea -.idea -*.iml - -# building -target -build -null -tmp* -temp* -dist -test-output -build.log - -# other scm -.svn -.CVS -.hg* - -# switch to regexp syntax. -# syntax: regexp -# ^\.pc/ - -#SHITTY output not in target directory -build.log - -#emacs TAGS -TAGS - -lib/ -env/ - -# Egg -parser/parser-big-dft/bigdftparser.egg-info/ +*.egg-info/ \ No newline at end of file diff --git a/molcasparser/__init__.py b/molcasparser/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..6b7cbce807701137f038a6c11d7d6b2fbbc409d8 --- /dev/null +++ b/molcasparser/__init__.py @@ -0,0 +1 @@ +from .main import MolcasParser diff --git a/parser/parser-molcas/functionals.py b/molcasparser/functionals.py similarity index 98% rename from parser/parser-molcas/functionals.py rename to molcasparser/functionals.py index 7f51d52e76c2d8cfb13b94be84478df5887290dd..c1c42efdeb529c986da49771a757ee29fe7c7a60 100644 --- a/parser/parser-molcas/functionals.py +++ b/molcasparser/functionals.py @@ -1,4 +1,4 @@ -# Copyright 2016-2018 The NOMAD Developers Group +# Copyright 2016-2018 Ask Hjorth Larsen, Fawzi Mohamed # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/parser/parser-molcas/main.py b/molcasparser/main.py similarity index 93% rename from parser/parser-molcas/main.py rename to molcasparser/main.py index 07d3cac2f183ecbd95fde6680ed1691fdb68f84a..8e0bc8163b55f3d3ff358e29566876e2244d5eaf 100755 --- a/parser/parser-molcas/main.py +++ b/molcasparser/main.py @@ -1,4 +1,4 @@ -# Copyright 2016-2018 The NOMAD Developers Group +# Copyright 2016-2018 Ask Hjorth Larsen, Fawzi Mohamed # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,8 +17,8 @@ from __future__ import print_function import os import sys -import setup_paths import re +import logging import numpy as np from ase import Atoms @@ -29,10 +29,11 @@ from nomadcore.simple_parser import mainFunction, SimpleMatcher as SM from nomadcore.local_meta_info import loadJsonFile, InfoKindEl from nomadcore.unit_conversion.unit_conversion \ import register_userdefined_quantity, convert_unit +import nomad_meta_info -from functionals import functionals +from .functionals import functionals -metaInfoPath = os.path.normpath(os.path.join(os.path.dirname(os.path.abspath(__file__)),"../../../../nomad-meta-info/meta_info/nomad_meta_info/molcas.nomadmetainfo.json")) +metaInfoPath = os.path.normpath(os.path.join(os.path.dirname(os.path.abspath(nomad_meta_info.__file__)), "molcas.nomadmetainfo.json")) metaInfoEnv, warnings = loadJsonFile(filePath=metaInfoPath, dependencyLoader=None, extraArgsHandling=InfoKindEl.ADD_EXTRA_ARGS, @@ -640,29 +641,53 @@ def molcas_main_loop_sm(): ] + get_anymodule_sms()) return m -mainFileDescription = SM( - name='root', - weak=True, - startReStr='', - fixedStartValues={'program_name': 'Molcas', - 'program_basis_set_type': 'gaussians'}, - sections=['section_run'], - subMatchers=[ - get_header_sm(), - #get_inputfile_echo_sm(), - molcas_main_loop_sm(), - SM(r'x^', # force parser to parse the whole file - name='impossible') - ]) - - -def main(**kwargs): - mainFunction(mainFileDescription=mainFileDescription, - metaInfoEnv=metaInfoEnv, - parserInfo=parser_info, - cachingLevelForMetaName={}, - superContext=context, - **kwargs) +def main_file_description(): + return SM( + name='root', + weak=True, + startReStr='', + fixedStartValues={'program_name': 'Molcas', + 'program_basis_set_type': 'gaussians'}, + sections=['section_run'], + subMatchers=[ + get_header_sm(), + #get_inputfile_echo_sm(), + molcas_main_loop_sm(), + SM(r'x^', # force parser to parse the whole file + name='impossible') + ]) + + +class MolcasParser(): + """ A proper class envolop for running this parser from within python. """ + def __init__(self, backend, **kwargs): + self.backend_factory = backend + + def parse(self, mainfile): + global context + context = MolcasContext() + + from unittest.mock import patch + logging.debug('molcas parser started') + logging.getLogger('nomadcore').setLevel(logging.WARNING) + backend = self.backend_factory(metaInfoEnv) + with patch.object(sys, 'argv', ['<exe>', '--uri', 'nmd://uri', mainfile]): + mainFunction( + mainFileDescription=main_file_description(), + metaInfoEnv=metaInfoEnv, + parserInfo=parser_info, + cachingLevelForMetaName={}, + superContext=context, + superBackend=backend) + + return backend + if __name__ == '__main__': - main() + mainFunction( + mainFileDescription=main_file_description(), + metaInfoEnv=metaInfoEnv, + parserInfo=parser_info, + cachingLevelForMetaName={}, + superContext=context, + **kwargs) diff --git a/parser/parser-molcas/generate_scala_testcode.py b/parser/parser-molcas/generate_scala_testcode.py deleted file mode 100755 index bd881f59a4064b21fc8c76b4ead4a89615de3cfd..0000000000000000000000000000000000000000 --- a/parser/parser-molcas/generate_scala_testcode.py +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 2016-2018 The NOMAD Developers Group -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Main author and maintainer: Ask Hjorth Larsen <asklarsen@gmail.com> - -from __future__ import print_function -import os -from glob import glob - -scala_imports = """package eu.nomad_lab.parsers - -import eu.nomad_lab.{ parsers, DefaultPythonInterpreter } -import org.scalacheck.Properties -import org.specs2.mutable.Specification -import org.{ json4s => jn } - -""" - -test_template = """\ - "test %(name)s " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/%(name)s", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/%(name)s", "json") must_== ParseResult.ParseSuccess - } - }""" - -fd = open('out.scala', 'w') - -fd.write(scala_imports) - -print('object MolcasParserSpec extends Specification {', file=fd) -print(' "MolcasParserTest" >> {', file=fd) - -fnames = glob('test/test???.input.out') -fnames.sort() -for fname in fnames: - fname = os.path.basename(fname) - print(test_template % dict(name=fname), file=fd) - -print(' }', file=fd) -print('}', file=fd) diff --git a/parser/parser-molcas/nomad_meta_info b/parser/parser-molcas/nomad_meta_info deleted file mode 120000 index 1b10d0640f73609a04c7e90a8923e8ca39e692dd..0000000000000000000000000000000000000000 --- a/parser/parser-molcas/nomad_meta_info +++ /dev/null @@ -1 +0,0 @@ -../../../../nomad-meta-info/meta_info/nomad_meta_info \ No newline at end of file diff --git a/parser/parser-molcas/runtests.py b/parser/parser-molcas/runtests.py deleted file mode 100755 index ab44ef86591c47ae2cd5af3e6353d2ae94da99e5..0000000000000000000000000000000000000000 --- a/parser/parser-molcas/runtests.py +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 2016-2018 The NOMAD Developers Group -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Main author and maintainer: Ask Hjorth Larsen <asklarsen@gmail.com> - -from __future__ import print_function -from glob import glob -import re -from optparse import OptionParser -from subprocess import Popen, PIPE -import os -from ase.parallel import world -import platform - -p = OptionParser() -opts, args = p.parse_args() - -if len(args) == 0: - testfiles = glob('test/test???.input.out') - testfiles.sort() -else: - testfiles = argv - -for i, testfile in enumerate(testfiles): - if i % world.size != world.rank: - continue - dirname, basename = os.path.split(testfile) - py = 'python' - if platform.node() == 'labdev-nomad': - py = '/labEnv3/bin/python' - args = [py, 'main.py', '--annotate'] - args.append(testfile) - print(' '.join(args)) - proc = Popen(args, stdout=PIPE) - txt = proc.stdout.read() - with open('%s.json' % testfile, 'w') as fd: - fd.write(txt.decode('ascii')) diff --git a/parser/parser-molcas/setup_paths.py b/parser/parser-molcas/setup_paths.py deleted file mode 100644 index 013c4ec3d31018ccd29e7b7a084cf5a7ca44d999..0000000000000000000000000000000000000000 --- a/parser/parser-molcas/setup_paths.py +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright 2016-2018 The NOMAD Developers Group -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# Main author and maintainer: Ask Hjorth Larsen <asklarsen@gmail.com> - -import sys, os, os.path -baseDir = os.path.dirname(os.path.abspath(__file__)) -commonDir = os.path.normpath(os.path.join(baseDir,"../../../../python-common/common/python")) - -if not commonDir in sys.path: - sys.path.insert(0, commonDir) diff --git a/parser/parser-molcas/test b/parser/parser-molcas/test deleted file mode 120000 index 39b7720836e0bcf774cce3cbc9a71f114591a809..0000000000000000000000000000000000000000 --- a/parser/parser-molcas/test +++ /dev/null @@ -1 +0,0 @@ -../../test/examples \ No newline at end of file diff --git a/pysrc b/pysrc deleted file mode 120000 index acc58c682f0fb812bf7153d7cc9812943f3f66fc..0000000000000000000000000000000000000000 --- a/pysrc +++ /dev/null @@ -1 +0,0 @@ -parser/parser-molcas \ No newline at end of file diff --git a/setup.py b/setup.py new file mode 100644 index 0000000000000000000000000000000000000000..ad1e4b61406ebc77b64a693626324bdd5244d481 --- /dev/null +++ b/setup.py @@ -0,0 +1,33 @@ +# Copyright 2016-2018 Ask Hjorth Larsen, Fawzi Mohamed +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from setuptools import setup, find_packages + + +def main(): + setup( + name='molcasparser', + version='0.1', + description='NOMAD parser implementation for Molcas.', + author='Ask Hjorth Larsen, Fawzi Mohamed', + license='APACHE 2.0', + packages=find_packages(), + install_requires=[ + 'nomadcore' + ], + ) + + +if __name__ == '__main__': + main() diff --git a/src/main/scala/eu/nomad_lab/parsers/MolcasParser.scala b/src/main/scala/eu/nomad_lab/parsers/MolcasParser.scala deleted file mode 100644 index fdf049e660d8a326dee13f5a9147b84db80493ac..0000000000000000000000000000000000000000 --- a/src/main/scala/eu/nomad_lab/parsers/MolcasParser.scala +++ /dev/null @@ -1,60 +0,0 @@ -/* - Copyright 2016-2017 The NOMAD Developers Group - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - */ -package eu.nomad_lab.parsers - -import eu.{ nomad_lab => lab } -import eu.nomad_lab.DefaultPythonInterpreter -import org.{ json4s => jn } -import scala.collection.breakOut - -object MolcasParser extends SimpleExternalParserGenerator( - name = "MolcasParser", - parserInfo = jn.JObject( - ("name" -> jn.JString("MolcasParser")) :: - ("parserId" -> jn.JString("MolcasParser" + lab.MolcasVersionInfo.version)) :: - ("versionInfo" -> jn.JObject( - ("nomadCoreVersion" -> jn.JObject(lab.NomadCoreVersionInfo.toMap.map { - case (k, v) => k -> jn.JString(v.toString) - }(breakOut): List[(String, jn.JString)])) :: - (lab.MolcasVersionInfo.toMap.map { - case (key, value) => - (key -> jn.JString(value.toString)) - }(breakOut): List[(String, jn.JString)]) - )) :: Nil - ), - mainFileTypes = Seq("text/.*"), - mainFileRe = """ - \s*\^[\s\^]*M O L C A S\s* - \s*\^[\s\^]*version \S+ patchlevel \S+\s* -""".r, - cmd = Seq(DefaultPythonInterpreter.pythonExe(), "${envDir}/parsers/molcas/parser/parser-molcas/main.py", - "--uri", "${mainFileUri}", "${mainFilePath}"), - resList = Seq( - "parser-molcas/main.py", - "parser-molcas/functionals.py", - "parser-molcas/setup_paths.py", - "nomad_meta_info/public.nomadmetainfo.json", - "nomad_meta_info/common.nomadmetainfo.json", - "nomad_meta_info/meta_types.nomadmetainfo.json", - "nomad_meta_info/molcas.nomadmetainfo.json" - ) ++ DefaultPythonInterpreter.commonFiles(), - dirMap = Map( - "parser-molcas" -> "parsers/molcas/parser/parser-molcas", - "nomad_meta_info" -> "nomad-meta-info/meta_info/nomad_meta_info", - "python" -> "python-common/common/python/nomadcore" - ) ++ DefaultPythonInterpreter.commonDirMapping(), - metaInfoEnv = Some(lab.meta.KnownMetaInfoEnvs.molcas) -) diff --git a/src/test/scala/eu/nomad_lab/parsers/MolcasParserSpec.scala b/src/test/scala/eu/nomad_lab/parsers/MolcasParserSpec.scala deleted file mode 100644 index fa30a12e540a5fdf24476d5de5ea770f31e7085f..0000000000000000000000000000000000000000 --- a/src/test/scala/eu/nomad_lab/parsers/MolcasParserSpec.scala +++ /dev/null @@ -1,594 +0,0 @@ -/* - Copyright 2016-2017 The NOMAD Developers Group - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - */ -package eu.nomad_lab.parsers - -import eu.nomad_lab.{ parsers, DefaultPythonInterpreter } -import org.scalacheck.Properties -import org.specs2.mutable.Specification -import org.{ json4s => jn } - -object MolcasParserSpec extends Specification { - "MolcasParserTest" >> { - "test test000.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test000.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test000.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test001.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test001.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test001.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test002.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test002.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test002.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test003.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test003.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test003.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test004.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test004.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test004.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test005.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test005.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test005.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test006.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test006.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test006.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test007.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test007.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test007.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test008.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test008.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test008.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test009.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test009.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test009.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test010.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test010.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test010.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test011.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test011.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test011.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test012.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test012.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test012.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test013.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test013.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test013.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test014.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test014.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test014.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test015.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test015.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test015.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test016.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test016.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test016.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test017.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test017.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test017.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test018.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test018.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test018.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test019.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test019.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test019.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test020.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test020.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test020.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test021.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test021.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test021.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test022.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test022.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test022.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test023.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test023.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test023.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test024.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test024.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test024.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test025.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test025.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test025.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test026.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test026.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test026.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test027.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test027.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test027.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test028.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test028.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test028.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test029.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test029.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test029.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test030.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test030.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test030.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test031.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test031.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test031.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test032.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test032.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test032.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test033.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test033.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test033.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test034.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test034.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test034.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test036.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test036.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test036.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test037.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test037.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test037.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test038.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test038.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test038.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test039.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test039.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test039.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test040.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test040.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test040.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test041.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test041.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test041.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test042.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test042.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test042.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test043.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test043.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test043.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test044.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test044.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test044.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test045.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test045.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test045.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test046.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test046.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test046.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test047.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test047.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test047.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test048.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test048.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test048.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test049.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test049.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test049.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test050.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test050.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test050.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test051.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test051.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test051.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test052.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test052.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test052.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test053.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test053.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test053.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test054.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test054.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test054.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test900.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test900.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test900.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test901.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test901.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test901.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test902.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test902.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test902.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test903.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test903.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test903.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test904.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test904.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test904.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test905.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test905.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test905.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test906.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test906.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test906.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test907.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test907.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test907.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test908.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test908.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test908.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test909.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test909.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test909.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test910.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test910.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test910.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test911.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test911.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test911.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test912.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test912.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test912.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test914.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test914.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test914.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test915.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test915.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test915.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test916.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test916.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test916.input.out", "json") must_== ParseResult.ParseSuccess - } - } - "test test917.input.out " >> { - "test with json-events" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test917.input.out", "json-events") must_== ParseResult.ParseSuccess - } - "test with json" >> { - ParserRun.parse(MolcasParser, "parsers/molcas/test/examples/test917.input.out", "json") must_== ParseResult.ParseSuccess - } - } - } -} diff --git a/test/examples/.gitignore b/tests/.gitignore similarity index 100% rename from test/examples/.gitignore rename to tests/.gitignore diff --git a/test/examples/inputs/test000.input b/tests/inputs/test000.input similarity index 100% rename from test/examples/inputs/test000.input rename to tests/inputs/test000.input diff --git a/test/examples/inputs/test001.input b/tests/inputs/test001.input similarity index 100% rename from test/examples/inputs/test001.input rename to tests/inputs/test001.input diff --git a/test/examples/inputs/test002.input b/tests/inputs/test002.input similarity index 100% rename from test/examples/inputs/test002.input rename to tests/inputs/test002.input diff --git a/test/examples/inputs/test003.input b/tests/inputs/test003.input similarity index 100% rename from test/examples/inputs/test003.input rename to tests/inputs/test003.input diff --git a/test/examples/inputs/test004.input b/tests/inputs/test004.input similarity index 100% rename from test/examples/inputs/test004.input rename to tests/inputs/test004.input diff --git a/test/examples/inputs/test005.input b/tests/inputs/test005.input similarity index 100% rename from test/examples/inputs/test005.input rename to tests/inputs/test005.input diff --git a/test/examples/inputs/test006.input b/tests/inputs/test006.input similarity index 100% rename from test/examples/inputs/test006.input rename to tests/inputs/test006.input diff --git a/test/examples/inputs/test007.input b/tests/inputs/test007.input similarity index 100% rename from test/examples/inputs/test007.input rename to tests/inputs/test007.input diff --git a/test/examples/inputs/test008.input b/tests/inputs/test008.input similarity index 100% rename from test/examples/inputs/test008.input rename to tests/inputs/test008.input diff --git a/test/examples/inputs/test009.input b/tests/inputs/test009.input similarity index 100% rename from test/examples/inputs/test009.input rename to tests/inputs/test009.input diff --git a/test/examples/inputs/test010.input b/tests/inputs/test010.input similarity index 100% rename from test/examples/inputs/test010.input rename to tests/inputs/test010.input diff --git a/test/examples/inputs/test011.input b/tests/inputs/test011.input similarity index 100% rename from test/examples/inputs/test011.input rename to tests/inputs/test011.input diff --git a/test/examples/inputs/test012.input b/tests/inputs/test012.input similarity index 100% rename from test/examples/inputs/test012.input rename to tests/inputs/test012.input diff --git a/test/examples/inputs/test013.input b/tests/inputs/test013.input similarity index 100% rename from test/examples/inputs/test013.input rename to tests/inputs/test013.input diff --git a/test/examples/inputs/test014.input b/tests/inputs/test014.input similarity index 100% rename from test/examples/inputs/test014.input rename to tests/inputs/test014.input diff --git a/test/examples/inputs/test015.input b/tests/inputs/test015.input similarity index 100% rename from test/examples/inputs/test015.input rename to tests/inputs/test015.input diff --git a/test/examples/inputs/test016.input b/tests/inputs/test016.input similarity index 100% rename from test/examples/inputs/test016.input rename to tests/inputs/test016.input diff --git a/test/examples/inputs/test017.input b/tests/inputs/test017.input similarity index 100% rename from test/examples/inputs/test017.input rename to tests/inputs/test017.input diff --git a/test/examples/inputs/test018.input b/tests/inputs/test018.input similarity index 100% rename from test/examples/inputs/test018.input rename to tests/inputs/test018.input diff --git a/test/examples/inputs/test019.input b/tests/inputs/test019.input similarity index 100% rename from test/examples/inputs/test019.input rename to tests/inputs/test019.input diff --git a/test/examples/inputs/test020.input b/tests/inputs/test020.input similarity index 100% rename from test/examples/inputs/test020.input rename to tests/inputs/test020.input diff --git a/test/examples/inputs/test021.input b/tests/inputs/test021.input similarity index 100% rename from test/examples/inputs/test021.input rename to tests/inputs/test021.input diff --git a/test/examples/inputs/test022.input b/tests/inputs/test022.input similarity index 100% rename from test/examples/inputs/test022.input rename to tests/inputs/test022.input diff --git a/test/examples/inputs/test023.input b/tests/inputs/test023.input similarity index 100% rename from test/examples/inputs/test023.input rename to tests/inputs/test023.input diff --git a/test/examples/inputs/test024.input b/tests/inputs/test024.input similarity index 100% rename from test/examples/inputs/test024.input rename to tests/inputs/test024.input diff --git a/test/examples/inputs/test025.input b/tests/inputs/test025.input similarity index 100% rename from test/examples/inputs/test025.input rename to tests/inputs/test025.input diff --git a/test/examples/inputs/test026.input b/tests/inputs/test026.input similarity index 100% rename from test/examples/inputs/test026.input rename to tests/inputs/test026.input diff --git a/test/examples/inputs/test027.input b/tests/inputs/test027.input similarity index 100% rename from test/examples/inputs/test027.input rename to tests/inputs/test027.input diff --git a/test/examples/inputs/test028.input b/tests/inputs/test028.input similarity index 100% rename from test/examples/inputs/test028.input rename to tests/inputs/test028.input diff --git a/test/examples/inputs/test029.input b/tests/inputs/test029.input similarity index 100% rename from test/examples/inputs/test029.input rename to tests/inputs/test029.input diff --git a/test/examples/inputs/test030.input b/tests/inputs/test030.input similarity index 100% rename from test/examples/inputs/test030.input rename to tests/inputs/test030.input diff --git a/test/examples/inputs/test031.input b/tests/inputs/test031.input similarity index 100% rename from test/examples/inputs/test031.input rename to tests/inputs/test031.input diff --git a/test/examples/inputs/test032.input b/tests/inputs/test032.input similarity index 100% rename from test/examples/inputs/test032.input rename to tests/inputs/test032.input diff --git a/test/examples/inputs/test033.input b/tests/inputs/test033.input similarity index 100% rename from test/examples/inputs/test033.input rename to tests/inputs/test033.input diff --git a/test/examples/inputs/test034.input b/tests/inputs/test034.input similarity index 100% rename from test/examples/inputs/test034.input rename to tests/inputs/test034.input diff --git a/test/examples/inputs/test036.input b/tests/inputs/test036.input similarity index 100% rename from test/examples/inputs/test036.input rename to tests/inputs/test036.input diff --git a/test/examples/inputs/test037.input b/tests/inputs/test037.input similarity index 100% rename from test/examples/inputs/test037.input rename to tests/inputs/test037.input diff --git a/test/examples/inputs/test038.input b/tests/inputs/test038.input similarity index 100% rename from test/examples/inputs/test038.input rename to tests/inputs/test038.input diff --git a/test/examples/inputs/test039.input b/tests/inputs/test039.input similarity index 100% rename from test/examples/inputs/test039.input rename to tests/inputs/test039.input diff --git a/test/examples/inputs/test040.input b/tests/inputs/test040.input similarity index 100% rename from test/examples/inputs/test040.input rename to tests/inputs/test040.input diff --git a/test/examples/inputs/test041.input b/tests/inputs/test041.input similarity index 100% rename from test/examples/inputs/test041.input rename to tests/inputs/test041.input diff --git a/test/examples/inputs/test042.input b/tests/inputs/test042.input similarity index 100% rename from test/examples/inputs/test042.input rename to tests/inputs/test042.input diff --git a/test/examples/inputs/test043.input b/tests/inputs/test043.input similarity index 100% rename from test/examples/inputs/test043.input rename to tests/inputs/test043.input diff --git a/test/examples/inputs/test044.input b/tests/inputs/test044.input similarity index 100% rename from test/examples/inputs/test044.input rename to tests/inputs/test044.input diff --git a/test/examples/inputs/test045.input b/tests/inputs/test045.input similarity index 100% rename from test/examples/inputs/test045.input rename to tests/inputs/test045.input diff --git a/test/examples/inputs/test046.input b/tests/inputs/test046.input similarity index 100% rename from test/examples/inputs/test046.input rename to tests/inputs/test046.input diff --git a/test/examples/inputs/test047.input b/tests/inputs/test047.input similarity index 100% rename from test/examples/inputs/test047.input rename to tests/inputs/test047.input diff --git a/test/examples/inputs/test048.input b/tests/inputs/test048.input similarity index 100% rename from test/examples/inputs/test048.input rename to tests/inputs/test048.input diff --git a/test/examples/inputs/test049.input b/tests/inputs/test049.input similarity index 100% rename from test/examples/inputs/test049.input rename to tests/inputs/test049.input diff --git a/test/examples/inputs/test050.input b/tests/inputs/test050.input similarity index 100% rename from test/examples/inputs/test050.input rename to tests/inputs/test050.input diff --git a/test/examples/inputs/test051.input b/tests/inputs/test051.input similarity index 100% rename from test/examples/inputs/test051.input rename to tests/inputs/test051.input diff --git a/test/examples/inputs/test052.input b/tests/inputs/test052.input similarity index 100% rename from test/examples/inputs/test052.input rename to tests/inputs/test052.input diff --git a/test/examples/inputs/test053.input b/tests/inputs/test053.input similarity index 100% rename from test/examples/inputs/test053.input rename to tests/inputs/test053.input diff --git a/test/examples/inputs/test054.input b/tests/inputs/test054.input similarity index 100% rename from test/examples/inputs/test054.input rename to tests/inputs/test054.input diff --git a/test/examples/inputs/test900.input b/tests/inputs/test900.input similarity index 100% rename from test/examples/inputs/test900.input rename to tests/inputs/test900.input diff --git a/test/examples/inputs/test901.input b/tests/inputs/test901.input similarity index 100% rename from test/examples/inputs/test901.input rename to tests/inputs/test901.input diff --git a/test/examples/inputs/test902.input b/tests/inputs/test902.input similarity index 100% rename from test/examples/inputs/test902.input rename to tests/inputs/test902.input diff --git a/test/examples/inputs/test903.input b/tests/inputs/test903.input similarity index 100% rename from test/examples/inputs/test903.input rename to tests/inputs/test903.input diff --git a/test/examples/inputs/test904.input b/tests/inputs/test904.input similarity index 100% rename from test/examples/inputs/test904.input rename to tests/inputs/test904.input diff --git a/test/examples/inputs/test905.input b/tests/inputs/test905.input similarity index 100% rename from test/examples/inputs/test905.input rename to tests/inputs/test905.input diff --git a/test/examples/inputs/test906.input b/tests/inputs/test906.input similarity index 100% rename from test/examples/inputs/test906.input rename to tests/inputs/test906.input diff --git a/test/examples/inputs/test907.input b/tests/inputs/test907.input similarity index 100% rename from test/examples/inputs/test907.input rename to tests/inputs/test907.input diff --git a/test/examples/inputs/test908.input b/tests/inputs/test908.input similarity index 100% rename from test/examples/inputs/test908.input rename to tests/inputs/test908.input diff --git a/test/examples/inputs/test909.input b/tests/inputs/test909.input similarity index 100% rename from test/examples/inputs/test909.input rename to tests/inputs/test909.input diff --git a/test/examples/inputs/test910.input b/tests/inputs/test910.input similarity index 100% rename from test/examples/inputs/test910.input rename to tests/inputs/test910.input diff --git a/test/examples/inputs/test911.input b/tests/inputs/test911.input similarity index 100% rename from test/examples/inputs/test911.input rename to tests/inputs/test911.input diff --git a/test/examples/inputs/test912.input b/tests/inputs/test912.input similarity index 100% rename from test/examples/inputs/test912.input rename to tests/inputs/test912.input diff --git a/test/examples/inputs/test914.input b/tests/inputs/test914.input similarity index 100% rename from test/examples/inputs/test914.input rename to tests/inputs/test914.input diff --git a/test/examples/inputs/test915.input b/tests/inputs/test915.input similarity index 100% rename from test/examples/inputs/test915.input rename to tests/inputs/test915.input diff --git a/test/examples/inputs/test916.input b/tests/inputs/test916.input similarity index 100% rename from test/examples/inputs/test916.input rename to tests/inputs/test916.input diff --git a/test/examples/inputs/test917.input b/tests/inputs/test917.input similarity index 100% rename from test/examples/inputs/test917.input rename to tests/inputs/test917.input diff --git a/test/examples/test000.input.out b/tests/test000.input.out similarity index 100% rename from test/examples/test000.input.out rename to tests/test000.input.out diff --git a/test/examples/test001.input.out b/tests/test001.input.out similarity index 100% rename from test/examples/test001.input.out rename to tests/test001.input.out diff --git a/test/examples/test002.input.out b/tests/test002.input.out similarity index 100% rename from test/examples/test002.input.out rename to tests/test002.input.out diff --git a/test/examples/test003.input.out b/tests/test003.input.out similarity index 100% rename from test/examples/test003.input.out rename to tests/test003.input.out diff --git a/test/examples/test004.input.out b/tests/test004.input.out similarity index 100% rename from test/examples/test004.input.out rename to tests/test004.input.out diff --git a/test/examples/test005.input.out b/tests/test005.input.out similarity index 100% rename from test/examples/test005.input.out rename to tests/test005.input.out diff --git a/test/examples/test006.input.out b/tests/test006.input.out similarity index 100% rename from test/examples/test006.input.out rename to tests/test006.input.out diff --git a/test/examples/test007.input.out b/tests/test007.input.out similarity index 100% rename from test/examples/test007.input.out rename to tests/test007.input.out diff --git a/test/examples/test008.input.out b/tests/test008.input.out similarity index 100% rename from test/examples/test008.input.out rename to tests/test008.input.out diff --git a/test/examples/test009.input.out b/tests/test009.input.out similarity index 100% rename from test/examples/test009.input.out rename to tests/test009.input.out diff --git a/test/examples/test010.input.out b/tests/test010.input.out similarity index 100% rename from test/examples/test010.input.out rename to tests/test010.input.out diff --git a/test/examples/test011.input.out b/tests/test011.input.out similarity index 100% rename from test/examples/test011.input.out rename to tests/test011.input.out diff --git a/test/examples/test012.input.out b/tests/test012.input.out similarity index 100% rename from test/examples/test012.input.out rename to tests/test012.input.out diff --git a/test/examples/test013.input.out b/tests/test013.input.out similarity index 100% rename from test/examples/test013.input.out rename to tests/test013.input.out diff --git a/test/examples/test014.input.out b/tests/test014.input.out similarity index 100% rename from test/examples/test014.input.out rename to tests/test014.input.out diff --git a/test/examples/test015.input.out b/tests/test015.input.out similarity index 100% rename from test/examples/test015.input.out rename to tests/test015.input.out diff --git a/test/examples/test016.input.out b/tests/test016.input.out similarity index 100% rename from test/examples/test016.input.out rename to tests/test016.input.out diff --git a/test/examples/test017.input.out b/tests/test017.input.out similarity index 100% rename from test/examples/test017.input.out rename to tests/test017.input.out diff --git a/test/examples/test018.input.out b/tests/test018.input.out similarity index 100% rename from test/examples/test018.input.out rename to tests/test018.input.out diff --git a/test/examples/test019.input.out b/tests/test019.input.out similarity index 100% rename from test/examples/test019.input.out rename to tests/test019.input.out diff --git a/test/examples/test020.input.out b/tests/test020.input.out similarity index 100% rename from test/examples/test020.input.out rename to tests/test020.input.out diff --git a/test/examples/test021.input.out b/tests/test021.input.out similarity index 100% rename from test/examples/test021.input.out rename to tests/test021.input.out diff --git a/test/examples/test022.input.out b/tests/test022.input.out similarity index 100% rename from test/examples/test022.input.out rename to tests/test022.input.out diff --git a/test/examples/test023.input.out b/tests/test023.input.out similarity index 100% rename from test/examples/test023.input.out rename to tests/test023.input.out diff --git a/test/examples/test024.input.out b/tests/test024.input.out similarity index 100% rename from test/examples/test024.input.out rename to tests/test024.input.out diff --git a/test/examples/test025.input.out b/tests/test025.input.out similarity index 100% rename from test/examples/test025.input.out rename to tests/test025.input.out diff --git a/test/examples/test026.input.out b/tests/test026.input.out similarity index 100% rename from test/examples/test026.input.out rename to tests/test026.input.out diff --git a/test/examples/test027.input.out b/tests/test027.input.out similarity index 100% rename from test/examples/test027.input.out rename to tests/test027.input.out diff --git a/test/examples/test028.input.out b/tests/test028.input.out similarity index 100% rename from test/examples/test028.input.out rename to tests/test028.input.out diff --git a/test/examples/test029.input.out b/tests/test029.input.out similarity index 100% rename from test/examples/test029.input.out rename to tests/test029.input.out diff --git a/test/examples/test030.input.out b/tests/test030.input.out similarity index 100% rename from test/examples/test030.input.out rename to tests/test030.input.out diff --git a/test/examples/test031.input.out b/tests/test031.input.out similarity index 100% rename from test/examples/test031.input.out rename to tests/test031.input.out diff --git a/test/examples/test032.input.out b/tests/test032.input.out similarity index 100% rename from test/examples/test032.input.out rename to tests/test032.input.out diff --git a/test/examples/test033.input.out b/tests/test033.input.out similarity index 100% rename from test/examples/test033.input.out rename to tests/test033.input.out diff --git a/test/examples/test034.input.out b/tests/test034.input.out similarity index 100% rename from test/examples/test034.input.out rename to tests/test034.input.out diff --git a/test/examples/test036.input.out b/tests/test036.input.out similarity index 100% rename from test/examples/test036.input.out rename to tests/test036.input.out diff --git a/test/examples/test037.input.out b/tests/test037.input.out similarity index 100% rename from test/examples/test037.input.out rename to tests/test037.input.out diff --git a/test/examples/test038.input.out b/tests/test038.input.out similarity index 100% rename from test/examples/test038.input.out rename to tests/test038.input.out diff --git a/test/examples/test039.input.out b/tests/test039.input.out similarity index 100% rename from test/examples/test039.input.out rename to tests/test039.input.out diff --git a/test/examples/test040.input.out b/tests/test040.input.out similarity index 100% rename from test/examples/test040.input.out rename to tests/test040.input.out diff --git a/test/examples/test041.input.out b/tests/test041.input.out similarity index 100% rename from test/examples/test041.input.out rename to tests/test041.input.out diff --git a/test/examples/test042.input.out b/tests/test042.input.out similarity index 100% rename from test/examples/test042.input.out rename to tests/test042.input.out diff --git a/test/examples/test043.input.out b/tests/test043.input.out similarity index 100% rename from test/examples/test043.input.out rename to tests/test043.input.out diff --git a/test/examples/test044.input.out b/tests/test044.input.out similarity index 100% rename from test/examples/test044.input.out rename to tests/test044.input.out diff --git a/test/examples/test045.input.out b/tests/test045.input.out similarity index 100% rename from test/examples/test045.input.out rename to tests/test045.input.out diff --git a/test/examples/test046.input.out b/tests/test046.input.out similarity index 100% rename from test/examples/test046.input.out rename to tests/test046.input.out diff --git a/test/examples/test047.input.out b/tests/test047.input.out similarity index 100% rename from test/examples/test047.input.out rename to tests/test047.input.out diff --git a/test/examples/test048.input.out b/tests/test048.input.out similarity index 100% rename from test/examples/test048.input.out rename to tests/test048.input.out diff --git a/test/examples/test049.input.out b/tests/test049.input.out similarity index 100% rename from test/examples/test049.input.out rename to tests/test049.input.out diff --git a/test/examples/test050.input.out b/tests/test050.input.out similarity index 100% rename from test/examples/test050.input.out rename to tests/test050.input.out diff --git a/test/examples/test051.input.out b/tests/test051.input.out similarity index 100% rename from test/examples/test051.input.out rename to tests/test051.input.out diff --git a/test/examples/test052.input.out b/tests/test052.input.out similarity index 100% rename from test/examples/test052.input.out rename to tests/test052.input.out diff --git a/test/examples/test053.input.out b/tests/test053.input.out similarity index 100% rename from test/examples/test053.input.out rename to tests/test053.input.out diff --git a/test/examples/test054.input.out b/tests/test054.input.out similarity index 100% rename from test/examples/test054.input.out rename to tests/test054.input.out diff --git a/test/examples/test900.input.out b/tests/test900.input.out similarity index 100% rename from test/examples/test900.input.out rename to tests/test900.input.out diff --git a/test/examples/test901.input.out b/tests/test901.input.out similarity index 100% rename from test/examples/test901.input.out rename to tests/test901.input.out diff --git a/test/examples/test902.input.out b/tests/test902.input.out similarity index 100% rename from test/examples/test902.input.out rename to tests/test902.input.out diff --git a/test/examples/test903.input.out b/tests/test903.input.out similarity index 100% rename from test/examples/test903.input.out rename to tests/test903.input.out diff --git a/test/examples/test904.input.out b/tests/test904.input.out similarity index 100% rename from test/examples/test904.input.out rename to tests/test904.input.out diff --git a/test/examples/test905.input.out b/tests/test905.input.out similarity index 100% rename from test/examples/test905.input.out rename to tests/test905.input.out diff --git a/test/examples/test906.input.out b/tests/test906.input.out similarity index 100% rename from test/examples/test906.input.out rename to tests/test906.input.out diff --git a/test/examples/test907.input.out b/tests/test907.input.out similarity index 100% rename from test/examples/test907.input.out rename to tests/test907.input.out diff --git a/test/examples/test908.input.out b/tests/test908.input.out similarity index 100% rename from test/examples/test908.input.out rename to tests/test908.input.out diff --git a/test/examples/test909.input.out b/tests/test909.input.out similarity index 100% rename from test/examples/test909.input.out rename to tests/test909.input.out diff --git a/test/examples/test910.input.out b/tests/test910.input.out similarity index 100% rename from test/examples/test910.input.out rename to tests/test910.input.out diff --git a/test/examples/test911.input.out b/tests/test911.input.out similarity index 100% rename from test/examples/test911.input.out rename to tests/test911.input.out diff --git a/test/examples/test912.input.out b/tests/test912.input.out similarity index 100% rename from test/examples/test912.input.out rename to tests/test912.input.out diff --git a/test/examples/test914.input.out b/tests/test914.input.out similarity index 100% rename from test/examples/test914.input.out rename to tests/test914.input.out diff --git a/test/examples/test915.input.out b/tests/test915.input.out similarity index 100% rename from test/examples/test915.input.out rename to tests/test915.input.out diff --git a/test/examples/test916.input.out b/tests/test916.input.out similarity index 100% rename from test/examples/test916.input.out rename to tests/test916.input.out diff --git a/test/examples/test917.input.out b/tests/test917.input.out similarity index 100% rename from test/examples/test917.input.out rename to tests/test917.input.out