Skip to content
Snippets Groups Projects
Commit cb21a58c authored by Mohamed, Fawzi Roberto (fawzi)'s avatar Mohamed, Fawzi Roberto (fawzi)
Browse files

adding scala wrapper

parent 9afc3f88
No related branches found
No related tags found
No related merge requests found
package eu.nomad_lab.parsers
import eu.{ nomad_lab => lab }
import eu.nomad_lab.DefaultPythonInterpreter
import org.{ json4s => jn }
import scala.collection.breakOut
object GulpParser extends SimpleExternalParserGenerator(
name = "GulpParser",
parserInfo = jn.JObject(
("name" -> jn.JString("GulpParser")) ::
("parserId" -> jn.JString("GulpParser" + lab.GulpVersionInfo.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.GulpVersionInfo.toMap.map {
case (key, value) =>
(key -> jn.JString(value.toString))
}(breakOut): List[(String, jn.JString)])
)) :: Nil
),
mainFileTypes = Seq("text/.*"),
mainFileRe = """\s*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\**\s*
\s*\*\s*GENERAL UTILITY LATTICE PROGRAM\s*\*\s*
\s*\*\s*Julian Gale\s*\*\s*
\s*\*\s*Nanochemistry Research Institute\s*\*\s*
\s*\*\s*Department of Chemistry\s*\*\s*
\s*\*\s*Curtin University, Western Australia\s*\*\s*
\s*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\**\s*
""".r,
cmd = Seq(DefaultPythonInterpreter.pythonExe(), "${envDir}/parsers/gulp/parser/parser-gulp/main.py",
"--uri", "${mainFileUri}", "${mainFilePath}"),
resList = Seq(
"parser-gulp/main.py",
"parser-gulp/spacegroups.py",
"parser-gulp/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/gulp.nomadmetainfo.json"
) ++ DefaultPythonInterpreter.commonFiles(),
dirMap = Map(
"parser-gulp" -> "parsers/gulp/parser/parser-gulp",
"nomad_meta_info" -> "nomad-meta-info/meta_info/nomad_meta_info",
"python" -> "python-common/common/python/nomadcore"
) ++ DefaultPythonInterpreter.commonDirMapping(),
metaInfoEnv = Some(lab.meta.KnownMetaInfoEnvs.gulp)
)
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 GulpParserSpec extends Specification {
"GulpParserTest" >> {
"test example1 " >> {
"test with json-events" >> {
ParserRun.parse(GulpParser, "parsers/gulp/test/examples/outputs/example1.got", "json-events") must_== ParseResult.ParseSuccess
}
"test with json" >> {
ParserRun.parse(GulpParser, "parsers/gulp/test/examples/outputs/example1.got", "json") must_== ParseResult.ParseSuccess
}
}
"test example2 " >> {
"test with json-events" >> {
ParserRun.parse(GulpParser, "parsers/gulp/test/examples/outputs/example2.got", "json-events") must_== ParseResult.ParseSuccess
}
"test with json" >> {
ParserRun.parse(GulpParser, "parsers/gulp/test/examples/outputs/example2.got", "json") must_== ParseResult.ParseSuccess
}
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment