Add tests to build script for lambdacalc

This commit is contained in:
Fedor Isakov 2018-11-29 13:23:48 +01:00
parent a1bd3024a5
commit 2205639acf
3 changed files with 383 additions and 6 deletions

View File

@ -2,6 +2,18 @@ configurations {
junitAnt
}
dependencies {
// initialize JUnit optional ant task
junitAnt 'junit:junit:4.8.2'
junitAnt('org.apache.ant:ant-junit:1.9.2') {
transitive = false
}
}
ant.taskdef(name: 'junit',
classname: 'org.apache.tools.ant.taskdefs.optional.junit.JUnitTask',
classpath: configurations.junitAnt.asPath)
ant.importBuild('build.xml') {antTarget ->
'lambdacalc-'+antTarget
}

View File

@ -29,7 +29,101 @@
</path>
<target name="assemble" depends="classes, declare-mps-tasks">
<mkdir dir="${build.layout}" />
<mkdir dir="${build.layout}/lambdacalc" />
<mkdir dir="${build.tmp}/default/samples.lambdacalc.jar" />
<mkdir dir="${build.tmp}/default/samples.lambdacalc.jar/META-INF" />
<echoxml file="${build.tmp}/default/samples.lambdacalc.jar/META-INF/module.xml">
<module namespace="samples.lambdacalc" type="language" uuid="af858d84-85f2-42f4-a854-0b3c6b5cd482">
<dependencies>
<module ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK)" />
<module ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)" />
<module ref="1ed103c3-3aa6-49b7-9c21-6765ee11f224(MPS.Editor)" />
<module ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)" />
<module ref="4c6a28d1-2c60-478d-b36e-db9b3cbb21fb(closures.runtime)" />
<module ref="9b80526e-f0bf-4992-bdf5-cee39c1833f3(collections.runtime)" />
<module ref="a3e4657f-a76c-45bb-bbda-c764596ecc65(jetbrains.mps.baseLanguage.logging.runtime)" />
<module ref="52b81ac7-93fd-4e9e-b972-4995882da6d4(jetbrains.mps.baseLanguage.references.runtime)" />
<module ref="23949432-aaff-4c03-b7da-26e4e956ccea(jetbrains.mps.baseLanguage.regexp.runtime)" />
<module ref="d44dab97-aaac-44cb-9745-8a14db674c03(jetbrains.mps.baseLanguage.tuples.runtime)" />
<module ref="2af156ab-65c1-4a62-bd0d-ea734f71eab6(jetbrains.mps.dataFlow.runtime)" />
<module ref="34e84b8f-afa8-4364-abcd-a279fddddbe7(jetbrains.mps.editor.runtime)" />
<module ref="d936855b-48da-4812-a8a0-2bfddd633ac5(jetbrains.mps.lang.behavior.api)" />
<module ref="d936855b-48da-4812-a8a0-2bfddd633ac4(jetbrains.mps.lang.behavior.runtime)" />
<module ref="26e8f4ce-2a35-4f44-8065-e5ba154b18e9(jetbrains.mps.lang.coderules.runtime)" />
<module ref="ff6372a2-2f45-4ec3-952b-02581666015f(jetbrains.mps.lang.coderules.template)" />
<module ref="f486b8aa-5b2d-4ec0-8ef5-8f45d773fb84(jetbrains.mps.lang.typechecking.runtime)" />
<module ref="a5478664-6b44-4c62-a9f7-434f8aa57eee(jetbrains.mps.logic.runtime)" />
<module ref="8fe4c62a-2020-4ff4-8eda-f322a55bdc9f(jetbrains.mps.refactoring.runtime)" />
<module ref="da80355b-a098-4248-9ec8-70d10dd7e9af(jetbrains.mps.reporting.runtime)" />
<module ref="9a4afe51-f114-4595-b5df-048ce3c596be(jetbrains.mps.runtime)" />
</dependencies>
<classpath>
<entry path="." />
</classpath>
<sources jar="samples.lambdacalc-src.jar" descriptor="samples.lambdacalc.mpl" />
</module>
</echoxml>
<jar destfile="${build.layout}/lambdacalc/samples.lambdacalc.jar" duplicate="preserve">
<fileset dir="${build.tmp}/java/out/samples.lambdacalc" />
<fileset dir="${basedir}/languages/samples.lambdacalc/source_gen" includes="**/trace.info, **/exports, **/*.mps, **/checkpoints" />
<fileset dir="${build.tmp}/default/samples.lambdacalc.jar" />
</jar>
<copyModels todir="${build.tmp}/customProcessors/copyModels/languages-samples.lambdacalc-models">
<fileset dir="${basedir}/languages/samples.lambdacalc/models" includes="**/*.mps, **/*.metadata, **/*.history, **/*.mpsr, **/.model" />
</copyModels>
<jar destfile="${build.layout}/lambdacalc/samples.lambdacalc-src.jar" duplicate="preserve">
<fileset dir="${basedir}/languages/samples.lambdacalc/source_gen">
<exclude name="**/trace.info" />
<exclude name="**/exports" />
<exclude name="**/checkpoints" />
<exclude name="**/*.mps" />
</fileset>
<zipfileset file="${basedir}/languages/samples.lambdacalc/samples.lambdacalc.mpl" prefix="module" />
<zipfileset dir="${build.tmp}/customProcessors/copyModels/languages-samples.lambdacalc-models" prefix="module/models" />
</jar>
<mkdir dir="${build.tmp}/default/samples.lambdacalc.demo.jar" />
<mkdir dir="${build.tmp}/default/samples.lambdacalc.demo.jar/META-INF" />
<echoxml file="${build.tmp}/default/samples.lambdacalc.demo.jar/META-INF/module.xml">
<module namespace="samples.lambdacalc.demo" type="solution" uuid="05f15741-5274-4aed-a086-84d9a15ab93b">
<dependencies>
<module ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK)" />
<module ref="49808fad-9d41-4b96-83fa-9231640f6b2b(JUnit)" />
<module ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core)" />
<module ref="8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI)" />
<module ref="4c6a28d1-2c60-478d-b36e-db9b3cbb21fb(closures.runtime)" />
<module ref="9b80526e-f0bf-4992-bdf5-cee39c1833f3(collections.runtime)" />
<module ref="52b81ac7-93fd-4e9e-b972-4995882da6d4(jetbrains.mps.baseLanguage.references.runtime)" />
<module ref="2d3c70e9-aab2-4870-8d8d-6036800e4103(jetbrains.mps.kernel)" />
<module ref="d936855b-48da-4812-a8a0-2bfddd633ac5(jetbrains.mps.lang.behavior.api)" />
<module ref="d936855b-48da-4812-a8a0-2bfddd633ac4(jetbrains.mps.lang.behavior.runtime)" />
<module ref="e55e6749-03cb-4ea7-9695-2322bab791c1(jetbrains.mps.lang.test.matcher)" />
<module ref="707c4fde-f79a-44b5-b3d7-b5cef8844ccf(jetbrains.mps.lang.test.runtime)" />
<module ref="9a4afe51-f114-4595-b5df-048ce3c596be(jetbrains.mps.runtime)" />
</dependencies>
<classpath>
<entry path="." />
</classpath>
<sources jar="samples.lambdacalc.demo-src.jar" descriptor="samples.lambdacalc.demo.msd" />
</module>
</echoxml>
<jar destfile="${build.layout}/lambdacalc/samples.lambdacalc.demo.jar" duplicate="preserve">
<fileset dir="${build.tmp}/java/out/samples.lambdacalc.demo" />
<fileset dir="${basedir}/solutions/samples.lambdacalc.demo/source_gen" includes="**/trace.info, **/exports, **/*.mps, **/checkpoints" />
<fileset dir="${build.tmp}/default/samples.lambdacalc.demo.jar" />
</jar>
<copyModels todir="${build.tmp}/customProcessors/copyModels/solutions-samples.lambdacalc.demo-models">
<fileset dir="${basedir}/solutions/samples.lambdacalc.demo/models" includes="**/*.mps, **/*.metadata, **/*.history, **/*.mpsr, **/.model" />
</copyModels>
<jar destfile="${build.layout}/lambdacalc/samples.lambdacalc.demo-src.jar" duplicate="preserve">
<fileset dir="${basedir}/solutions/samples.lambdacalc.demo/source_gen">
<exclude name="**/trace.info" />
<exclude name="**/exports" />
<exclude name="**/checkpoints" />
<exclude name="**/*.mps" />
</fileset>
<zipfileset file="${basedir}/solutions/samples.lambdacalc.demo/samples.lambdacalc.demo.msd" prefix="module" />
<zipfileset dir="${build.tmp}/customProcessors/copyModels/solutions-samples.lambdacalc.demo-models" prefix="module/models" />
</jar>
<echo file="${build.layout}/build.properties">mps.build.number=${mps.build.number}${line.separator}mps.date=${mps.date}${line.separator}mps.build.vcs.number=${mps.build.vcs.number}${line.separator}mps.teamcity.buildConfName=${mps.teamcity.buildConfName}${line.separator}mps.idea.platform.build.number=${mps.idea.platform.build.number}${line.separator}mps.mps.build.counter=${mps.mps.build.counter}${line.separator}mpsBootstrapCore.version=${mpsBootstrapCore.version}${line.separator}coderules.ci.build.num=${coderules.ci.build.num}</echo>
</target>
@ -50,13 +144,15 @@
<target name="classes" depends="compileJava, processResources" />
<target name="test" depends="classes" />
<target name="test" depends="classes, module-tests" />
<target name="check" depends="test" />
<target name="generate" depends="declare-mps-tasks, fetchDependencies">
<echo message="generating" />
<generate strictMode="true" parallelMode="true" parallelThreads="8" useInplaceTransform="false" hideWarnings="false" createStaticRefs="true" fork="true" skipUnmodifiedModels="${mps.generator.skipUnmodifiedModels}">
<plugin path="${artifacts.mps}/plugins/mps-core/META-INF/plugin.xml/../.." />
<plugin path="${artifacts.mps}/plugins/mps-testing" />
<library file="${artifacts.coderules}/deploy/jetbrains.mps.coderules.jar" />
<library file="${artifacts.coderules}/deploy/jetbrains.mps.lang.coderules.jar" />
<library file="${artifacts.coderules}/deploy/jetbrains.mps.lang.coderules.runtime.jar" />
@ -94,6 +190,7 @@
<library file="${artifacts.mps}/languages/devkits/jetbrains.mps.devkit.language-descriptor.jar" />
<library file="${artifacts.mps}/languages/devkits/jetbrains.mps.devkit.language-design.jar" />
<library file="${artifacts.mps}/languages/languageDesign/jetbrains.mps.baseLanguage.lightweightdsl.jar" />
<library file="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.access.jar" />
<library file="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.actions.jar" />
<library file="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.aspect.jar" />
<library file="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.behavior.jar" />
@ -136,10 +233,18 @@
<library file="${artifacts.mps}/lib/mps-collections.jar" />
<library file="${artifacts.mps}/lib/mps-core.jar" />
<library file="${artifacts.mps}/lib/mps-editor.jar" />
<library file="${artifacts.mps}/lib/mps-environment.jar" />
<library file="${artifacts.mps}/lib/mps-openapi.jar" />
<library file="${artifacts.mps}/lib/mps-platform.jar" />
<library file="${artifacts.mps}/lib/mps-references.jar" />
<library file="${artifacts.mps}/lib/mps-stubs.jar" />
<library file="${artifacts.mps}/lib/mps-test.jar" />
<library file="${artifacts.mps}/lib/mps-tool.jar" />
<library file="${artifacts.mps}/lib/mps-tuples.jar" />
<library file="${artifacts.mps}/plugins/mps-testing/languages/baseLanguage/jetbrains.mps.baseLanguage.unitTest.jar" />
<library file="${artifacts.mps}/plugins/mps-testing/languages/languageDesign/jetbrains.mps.lang.test.jar" />
<library file="${artifacts.mps}/plugins/mps-testing/languages/languageDesign/jetbrains.mps.lang.test.matcher.jar" />
<library file="${artifacts.mps}/plugins/mps-testing/languages/languageDesign/jetbrains.mps.lang.test.runtime.jar" />
<chunk bootstrap="true">
<module file="${basedir}/languages/samples.lambdacalc/samples.lambdacalc.mpl" bootstrap="true" />
</chunk>
@ -160,6 +265,8 @@
<target name="makeDependents" />
<target name="module-tests" depends="assemble, test.demo" />
<target name="java.compile.samples.lambdacalc" depends="fetchDependencies">
<mkdir dir="${basedir}/languages/samples.lambdacalc/source_gen" />
<mkdir dir="${build.tmp}/java/out/samples.lambdacalc" />
@ -216,19 +323,222 @@
</javac>
</target>
<target name="java.compile.samples.lambdacalc.demo">
<target name="java.compile.samples.lambdacalc.demo" depends="java.compile.samples.lambdacalc, fetchDependencies">
<mkdir dir="${basedir}/solutions/samples.lambdacalc.demo/source_gen" />
<mkdir dir="${build.tmp}/java/out/samples.lambdacalc.demo" />
<javac destdir="${build.tmp}/java/out/samples.lambdacalc.demo" fork="true" encoding="utf8" includeantruntime="false" debug="true">
<compilerarg value="-Xlint:none" />
<src>
<path location="${basedir}/solutions/samples.lambdacalc.demo/source_gen" />
<pathelement path="${basedir}/solutions/samples.lambdacalc.demo/test_gen/" />
</src>
<classpath />
<classpath>
<fileset file="${artifacts.mps}/lib/mps-behavior-api.jar" />
<fileset file="${artifacts.mps}/lib/mps-behavior-runtime.jar" />
<fileset file="${artifacts.mps}/lib/mps-closures.jar" />
<fileset file="${artifacts.mps}/lib/mps-collections.jar" />
<fileset file="${artifacts.mps}/lib/mps-annotations.jar" />
<fileset file="${artifacts.mps}/lib/mps-openapi.jar" />
<fileset file="${artifacts.mps}/lib/mps-core.jar" />
<fileset file="${artifacts.mps}/lib/mps-logging.jar" />
<fileset file="${artifacts.mps}/lib/mps-tuples.jar" />
<fileset file="${artifacts.mps}/lib/mps-references.jar" />
<fileset file="${artifacts.mps}/lib/mps-messaging.jar" />
<fileset file="${artifacts.mps}/lib/mps-boot-util.jar" />
<fileset file="${artifacts.mps}/lib/mps-editor.jar" />
<fileset file="${artifacts.mps}/lib/mps-editor-api.jar" />
<fileset file="${artifacts.mps}/lib/mps-editor-runtime.jar" />
<fileset file="${artifacts.mps}/lib/mps-platform.jar" />
<fileset file="${artifacts.mps}/lib/mps-environment.jar" />
<pathelement path="${build.tmp}/java/out/samples.lambdacalc" />
<fileset file="${artifacts.mps}/lib/mps-test.jar" />
<fileset file="${artifacts.mps}/lib/ant/lib/ant.jar" />
<fileset file="${artifacts.mps}/lib/hamcrest-core-1.3.jar" />
<fileset file="${artifacts.mps}/lib/junit-4.12.jar" />
<fileset file="${artifacts.mps}/lib/annotations.jar" />
<fileset file="${artifacts.mps}/lib/log4j.jar" />
<fileset file="${artifacts.mps}/lib/jdom.jar" />
<fileset file="${artifacts.mps}/lib/trove4j.jar" />
<fileset file="${artifacts.mps}/lib/ecj-4.7.2.jar" />
<fileset dir="${artifacts.mps}/lib" includes="*.jar" />
<fileset file="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.jar" />
<fileset file="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.classifiers.jar" />
<fileset file="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.scopes.jar" />
<fileset file="${artifacts.mps}/plugins/mps-testing/languages/baseLanguage/jetbrains.mps.baseLanguage.unitTest.jar" />
<fileset file="${artifacts.coderules}/deploy/jetbrains.mps.coderules.jar" />
<fileset file="${artifacts.coderules}/deploy/jetbrains.mps.lang.coderules.runtime.jar" />
<fileset file="${artifacts.coderules}/deploy/jetbrains.mps.lang.coderules.template.jar" />
<fileset file="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.core.jar" />
<fileset file="${artifacts.mps}/plugins/mps-testing/languages/languageDesign/jetbrains.mps.lang.test.jar" />
<fileset file="${artifacts.mps}/plugins/mps-testing/languages/languageDesign/jetbrains.mps.lang.test.matcher.jar" />
<fileset file="${artifacts.mps}/plugins/mps-testing/languages/languageDesign/jetbrains.mps.lang.test.runtime.jar" />
<fileset file="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.traceable.jar" />
<fileset file="${artifacts.coderules}/deploy/jetbrains.mps.lang.typechecking.runtime.jar" />
<fileset file="${artifacts.coderules}/deploy/jetbrains.mps.logic.runtime.jar" />
<fileset file="${artifacts.coderules}/deploy/jetbrains.mps.reporting.runtime.jar" />
<fileset file="${artifacts.coderules}/deploy/jetbrains.mps.typechecking.jar" />
<fileset dir="${artifacts.coderules}/deploy/lib" includes="reactive-streams-1.0.0.final.jar" />
<fileset dir="${artifacts.coderules}/deploy/lib" includes="rxjava-2.1.1.jar" />
<fileset dir="${artifacts.coderules}/deploy/lib" includes="rxjava2-swing-0.2.1.jar" />
<fileset dir="${artifacts.coderules}/deploy/lib" includes="collection-0.7.jar" />
<fileset dir="${artifacts.coderules}/deploy/lib" includes="trove4j-3.0.3.jar" />
<fileset dir="${artifacts.coderules}/deploy/lib" includes="kotlin-runtime-1.2.30.jar" />
<fileset dir="${artifacts.coderules}/deploy/lib" includes="kotlin-stdlib-1.2.30.jar" />
<fileset dir="${artifacts.coderules}/deploy/lib" includes="conreactor-api-0.9.2.jar" />
<fileset dir="${artifacts.coderules}/deploy/lib" includes="conreactor-core-0.9.2.jar" />
</classpath>
</javac>
</target>
<target name="test.demo" depends="assemble">
<path id="mps.libraries.path">
<pathelement location="${artifacts.coderules}/deploy/jetbrains.mps.coderules.jar" />
<pathelement location="${artifacts.coderules}/deploy/jetbrains.mps.lang.coderules.runtime.jar" />
<pathelement location="${artifacts.coderules}/deploy/jetbrains.mps.lang.coderules.template.jar" />
<pathelement location="${artifacts.coderules}/deploy/jetbrains.mps.lang.typechecking.runtime.jar" />
<pathelement location="${artifacts.coderules}/deploy/jetbrains.mps.logic.reactor.jar" />
<pathelement location="${artifacts.coderules}/deploy/jetbrains.mps.logic.runtime.jar" />
<pathelement location="${artifacts.coderules}/deploy/jetbrains.mps.reporting.runtime.jar" />
<pathelement location="${artifacts.coderules}/deploy/jetbrains.mps.typechecking.annotation.jar" />
<pathelement location="${artifacts.coderules}/deploy/jetbrains.mps.typechecking.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.blTypes.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.classifiers.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.closures.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.collections.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.javadoc.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.jdk7.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.logging.runtime.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.regexp.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.regexp.runtime.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.scopes.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguage.tuples.jar" />
<pathelement location="${artifacts.mps}/languages/baseLanguage/jetbrains.mps.baseLanguageInternal.jar" />
<pathelement location="${artifacts.mps}/languages/devkits/jetbrains.mps.devkit.aspect.constraints.jar" />
<pathelement location="${artifacts.mps}/languages/devkits/jetbrains.mps.devkit.aspect.structure.jar" />
<pathelement location="${artifacts.mps}/languages/devkits/jetbrains.mps.devkit.aspect.typesystem.jar" />
<pathelement location="${artifacts.mps}/languages/devkits/jetbrains.mps.devkit.bootstrap-languages.jar" />
<pathelement location="${artifacts.mps}/languages/devkits/jetbrains.mps.devkit.general-purpose.jar" />
<pathelement location="${artifacts.mps}/languages/devkits/jetbrains.mps.devkit.language-descriptor.jar" />
<pathelement location="${artifacts.mps}/languages/devkits/jetbrains.mps.devkit.language-design.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.baseLanguage.lightweightdsl.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.access.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.actions.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.behavior.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.checkedName.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.constraints.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.core.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.dataFlow.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.descriptor.aspects.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.editor.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.findUsages.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.generator.generationContext.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.generator.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.intentions.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.migration.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.migration.runtime.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.modelapi.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.pattern.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.plugin.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.project.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.quotation.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.refactoring.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.resources.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.scopes.runtime.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.script.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.sharedConcepts.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.smodel.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.smodel.query.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.structure.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.textGen.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.traceable.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.lang.typesystem.jar" />
<pathelement location="${artifacts.mps}/languages/languageDesign/jetbrains.mps.refactoring.participant.jar" />
<pathelement location="${artifacts.mps}/lib/mps-behavior-api.jar" />
<pathelement location="${artifacts.mps}/lib/mps-behavior-runtime.jar" />
<pathelement location="${artifacts.mps}/lib/mps-closures.jar" />
<pathelement location="${artifacts.mps}/lib/mps-collections.jar" />
<pathelement location="${artifacts.mps}/lib/mps-core.jar" />
<pathelement location="${artifacts.mps}/lib/mps-editor.jar" />
<pathelement location="${artifacts.mps}/lib/mps-environment.jar" />
<pathelement location="${artifacts.mps}/lib/mps-openapi.jar" />
<pathelement location="${artifacts.mps}/lib/mps-platform.jar" />
<pathelement location="${artifacts.mps}/lib/mps-references.jar" />
<pathelement location="${artifacts.mps}/lib/mps-stubs.jar" />
<pathelement location="${artifacts.mps}/lib/mps-test.jar" />
<pathelement location="${artifacts.mps}/lib/mps-tool.jar" />
<pathelement location="${artifacts.mps}/lib/mps-tuples.jar" />
<pathelement location="${artifacts.mps}/plugins/mps-testing/languages/baseLanguage/jetbrains.mps.baseLanguage.unitTest.jar" />
<pathelement location="${artifacts.mps}/plugins/mps-testing/languages/languageDesign/jetbrains.mps.lang.test.jar" />
<pathelement location="${artifacts.mps}/plugins/mps-testing/languages/languageDesign/jetbrains.mps.lang.test.matcher.jar" />
<pathelement location="${artifacts.mps}/plugins/mps-testing/languages/languageDesign/jetbrains.mps.lang.test.runtime.jar" />
<pathelement location="${build.layout}/lambdacalc/samples.lambdacalc.jar" />
</path>
<pathconvert pathsep="${path.separator}" property="mps.libraries.path.string" refid="mps.libraries.path" />
<path id="mps.plugins.path">
<pathelement location="${artifacts.mps}/plugins/mps-core/META-INF/plugin.xml/../.." />
<pathelement location="${artifacts.mps}/plugins/mps-testing" />
</path>
<pathconvert pathsep="${path.separator}" property="mps.plugins.path.string" refid="mps.plugins.path" />
<path location="${build.layout}/lambdacalc/samples.lambdacalc.demo.jar" id="mps.tests.path" />
<pathconvert pathsep="${path.separator}" property="mps.tests.path.string" refid="mps.tests.path" />
<patternset id="plugin.deployed.jars">
<include name="lib/**/*.jar" />
<include name="languages/**/*.jar" />
<exclude name="**/*-src.jar" />
</patternset>
<path id="long.class.path">
<fileset dir="${artifacts.mps}/plugins/mps-core/META-INF/plugin.xml/../..">
<patternset refid="plugin.deployed.jars" />
</fileset>
<fileset dir="${artifacts.mps}/plugins/mps-testing">
<patternset refid="plugin.deployed.jars" />
</fileset>
<fileset dir="${artifacts.mps}/lib">
<include name="**/*.jar" />
</fileset>
<pathelement path="${jdk.home}/lib/tools.jar" />
</path>
<pathconvert pathsep=" " targetos="unix" property="manifest.classpath">
<path refid="long.class.path" />
<chainedmapper>
<filtermapper>
<replacestring from=" " to="%20" />
</filtermapper>
<globmapper from="*" to="file:///*" />
</chainedmapper>
</pathconvert>
<jar jarfile="${build.tmp}/mps.class.path.jar">
<manifest>
<attribute name="Class-Path" value="${manifest.classpath}" />
</manifest>
</jar>
<junit showoutput="true" fork="true" haltonfailure="false" dir="${basedir}">
<jvmarg value="-ea" />
<jvmarg value="-Xss2048k" />
<jvmarg value="-Xmx1024m" />
<jvmarg value="-XX:MaxPermSize=256m" />
<jvmarg value="-XX:+HeapDumpOnOutOfMemoryError" />
<classpath>
<fileset dir="${build.tmp}">
<include name="mps.class.path.jar" />
</fileset>
</classpath>
<env key="NO_FS_ROOTS_ACCESS_CHECK" value="true" />
<sysproperty key="plugin.path" value="${mps.plugins.path.string}" />
<sysproperty key="mps.libraries" value="${mps.libraries.path.string}" />
<sysproperty key="mps.test.modules" value="${mps.tests.path.string}" />
<test name="jetbrains.mps.testbench.junit.suites.AntModuleTestSuite" outfile="TEST-jetbrains.mps.testbench.junit.suites.AntModuleTestSuite-demo" />
<formatter type="xml" />
</junit>
</target>
<target name="cleanSources">
<delete dir="${basedir}/solutions/samples.lambdacalc.demo/source_gen" />
<delete dir="${basedir}/solutions/samples.lambdacalc.demo/test_gen" />
</target>
</project>

View File

@ -15,6 +15,15 @@
<import index="zqd8" ref="r:4f157831-48e7-4c8f-a144-b5bbd1be1539(jetbrains.mps.typechecking.build)" />
</imports>
<registry>
<language id="3600cb0a-44dd-4a5b-9968-22924406419e" name="jetbrains.mps.build.mps.tests">
<concept id="4560297596904469357" name="jetbrains.mps.build.mps.tests.structure.BuildMpsLayout_TestModules" flags="nn" index="22LTRH">
<child id="4560297596904469360" name="modules" index="22LTRK" />
</concept>
<concept id="4560297596904469362" name="jetbrains.mps.build.mps.tests.structure.BuildMpsLayout_TestModule" flags="nn" index="22LTRM">
<reference id="4560297596904469363" name="module" index="22LTRN" />
</concept>
<concept id="4005526075820600484" name="jetbrains.mps.build.mps.tests.structure.BuildModuleTestsPlugin" flags="ng" index="1gjT0q" />
</language>
<language id="798100da-4f0a-421a-b991-71f8c50ce5d2" name="jetbrains.mps.build">
<concept id="5481553824944787378" name="jetbrains.mps.build.structure.BuildSourceProjectRelativePath" flags="ng" index="55IIr" />
<concept id="7321017245476976379" name="jetbrains.mps.build.structure.BuildRelativePath" flags="ng" index="iG8Mu">
@ -24,11 +33,18 @@
<reference id="5617550519002745380" name="script" index="1l3spb" />
<child id="4129895186893471026" name="artifacts" index="2JcizS" />
</concept>
<concept id="4380385936562003279" name="jetbrains.mps.build.structure.BuildString" flags="ng" index="NbPM2">
<child id="4903714810883783243" name="parts" index="3MwsjC" />
</concept>
<concept id="8618885170173601777" name="jetbrains.mps.build.structure.BuildCompositePath" flags="nn" index="2Ry0Ak">
<property id="8618885170173601779" name="head" index="2Ry0Am" />
<child id="8618885170173601778" name="tail" index="2Ry0An" />
</concept>
<concept id="6647099934206700647" name="jetbrains.mps.build.structure.BuildJavaPlugin" flags="ng" index="10PD9b" />
<concept id="7389400916848050060" name="jetbrains.mps.build.structure.BuildLayout_NamedContainer" flags="ng" index="3981dR">
<child id="4380385936562148502" name="containerName" index="Nbhlr" />
</concept>
<concept id="7389400916848036984" name="jetbrains.mps.build.structure.BuildLayout_Folder" flags="ng" index="398223" />
<concept id="7389400916848136194" name="jetbrains.mps.build.structure.BuildFolderMacro" flags="ng" index="398rNT">
<child id="7389400916848144618" name="defaultPath" index="398pKh" />
</concept>
@ -46,6 +62,13 @@
<child id="5617550519002745378" name="macros" index="1l3spd" />
<child id="5617550519002745372" name="layout" index="1l3spN" />
</concept>
<concept id="4701820937132344003" name="jetbrains.mps.build.structure.BuildLayout_Container" flags="ng" index="1y1bJS">
<child id="7389400916848037006" name="children" index="39821P" />
</concept>
<concept id="841011766566059607" name="jetbrains.mps.build.structure.BuildStringNotEmpty" flags="ng" index="3_J27D" />
<concept id="4903714810883702019" name="jetbrains.mps.build.structure.BuildTextStringPart" flags="ng" index="3Mxwew">
<property id="4903714810883755350" name="text" index="3MwjfP" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1169194658468" name="jetbrains.mps.lang.core.structure.INamedConcept" flags="ng" index="TrEIO">
@ -59,6 +82,9 @@
<concept id="1500819558095907805" name="jetbrains.mps.build.mps.structure.BuildMps_Group" flags="ng" index="2G$12M">
<child id="1500819558095907806" name="modules" index="2G$12L" />
</concept>
<concept id="1265949165890536423" name="jetbrains.mps.build.mps.structure.BuildMpsLayout_ModuleJars" flags="ng" index="L2wRC">
<reference id="1265949165890536425" name="module" index="L2wRA" />
</concept>
<concept id="868032131020265945" name="jetbrains.mps.build.mps.structure.BuildMPSPlugin" flags="ng" index="3b7kt6" />
<concept id="5253498789149381388" name="jetbrains.mps.build.mps.structure.BuildMps_Module" flags="ng" index="3bQrTs">
<child id="5253498789149547704" name="dependencies" index="3bR37C" />
@ -66,7 +92,9 @@
<concept id="5253498789149585690" name="jetbrains.mps.build.mps.structure.BuildMps_ModuleDependencyOnModule" flags="ng" index="3bR9La">
<reference id="5253498789149547705" name="module" index="3bR37D" />
</concept>
<concept id="3189788309731840247" name="jetbrains.mps.build.mps.structure.BuildMps_Solution" flags="ng" index="1E1JtA" />
<concept id="3189788309731840247" name="jetbrains.mps.build.mps.structure.BuildMps_Solution" flags="ng" index="1E1JtA">
<property id="269707337715731330" name="sourcesKind" index="aoJFB" />
</concept>
<concept id="3189788309731840248" name="jetbrains.mps.build.mps.structure.BuildMps_Language" flags="ng" index="1E1JtD" />
<concept id="322010710375871467" name="jetbrains.mps.build.mps.structure.BuildMps_AbstractModule" flags="ng" index="3LEN3z">
<property id="8369506495128725901" name="compact" index="BnDLt" />
@ -143,6 +171,7 @@
<property role="BnDLt" value="true" />
<property role="TrG5h" value="samples.lambdacalc.demo" />
<property role="3LESm3" value="05f15741-5274-4aed-a086-84d9a15ab93b" />
<property role="aoJFB" value="sources and tests" />
<node concept="55IIr" id="7E7FS_VaVBC" role="3LF7KH">
<node concept="2Ry0Ak" id="7E7FS_VaVC3" role="iGT6I">
<property role="2Ry0Am" value="solutions" />
@ -159,6 +188,11 @@
<ref role="3bR37D" to="zqd8:65DJywFj0Fi" resolve="jetbrains.mps.typechecking" />
</node>
</node>
<node concept="1SiIV0" id="6EwjVjWvFnZ" role="3bR37C">
<node concept="3bR9La" id="6EwjVjWvFo0" role="1SiIV1">
<ref role="3bR37D" node="7E7FS_VaVAl" resolve="samples.lambdacalc" />
</node>
</node>
</node>
</node>
<node concept="2sgV4H" id="7E7FS_VaV_9" role="1l3spa">
@ -174,9 +208,24 @@
</node>
</node>
<node concept="55IIr" id="7E7FS_VaSlT" role="auvoZ" />
<node concept="1l3spV" id="7E7FS_VaSlU" role="1l3spN" />
<node concept="1l3spV" id="7E7FS_VaSlU" role="1l3spN">
<node concept="398223" id="6EwjVjWvKjy" role="39821P">
<node concept="3_J27D" id="6EwjVjWvKjz" role="Nbhlr">
<node concept="3Mxwew" id="6EwjVjWvKjA" role="3MwsjC">
<property role="3MwjfP" value="lambdacalc" />
</node>
</node>
<node concept="L2wRC" id="6EwjVjWvKjC" role="39821P">
<ref role="L2wRA" node="7E7FS_VaVAl" resolve="samples.lambdacalc" />
</node>
<node concept="L2wRC" id="6EwjVjWvKjH" role="39821P">
<ref role="L2wRA" node="7E7FS_VaVB_" resolve="samples.lambdacalc.demo" />
</node>
</node>
</node>
<node concept="10PD9b" id="7E7FS_VaSlV" role="10PD9s" />
<node concept="3b7kt6" id="7E7FS_VaSm0" role="10PD9s" />
<node concept="1gjT0q" id="6EwjVjWvHKf" role="10PD9s" />
<node concept="398rNT" id="7E7FS_VaSma" role="1l3spd">
<property role="TrG5h" value="coderules_art" />
<node concept="55IIr" id="7E7FS_VaSmc" role="398pKh">
@ -214,6 +263,12 @@
<node concept="2igEWh" id="7E7FS_Vb3KS" role="1hWBAP">
<property role="2igJW4" value="true" />
</node>
<node concept="22LTRH" id="6EwjVjWvK8W" role="1hWBAP">
<property role="TrG5h" value="demo" />
<node concept="22LTRM" id="6EwjVjWvK90" role="22LTRK">
<ref role="22LTRN" node="7E7FS_VaVB_" resolve="samples.lambdacalc.demo" />
</node>
</node>
</node>
</model>