From 96f65ff9571ee52361c86d145d45258333467bed Mon Sep 17 00:00:00 2001 From: mor-n4 Date: Mon, 15 Nov 2021 11:59:11 +0100 Subject: [PATCH] GH-2262: As a smith I want to change when/how tests of n4js-libs are executed and restructure test bundles (#2264) * simplify build (remove start/stop verdaccio functionality from pom's) * delete CliJarWithVerdaccioJarTest * some clean up in org.eclipse.n4js.integration.tests * fix bug in shell scripts * move project discovery tests from .cli.tests to .ide.tests bundle * move CLI front-end tests from .cli.tests to .ide.tests bundle * delete bundle org.eclipse.n4js.cli.tests * some fixes and improvements * copying n4jsc.jar to n4js-cli/bin is repsonibility of publishing script * move all AbstractCliCompileTests from .ide.tests to .integration.tests * delete some unused test fixtures/probands * delete references to unused maven plugin 'maven-verifier-plugin' * let BuildN4jsLibs generate .n4js.projectstate files * rename a package * move testing of n4js-libs from publishing script to a JUnit test * fix a path * fix bug in N4jsLibsTest * move deployment of n4jsc.jar from publishing script to BuildN4jsLibs --- .../02_eclipseSetup/eclipseSetup.adoc | 3 +- .../chapters/03_releng/releng.adoc | 19 +- jenkins/eclipse-nightly.jenkinsfile | 115 ----- jenkins/eclipse-publish.jenkinsfile | 153 ------- jenkins/haw-pr.jenkinsfile | 99 ----- n4js-libs/.gitignore | 1 - n4js-libs/npm-test.sh | 30 ++ n4js-libs/package.json | 2 +- .../src/org/eclipse/n4js/N4JSGlobals.java | 18 +- pom.xml | 39 -- releng/org.eclipse.n4js.libs.build/pom.xml | 78 ---- .../n4js/libs/build/BuildN4jsLibs.java | 101 ++++- releng/utils/scripts/publish-n4js-libs.sh | 137 +++--- releng/utils/scripts/start-verdaccio.sh | 62 +++ releng/utils/scripts/stop-verdaccio.sh | 25 ++ .../n4js/cli/helper/AbstractCliJarTest.java | 3 +- .../cli/helper/GeneratedJSFilesCounter.java | 4 +- tests/org.eclipse.n4js.cli.tests/.gitignore | 2 - .../org.eclipse.xtend.core.Xtend.prefs | 39 -- .../META-INF/MANIFEST.MF | 13 - .../build.properties | 5 - .../pom.xml | 23 - .../verifier/verifications-test.xml | 30 -- .../org.eclipse.n4js.ide.tests.jar/.classpath | 12 - tests/org.eclipse.n4js.ide.tests.jar/.project | 34 -- .../org.eclipse.core.resources.prefs | 3 - .../.settings/org.eclipse.core.runtime.prefs | 2 - .../org.eclipse.emf.ecore.xcore.Xcore.prefs | 10 - .../.settings/org.eclipse.jdt.core.prefs | 420 ------------------ .../.settings/org.eclipse.jdt.launching.prefs | 2 - .../.settings/org.eclipse.jdt.ui.prefs | 131 ------ .../org.eclipse.ltk.core.refactoring.prefs | 2 - .../.settings/org.eclipse.pde.prefs | 32 -- .../README.adoc | 30 -- .../org.eclipse.n4js.ide.tests.jar/about.html | 28 -- tests/org.eclipse.n4js.ide.tests.jar/pom.xml | 129 ------ .../probands/.gitignore | 1 - .../tests/jar/CliJarWithVerdaccioJarTest.java | 105 ----- .../verifier/verifications-test.xml | 30 -- .../xtend-gen/.gitignore | 4 - .../PDTs/npmDependency1.pdt | 0 .../PDTs/npmDependency2.pdt | 0 .../PDTs/npmDependency3.pdt | 0 .../PDTs/npmDependency4.pdt | 0 .../PDTs/npmDependencyOptimized1.pdt | 0 .../PDTs/npmDependencyOptimized2.pdt | 0 .../PDTs/npmDependencyOptimized3.pdt | 0 .../PDTs/npmDependencyOptimized4.pdt | 0 .../PDTs/npmDiffFolderName.pdt | 0 .../PDTs/npmNested1.pdt | 0 .../PDTs/npmNested2.pdt | 0 .../PDTs/npmNestedNodeModules1.pdt | 0 .../PDTs/npmNodeModules1.pdt | 0 .../PDTs/npmScopedDiffFolderName.pdt | 0 .../PDTs/npmScopedProjects1.pdt | 0 .../PDTs/npmScopedProjects2.pdt | 0 .../PDTs/npmScopedProjects3.pdt | 0 .../PDTs/npmScopedProjects4.pdt | 0 .../PDTs/npmSideBySide1.pdt | 0 .../PDTs/npmSideBySide2.pdt | 0 .../PDTs/npmSideBySide3.pdt | 0 .../PDTs/npmSideBySideScoped1.pdt | 0 .../PDTs/npmSideBySideScoped2.pdt | 0 .../PDTs/npmSideBySideScoped3.pdt | 0 .../PDTs/npmSideBySideScoped4.pdt | 0 .../PDTs/npmSideBySideScopedMixed1.pdt | 0 .../PDTs/npmSideBySideScopedMixed2.pdt | 0 .../PDTs/npmSimple1.pdt | 0 .../PDTs/npmSimple2.pdt | 0 .../PDTs/npmSimple3.pdt | 0 .../PDTs/npmSimple4.pdt | 0 .../PDTs/npmSimple5.pdt | 0 .../PDTs/npmSimple6.pdt | 0 .../PDTs/npmYarnMixed1.pdt | 0 .../PDTs/npmYarnMixed2.pdt | 0 .../PDTs/yarnDeepPackages1.pdt | 0 .../PDTs/yarnDeepPackages2.pdt | 0 .../PDTs/yarnDeepPackages3.pdt | 0 .../PDTs/yarnDeepPackages4.pdt | 0 .../PDTs/yarnDeepPackages5.pdt | 0 .../PDTs/yarnDiffFolderName.pdt | 0 .../PDTs/yarnIsRoot1.pdt | 0 .../PDTs/yarnIsRoot2.pdt | 0 .../PDTs/yarnMultiPackages1.pdt | 0 .../PDTs/yarnNested1.pdt | 0 .../PDTs/yarnNestedNpmDependency1.pdt | 0 .../PDTs/yarnNestedNpmDependency2.pdt | 0 .../PDTs/yarnNestedNpmDependency3.pdt | 0 .../PDTs/yarnScopedDiffFolderName.pdt | 0 .../PDTs/yarnScopedProject1.pdt | 0 .../PDTs/yarnScopedProject2.pdt | 0 .../PDTs/yarnScopedProject3.pdt | 0 .../PDTs/yarnSideBySide1.pdt | 0 .../PDTs/yarnSideBySide2.pdt | 0 .../PDTs/yarnSimple1.pdt | 0 .../PDTs/yarnSimple1b.pdt | 0 .../PDTs/yarnSimple2.pdt | 0 .../PDTs/yarnSimple3.pdt | 0 .../PDTs/yarnSimple4.pdt | 0 .../PDTs/yarnSimple5.pdt | 0 .../PDTs/yarnSimple6.pdt | 0 .../PDTs/yarnSymLinksInNodeModulesFolder1.pdt | 0 .../PDTs/yarnSymLinksInNodeModulesFolder2.pdt | 0 .../PDTs/yarnSymLinksInNodeModulesFolder3.pdt | 0 .../PDTs/yarnSymLinksInPackagesFolder1.pdt | 0 .../PDTs/yarnSymLinksInPackagesFolder2.pdt | 0 .../PDTs/yarnSymLinksInPackagesFolder3.pdt | 0 .../fixture/P2/package.json | 18 - .../fixture/PSingle/package.json | 15 - .../org.eclipse.n4js.client/package.json | 18 - .../org.eclipse.n4js.sample.api/package.json | 18 - .../package.json | 22 - .../package.json | 22 - .../package.json | 15 - tests/org.eclipse.n4js.ide.tests/pom.xml | 23 - .../MultipleIssues/Supplier/package.json | 15 - .../MultipleIssues/Supplier/src/A.n4js | 23 - .../Supplier/package.json | 15 - .../Supplier/src/A.n4js | 19 - .../Supplier/package.json | 15 - .../Supplier/src/A.n4js | 14 - .../Supplier/src/B.n4js | 17 - .../Client/package.json | 18 - .../Client/src/B.n4js | 17 - .../Supplier/package.json | 15 - .../Supplier/src/A.n4js | 14 - .../one.api/package.json | 15 - .../one.x.impl/package.json | 19 - .../node_modules/n4js-runtime/package.json | 3 - .../probands/lsp-command-rebuild/package.json | 19 - .../lsp-command-rebuild/src/Module.n4js | 7 - .../probands/simple/P1/package.json | 15 - .../external.project.mm/package.json | 22 - .../external.project.mm/src/Main.n4js | 12 - .../ZeroBasedIssuesInLspTest.java | 2 + .../CreateProjectStructureUtils.java | 2 +- .../ProjectDiscoveryTest.java | 4 +- .../ide/tests/server/CommandRebuildTest.java | 1 - .../verifier/verifications-test.xml | 30 -- .../.classpath | 0 .../.project | 10 +- .../de.loskutov.anyedit.AnyEditTools.prefs | 0 .../org.eclipse.core.resources.prefs | 0 .../.settings/org.eclipse.core.runtime.prefs | 0 .../org.eclipse.emf.ecore.xcore.Xcore.prefs | 0 .../.settings/org.eclipse.jdt.core.prefs | 2 +- .../.settings/org.eclipse.jdt.launching.prefs | 0 .../.settings/org.eclipse.jdt.ui.prefs | 0 .../org.eclipse.ltk.core.refactoring.prefs | 0 .../.settings/org.eclipse.m2e.core.prefs | 0 .../.settings/org.eclipse.pde.prefs | 0 .../org.eclipse.xtend.core.Xtend.prefs | 2 + .../META-INF/MANIFEST.MF | 9 +- .../about.html | 0 .../build.properties | 0 .../plugin.properties | 0 .../pom.xml | 2 +- .../probands}/.gitignore | 0 .../probands/GH-2154/TestProject/package.json | 0 .../GH-2154/TestProject/src/TestModule.n4js | 0 .../probands/GHOLD-212/APIx/package.json | 0 .../GHOLD-212/APIx/src/pack1/T1.n4jsd | 0 .../probands/GHOLD-212/IMPLx/package.json | 0 .../GHOLD-212/IMPLx/src/pack1/T1.n4js | 0 .../probands/IDEBUG-532/APIx/package.json | 0 .../IDEBUG-532/APIx/src/pack1/T1.n4jsd | 0 .../probands/IDEBUG-532/IMPLx/package.json | 0 .../IDEBUG-532/IMPLx/src/pack1/T1.n4js | 0 .../IDEBUG-542/APIx-test/package.json | 0 .../APIx-test/src/pack2/Helper.n4js | 0 .../IDEBUG-542/APIx-test/test/T1test.n4js | 0 .../probands/IDEBUG-542/APIx/package.json | 0 .../IDEBUG-542/APIx/src/pack1/T1.n4jsd | 0 .../IDEBUG-654/js/OldSchoolModule.js | 0 .../IDEBUG-654/IDEBUG-654/package.json | 0 .../IDEBUG-654/IDEBUG-654/src/Client.n4js | 0 .../IDEBUG-654/src/OldSchoolModule.n4jsd | 0 .../IDEBUG-654_2/IDEBUG-654_2/package.json | 0 .../IDEBUG-654_2/IDEBUG-654_2/src-poly/A.n4js | 0 .../IDEBUG-654_2/IDEBUG-654_2/src/A.n4js | 0 .../IDEBUG-654_2/IDEBUG-654_2/src/Main.n4js | 0 .../IDEBUG-654_2/src/ModuleA.n4js | 0 .../IDEBUG-654_2/src/ModuleB.n4js | 0 .../IDEBUG-654_2/src/ModuleC.n4js | 0 .../IDEBUG-695/IDEBUG-695/package.json | 0 .../IDEBUG-695/IDEBUG-695/src-poly/A.n4js | 0 .../probands/IDEBUG-695/IDEBUG-695/src/A.n4js | 0 .../IDEBUG-695/IDEBUG-695/src/Main.n4js | 0 .../IncompleteApiImplementation}/.gitignore | 0 .../one.api/package.json | 0 .../one.api/src/p/A.n4jsd | 0 .../one.x.impl/package.json | 0 .../src/AT_IDE-1510_Missing_Method.n4js | 0 .../one.x.impl/src/p/A.n4js | 0 .../performance-report/package.json | 0 .../performance-report/src-gen/A.js | 0 .../performance-report/src-gen/A.map | 0 .../performance-report/src/A.n4js | 0 .../SingleFileCompile}/P1/package.json | 0 .../probands/SingleFileCompile}/P1/src/A.n4js | 0 .../SingleFileCompile}/P1/src/c/C.n4js | 0 .../SingleFileCompile}/P1/src/x/X.n4js | 0 .../SingleFileCompile}/P1/src/y/Y.n4js | 0 .../SingleFileCompile}/P2/package.json | 0 .../SingleFileCompile}/P2/src/k/K.n4js | 0 .../SingleFileCompile}/P2/src/z/Z.n4js | 0 .../SingleFileCompile}/PSingle/package.json | 0 .../SingleFileCompile}/PSingle/src/a/A.n4js | 0 .../SingleFileCompile}/PSingle/src/b/B.n4js | 0 .../PSingle/src/b/b2/B2.n4js | 0 .../SingleFileCompile}/PSingle/src/c/C.n4js | 0 .../PSingleTestNpm/package.json | 0 .../PSingleTestNpm/src/Hello.n4js | 0 .../one.api.execution/package.json | 0 .../src/direct/AT_IDE-1510_Enums.n4js | 0 .../src/direct/AT_IDE-1510_Interfaces.n4js | 0 .../direct/AT_IDE-1510_Missing_Members.n4js | 0 .../direct/Exec_AT_IDE-1510_Interfaces.n4js | 0 ...c_AT_IDE-1510_Interfaces_provided_get.n4js | 0 ...-1510_Interfaces_provided_get_missing.n4js | 0 ...T_IDE-1510_Interfaces_provided_method.n4js | 0 ...10_Interfaces_provided_method_missing.n4js | 0 ...c_AT_IDE-1510_Interfaces_provided_set.n4js | 0 ...-1510_Interfaces_provided_set_missing.n4js | 0 ...1510_Interfaces_static_getter_missing.n4js | 0 ..._AT_IDE-1510_Interfaces_static_method.n4js | 0 ...1510_Interfaces_static_method_missing.n4js | 0 ...1510_Interfaces_static_setter_missing.n4js | 0 .../Exec_AT_IDE-1510_Missing_Members.n4js | 0 .../src/direct/Exec_AT_IDE_1510_Enums.n4js | 0 ...E_1510_Enums_Literal_in_existing_Enum.n4js | 0 ...DE_1510_Enums_literal_in_missing_Enum.n4js | 0 ..._1510_Enums_literal_in_missing_EnumSB.n4js | 0 ...nums_missing_Literal_in_existing_Enum.n4js | 0 ...ms_missing_Literal_in_existing_EnumSB.n4js | 0 ...IDE_1510_Enums_normal_existing_EnumSB.n4js | 0 .../src/direct/Exec_implemented_members.n4js | 0 .../direct/Exec_missing_field_in_class.n4js | 0 .../direct/Exec_missing_getter_in_class.n4js | 0 .../direct/Exec_missing_method2_in_class.n4js | 0 .../direct/Exec_missing_method_in_class.n4js | 0 .../direct/Exec_missing_setter_in_class.n4js | 0 .../src/direct/MiniAssertions.n4js | 0 .../fields/AT_IDEBUG-505_field_vs_getset.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_1.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_2.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_3.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_4.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_5.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_6.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_7.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_8.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_9.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_A.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_B.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_C.n4js | 0 .../Exec_AT_IDEBUG-505_field_vs_getset_D.n4js | 0 ..._Consumed_Members_of_Missing_Inteface.n4js | 0 ...mbers_of_Missing_Inteface_single_case.n4js | 0 ..._Consumed_Members_of_Missing_Inteface.n4js | 0 ...mbers_of_Missing_Inteface_single_case.n4js | 0 .../AT_IDE-1510_Internal_impl_Subclass.n4js | 0 .../src/routing/AT_IDE-1510_Subclass.n4js | 0 ...ec_AT_IDE-1510_Internal_impl_Subclass.n4js | 0 ...pl_Subclass_UsingDirectImplementation.n4js | 0 ..._Subclass_UsingIndirectImplementation.n4js | 0 .../routing/Exec_AT_IDE-1510_Subclass.n4js | 0 ...T_IDE-1510_Subclass_missing_inherited.n4js | 0 ...AT_IDE-1510_Subclass_normal_inherited.n4js | 0 .../AT_IDE-1510_Variable_And_Function.n4js | 0 ...xec_AT_IDE-1510_Variable_And_Function.n4js | 0 ...0_Variable_And_Function_test_function.n4js | 0 ...ble_And_Function_test_global_variable.n4js | 0 .../one.api/package.json | 0 .../one.api/src/fields/F.n4jsd | 0 .../one.api/src/p/A.n4jsd | 0 .../one.api/src/p/B.n4jsd | 0 .../one.api/src/p/Factory.n4jsd | 0 .../one.api/src/p/IF.n4jsd | 0 .../one.api/src/p/StubRoute.n4jsd | 0 .../one.api/src/p/VarFun.n4jsd | 0 .../one.x.impl/package.json | 0 .../one.x.impl/src/fields/F.n4js | 0 .../one.x.impl/src/fields/F1.n4js | 0 .../one.x.impl/src/p/A.n4js | 0 .../one.x.impl/src/p/B.n4js | 0 .../one.x.impl/src/p/Factory.n4js | 0 .../one.x.impl/src/p/IF.n4js | 0 .../one.x.impl/src/p/IFuser.n4js | 0 .../one.x.impl/src/p/StubRoute.n4js | 0 .../one.x.impl/src/p/VarFun.n4js | 0 .../probands/basic/P1/package.json | 0 .../probands/basic/P1/src/A.n4js | 0 .../probands/basic/P1/src/c/C.n4js | 0 .../probands/basic/P1/src/x/X.n4js | 0 .../probands/basic/P1/src/y/Y.n4js | 0 .../probands/basic/P2/package.json | 0 .../probands/basic/P2/src/k/K.n4js | 0 .../probands/basic/P2/src/z/Z.n4js | 0 .../probands/basic/P3/package.json | 0 .../probands/basic/P3/src/k/K3.n4js | 0 .../probands/basic/P3/src/z/Z3.n4js | 0 .../probands/basic/P4/package.json | 0 .../probands/basic/P4/src/h/H.n4js | 0 .../probands/basic/PSingle/package.json | 0 .../probands/basic/PSingle/src/a/A.n4js | 0 .../probands/basic/PSingle/src/b/B.n4js | 0 .../probands/basic/PSingle/src/b/b2/B2.n4js | 0 .../probands/basic/PSingle/src/c/C.n4js | 0 .../basic/Test01/configuration.properties | 0 .../probands/basic/Test01/package.json | 0 .../probands/basic/Test01/src/Example.n4js | 0 .../basic/Test01/test/ExampleTest.n4js | 0 .../probands/basic/TestCleanPrj1/package.json | 0 .../src-gen/es/TestCleanPrj1/garbage1.js | 0 .../src-gen/es/TestCleanPrj1/garbage2.js | 0 .../probands/basic/TestCleanPrj1/src/C.n4js | 0 .../basic/TestCleanPrj1/test/ExampleTest.n4js | 0 .../probands/basic/TestCleanPrj2/package.json | 0 .../src-gen/es/TestCleanPrj2/trash.js | 0 .../probands/basic/TestCleanPrj2/src/D.n4js | 0 .../probands/basic/TestCleanPrj2/src/E.n4js | 0 .../basic/TestCleanPrj2/test/ExampleTest.n4js | 0 .../external/external.project/package.json | 0 .../external/external.project/src/Main.n4js | 0 .../external.project/package.json | 0 .../external.project/src/Main.n4js | 0 .../P1/package.json | 0 .../P1/src/X.n4jsx | 0 .../P2/package.json | 0 .../P2/src/Y.n4jsx | 0 .../P2/src/Z.n4jsx | 0 .../P1/package.json | 0 .../P1/src/f1.n4jsx | 0 .../P2/package.json | 0 .../P2/src/f2.n4jsx | 0 .../P3/package.json | 0 .../P3/src/f3.n4jsx | 0 .../node_modules/dep/package.json | 0 .../node_modules/dep/src-gen/Dep.js | 0 .../node_modules/dep/src/Dep.n4js | 0 .../package.json | 0 .../packages/P/node_modules/dep/package.json | 0 .../P/node_modules/dep/src-gen/Dep.js | 0 .../packages/P/node_modules/dep/src/Dep.n4js | 0 .../packages/P/package.json | 0 .../packages/P/src/Main.n4js | 0 .../external.project/package.json | 0 .../external.project/src/Main.n4js | 0 .../package.json | 0 .../src/Main.n4js | 0 .../package.json | 0 .../src/MainX.n4jsx | 0 .../external.project.mm/package.json | 0 .../external.project.mm/src/Main.n4js | 0 .../probands/n4jsx/P1/package.json | 0 .../probands/n4jsx/P1/src/bar.n4jsx | 0 .../probands/n4jsx/P2/package.json | 0 .../probands/n4jsx/P2/src/bar.n4jsx | 0 .../probands/n4jsx/P2/src/bar2.n4jsx | 0 .../probands/n4jsx/P2/src/foo.n4js | 0 .../probands/n4jsx/P3/package.json | 0 .../probands/n4jsx/P3/src/bar.n4jsx | 0 .../probands/n4jsx/P3/src/foo.n4js | 0 .../probands/n4jsx/P3/src/react/index.n4jsd | 0 .../probands/n4jsx/react/index.n4jsd | 0 .../probands/n4jsx/react/package.json | 0 .../npmScopes/@myScope/Lib/package.json | 0 .../npmScopes/@myScope/Lib/src/A.n4js | 0 .../npmScopes/@myScope/Lib/src/C.n4js | 0 .../npmScopes/@myScope/Lib/src/D.n4js | 0 .../probands/npmScopes/Lib/package.json | 0 .../probands/npmScopes/Lib/src/B.n4js | 0 .../probands/npmScopes/Lib/src/C.n4js | 0 .../probands/npmScopes/Lib/src/D.n4js | 0 .../probands/npmScopes/XClient/package.json | 0 .../npmScopes/XClient/src/ClientModule1.n4js | 0 .../npmScopes/XClient/src/ClientModule2.n4js | 0 .../oneBasedWSP/oneBased/package.json | 0 .../probands/oneBasedWSP/oneBased/src/A.n4js | 0 .../probands/simple}/P1/package.json | 0 .../probands/simple/P1/src/A.n4js | 0 .../probands/simple/P1/src/c/C.n4js | 0 .../probands/simple/P1/src/x/X.n4js | 0 .../probands/simple/P1/src/y/Y.n4js | 0 .../P1/node_modules/Test01/package.json | 0 .../P1/node_modules/Test01/src/Example.n4js | 0 .../node_modules/Test01/test/ExampleTest.n4js | 0 .../P1/package.json | 0 .../P1/src/A.n4js | 0 .../Broken_Client/package.json | 0 .../Broken_Client/src/Client.n4js | 0 .../type-definitions/Broken_Def/package.json | 0 .../type-definitions/Broken_Def/src/A.n4jsd | 0 .../type-definitions/Client/package.json | 0 .../type-definitions/Client/src/Client.n4js | 0 .../type-definitions/Def/package.json | 0 .../probands/type-definitions/Def/src/A.n4jsd | 0 .../probands/type-definitions/Impl/A.js | 0 .../probands/type-definitions/Impl/B.js | 0 .../type-definitions/Impl/package.json | 0 .../n4js/integration/tests/N4jsLibsTest.java | 47 ++ .../AT_GHOLD_212_transpilecrashTest.java | 2 +- ...54_HeadlessBuilderNotShowingAllIssues.java | 2 +- .../AT_IDEBUG_532_transpilecrashTest.java | 2 +- ...missing_dep_to_project_under_testTest.java | 2 +- ...T_IDEBUG_654_ExportPlainJsModulesTest.java | 2 +- ...IDEBUG_654_MissingPolyfillImportsTest.java | 2 +- ...inalFieldInCtorForStaticPolyfillsTest.java | 2 +- .../IncompleteApiImplementationTest.java | 2 +- ...allCompileRunN4jscExternalImportsTest.java | 2 +- ...CompileRunN4jscExternalMainModuleTest.java | 2 +- ...scExternalShadowNestedNodeModulesTest.java | 2 +- .../InstallCompileRunN4jscExternalTest.java | 2 +- ...nN4jscExternalWithDefinitionFilesTest.java | 2 +- ...4jscExternalWithSingleFileCompileTest.java | 2 +- ...cExternalWithSingleProjectCompileTest.java | 2 +- ...estCompileRunN4jscExternalImportsTest.java | 2 +- ...sonCompileRunN4jscExternalImportsTest.java | 2 +- .../tests/cli/compile}/N4JSXTest.java | 2 +- .../tests/cli/compile}/N4jscBasicTest.java | 2 +- .../tests/cli/compile}/N4jscCleanTest.java | 2 +- ...N4jscDependentProjectDependenciesTest.java | 2 +- .../tests/cli/compile}/N4jscInitTest.java | 2 +- .../cli/compile}/N4jscScopedProjectTest.java | 2 +- .../cli/compile}/N4jscSetVersionsTest.java | 2 +- ...tCatalogIgnoresTestsInNodeModulesTest.java | 2 +- .../N4jscTestCatalogSideBySideTest.java | 2 +- .../compile}/N4jscTestCatalogYarnTest.java | 2 +- ...jscTypeDefinitionsModuleShadowingTest.java | 2 +- .../compile}/OneBasedIssuesInN4jscTest.java | 6 +- .../frontend}/AbstractCliFrontendTest.java | 2 +- .../cli/frontend}/FrontendCompileTest.java | 2 +- .../tests/cli/frontend}/FrontendHelpTest.java | 2 +- .../tests/cli/frontend}/FrontendLspTest.java | 2 +- .../IncompleteApiImplementationJarTest.java | 4 +- .../jar/PerformanceReportN4jscJarTest.java | 4 +- .../jar/SingleFileCompileN4jscJarTest.java | 4 +- .../tests/cli}/jar/package-info.java | 2 +- .../xtend-gen/.gitignore | 0 tests/pom.xml | 6 +- 442 files changed, 394 insertions(+), 2228 deletions(-) delete mode 100644 jenkins/eclipse-nightly.jenkinsfile delete mode 100644 jenkins/eclipse-publish.jenkinsfile delete mode 100644 jenkins/haw-pr.jenkinsfile create mode 100755 n4js-libs/npm-test.sh create mode 100755 releng/utils/scripts/start-verdaccio.sh create mode 100755 releng/utils/scripts/stop-verdaccio.sh delete mode 100644 tests/org.eclipse.n4js.cli.tests/.gitignore delete mode 100644 tests/org.eclipse.n4js.cli.tests/.settings/org.eclipse.xtend.core.Xtend.prefs delete mode 100644 tests/org.eclipse.n4js.cli.tests/META-INF/MANIFEST.MF delete mode 100644 tests/org.eclipse.n4js.cli.tests/build.properties delete mode 100644 tests/org.eclipse.n4js.ide.tests.helper.tests/verifier/verifications-test.xml delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.classpath delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.project delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.core.resources.prefs delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.core.runtime.prefs delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.emf.ecore.xcore.Xcore.prefs delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.core.prefs delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.launching.prefs delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.ui.prefs delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.ltk.core.refactoring.prefs delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.pde.prefs delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/README.adoc delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/about.html delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/pom.xml delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/probands/.gitignore delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/src/org/eclipse/n4js/ide/tests/jar/CliJarWithVerdaccioJarTest.java delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/verifier/verifications-test.xml delete mode 100644 tests/org.eclipse.n4js.ide.tests.jar/xtend-gen/.gitignore rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmDependency1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmDependency2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmDependency3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmDependency4.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmDependencyOptimized1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmDependencyOptimized2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmDependencyOptimized3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmDependencyOptimized4.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmDiffFolderName.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmNested1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmNested2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmNestedNodeModules1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmNodeModules1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmScopedDiffFolderName.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmScopedProjects1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmScopedProjects2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmScopedProjects3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmScopedProjects4.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSideBySide1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSideBySide2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSideBySide3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSideBySideScoped1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSideBySideScoped2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSideBySideScoped3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSideBySideScoped4.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSideBySideScopedMixed1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSideBySideScopedMixed2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSimple1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSimple2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSimple3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSimple4.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSimple5.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmSimple6.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmYarnMixed1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/npmYarnMixed2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnDeepPackages1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnDeepPackages2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnDeepPackages3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnDeepPackages4.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnDeepPackages5.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnDiffFolderName.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnIsRoot1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnIsRoot2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnMultiPackages1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnNested1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnNestedNpmDependency1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnNestedNpmDependency2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnNestedNpmDependency3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnScopedDiffFolderName.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnScopedProject1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnScopedProject2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnScopedProject3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSideBySide1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSideBySide2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSimple1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSimple1b.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSimple2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSimple3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSimple4.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSimple5.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSimple6.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSymLinksInNodeModulesFolder1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSymLinksInNodeModulesFolder2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSymLinksInNodeModulesFolder3.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSymLinksInPackagesFolder1.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSymLinksInPackagesFolder2.pdt (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.ide.tests}/PDTs/yarnSymLinksInPackagesFolder3.pdt (100%) delete mode 100644 tests/org.eclipse.n4js.ide.tests/fixture/P2/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/fixture/PSingle/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/fixtureAPIReplacement/org.eclipse.n4js.client/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/fixtureAPIReplacement/org.eclipse.n4js.sample.api/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/fixtureAPIReplacement/org.eclipse.n4js.sample.nasty/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/fixtureAPIReplacement/org.eclipse.n4js.sample.polite/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/fixtureAPIReplacement/org.eclipse.n4js.sample.utils/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/MultipleIssues/Supplier/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/MultipleIssues/Supplier/src/A.n4js delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/SameModuleExtendsOverrideProtectedFieldOfPublicClass/Supplier/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/SameModuleExtendsOverrideProtectedFieldOfPublicClass/Supplier/src/A.n4js delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/SameProjectExtendsOverridePrivateFieldOfPublicClass/Supplier/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/SameProjectExtendsOverridePrivateFieldOfPublicClass/Supplier/src/A.n4js delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/SameProjectExtendsOverridePrivateFieldOfPublicClass/Supplier/src/B.n4js delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/SameVendorExtendsOverridePrivateFieldOfPublicClass/Client/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/SameVendorExtendsOverridePrivateFieldOfPublicClass/Client/src/B.n4js delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/SameVendorExtendsOverridePrivateFieldOfPublicClass/Supplier/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/access-control/SameVendorExtendsOverridePrivateFieldOfPublicClass/Supplier/src/A.n4js delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/api-impl--stubs-if-incomplete/one.api/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/api-impl--stubs-if-incomplete/one.x.impl/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/lsp-command-rebuild/node_modules/n4js-runtime/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/lsp-command-rebuild/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/lsp-command-rebuild/src/Module.n4js delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/simple/P1/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/tp-location-workspace/external.project.mm/package.json delete mode 100644 tests/org.eclipse.n4js.ide.tests/probands/tp-location-workspace/external.project.mm/src/Main.n4js rename tests/{org.eclipse.n4js.cli.tests/src/org/eclipse/n4js/cli/projectdiscovery/tests => org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/projectdiscovery}/CreateProjectStructureUtils.java (99%) rename tests/{org.eclipse.n4js.cli.tests/src/org/eclipse/n4js/cli/projectdiscovery/tests => org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/projectdiscovery}/ProjectDiscoveryTest.java (96%) delete mode 100644 tests/org.eclipse.n4js.ide.tests/verifier/verifications-test.xml rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.classpath (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.project (94%) rename tests/{org.eclipse.n4js.ide.tests.jar => org.eclipse.n4js.integration.tests}/.settings/de.loskutov.anyedit.AnyEditTools.prefs (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.core.resources.prefs (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.core.runtime.prefs (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.emf.ecore.xcore.Xcore.prefs (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.jdt.core.prefs (99%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.jdt.launching.prefs (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.jdt.ui.prefs (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.ltk.core.refactoring.prefs (100%) rename tests/{org.eclipse.n4js.ide.tests.jar => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.m2e.core.prefs (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.pde.prefs (100%) rename tests/{org.eclipse.n4js.ide.tests.jar => org.eclipse.n4js.integration.tests}/.settings/org.eclipse.xtend.core.Xtend.prefs (92%) rename tests/{org.eclipse.n4js.ide.tests.jar => org.eclipse.n4js.integration.tests}/META-INF/MANIFEST.MF (71%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/about.html (100%) rename tests/{org.eclipse.n4js.ide.tests.jar => org.eclipse.n4js.integration.tests}/build.properties (100%) rename tests/{org.eclipse.n4js.ide.tests.jar => org.eclipse.n4js.integration.tests}/plugin.properties (100%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/pom.xml (95%) rename tests/{org.eclipse.n4js.ide.tests.jar/IncompleteApiImplementationJarTest => org.eclipse.n4js.integration.tests/probands}/.gitignore (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/GH-2154/TestProject/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/GH-2154/TestProject/src/TestModule.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/GHOLD-212/APIx/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/GHOLD-212/APIx/src/pack1/T1.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/GHOLD-212/IMPLx/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/GHOLD-212/IMPLx/src/pack1/T1.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-532/APIx/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-532/APIx/src/pack1/T1.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-532/IMPLx/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-532/IMPLx/src/pack1/T1.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-542/APIx-test/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-542/APIx-test/src/pack2/Helper.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-542/APIx-test/test/T1test.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-542/APIx/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-542/APIx/src/pack1/T1.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654/IDEBUG-654/js/OldSchoolModule.js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654/IDEBUG-654/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654/IDEBUG-654/src/Client.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654/IDEBUG-654/src/OldSchoolModule.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654_2/IDEBUG-654_2/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654_2/IDEBUG-654_2/src-poly/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654_2/IDEBUG-654_2/src/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654_2/IDEBUG-654_2/src/Main.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654_2/IDEBUG-654_2/src/ModuleA.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654_2/IDEBUG-654_2/src/ModuleB.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-654_2/IDEBUG-654_2/src/ModuleC.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-695/IDEBUG-695/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-695/IDEBUG-695/src-poly/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-695/IDEBUG-695/src/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/IDEBUG-695/IDEBUG-695/src/Main.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/IncompleteApiImplementation}/.gitignore (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/IncompleteApiImplementationJarTest => org.eclipse.n4js.integration.tests/probands/IncompleteApiImplementation}/one.api/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/IncompleteApiImplementationJarTest => org.eclipse.n4js.integration.tests/probands/IncompleteApiImplementation}/one.api/src/p/A.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/IncompleteApiImplementationJarTest => org.eclipse.n4js.integration.tests/probands/IncompleteApiImplementation}/one.x.impl/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/IncompleteApiImplementationJarTest => org.eclipse.n4js.integration.tests/probands/IncompleteApiImplementation}/one.x.impl/src/AT_IDE-1510_Missing_Method.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/IncompleteApiImplementationJarTest => org.eclipse.n4js.integration.tests/probands/IncompleteApiImplementation}/one.x.impl/src/p/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/probands/GH-1062 => org.eclipse.n4js.integration.tests/probands/PerformanceReport}/performance-report/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/probands/GH-1062 => org.eclipse.n4js.integration.tests/probands/PerformanceReport}/performance-report/src-gen/A.js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/probands/GH-1062 => org.eclipse.n4js.integration.tests/probands/PerformanceReport}/performance-report/src-gen/A.map (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/probands/GH-1062 => org.eclipse.n4js.integration.tests/probands/PerformanceReport}/performance-report/src/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/P1/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/P1/src/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/P1/src/c/C.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/P1/src/x/X.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/P1/src/y/Y.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/P2/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/P2/src/k/K.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/P2/src/z/Z.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/PSingle/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/PSingle/src/a/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/PSingle/src/b/B.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/PSingle/src/b/b2/B2.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/PSingle/src/c/C.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/PSingleTestNpm/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests.jar/fixture => org.eclipse.n4js.integration.tests/probands/SingleFileCompile}/PSingleTestNpm/src/Hello.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/AT_IDE-1510_Enums.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/AT_IDE-1510_Interfaces.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/AT_IDE-1510_Missing_Members.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_provided_get.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_provided_get_missing.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_provided_method.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_provided_method_missing.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_provided_set.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_provided_set_missing.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_static_getter_missing.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_static_method.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_static_method_missing.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Interfaces_static_setter_missing.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE-1510_Missing_Members.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE_1510_Enums.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE_1510_Enums_Literal_in_existing_Enum.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE_1510_Enums_literal_in_missing_Enum.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE_1510_Enums_literal_in_missing_EnumSB.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE_1510_Enums_missing_Literal_in_existing_Enum.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE_1510_Enums_missing_Literal_in_existing_EnumSB.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_AT_IDE_1510_Enums_normal_existing_EnumSB.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_implemented_members.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_missing_field_in_class.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_missing_getter_in_class.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_missing_method2_in_class.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_missing_method_in_class.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/Exec_missing_setter_in_class.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/direct/MiniAssertions.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/AT_IDEBUG-505_field_vs_getset.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_1.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_2.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_3.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_4.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_5.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_6.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_7.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_8.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_9.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_B.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_C.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/fields/Exec_AT_IDEBUG-505_field_vs_getset_D.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/if/AT_IDE-1510_Consumed_Members_of_Missing_Inteface.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/if/AT_IDE-1510_Consumed_Members_of_Missing_Inteface_single_case.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/if/Exec_AT_IDE-1510_Consumed_Members_of_Missing_Inteface.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/if/Exec_AT_IDE-1510_Consumed_Members_of_Missing_Inteface_single_case.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/routing/AT_IDE-1510_Internal_impl_Subclass.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/routing/AT_IDE-1510_Subclass.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/routing/Exec_AT_IDE-1510_Internal_impl_Subclass.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/routing/Exec_AT_IDE-1510_Internal_impl_Subclass_UsingDirectImplementation.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/routing/Exec_AT_IDE-1510_Internal_impl_Subclass_UsingIndirectImplementation.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/routing/Exec_AT_IDE-1510_Subclass.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/routing/Exec_AT_IDE-1510_Subclass_missing_inherited.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/routing/Exec_AT_IDE-1510_Subclass_normal_inherited.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/var_and_fun/AT_IDE-1510_Variable_And_Function.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/var_and_fun/Exec_AT_IDE-1510_Variable_And_Function.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/var_and_fun/Exec_AT_IDE-1510_Variable_And_Function_test_function.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api.execution/src/var_and_fun/Exec_AT_IDE-1510_Variable_And_Function_test_global_variable.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests/fixture/IDE-1510_Incomplete_API_Implementation => org.eclipse.n4js.integration.tests/probands/api-impl--stubs-if-incomplete}/one.api/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api/src/fields/F.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api/src/p/A.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api/src/p/B.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api/src/p/Factory.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api/src/p/IF.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api/src/p/StubRoute.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.api/src/p/VarFun.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests/fixture/IDE-1510_Incomplete_API_Implementation => org.eclipse.n4js.integration.tests/probands/api-impl--stubs-if-incomplete}/one.x.impl/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.x.impl/src/fields/F.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.x.impl/src/fields/F1.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.x.impl/src/p/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.x.impl/src/p/B.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.x.impl/src/p/Factory.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.x.impl/src/p/IF.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.x.impl/src/p/IFuser.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.x.impl/src/p/StubRoute.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/api-impl--stubs-if-incomplete/one.x.impl/src/p/VarFun.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P1/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P1/src/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P1/src/c/C.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P1/src/x/X.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P1/src/y/Y.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P2/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P2/src/k/K.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P2/src/z/Z.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P3/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P3/src/k/K3.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P3/src/z/Z3.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P4/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/P4/src/h/H.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/PSingle/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/PSingle/src/a/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/PSingle/src/b/B.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/PSingle/src/b/b2/B2.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/PSingle/src/c/C.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/Test01/configuration.properties (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/Test01/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/Test01/src/Example.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/Test01/test/ExampleTest.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj1/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj1/src-gen/es/TestCleanPrj1/garbage1.js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj1/src-gen/es/TestCleanPrj1/garbage2.js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj1/src/C.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj1/test/ExampleTest.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj2/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj2/src-gen/es/TestCleanPrj2/trash.js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj2/src/D.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj2/src/E.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/basic/TestCleanPrj2/test/ExampleTest.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external/external.project/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external/external.project/src/Main.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_imports/external.project/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_imports/external.project/src/Main.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_dependencies/P1/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_dependencies/P1/src/X.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_dependencies/P2/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_dependencies/P2/src/Y.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_dependencies/P2/src/Z.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_install_dependencies/P1/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_install_dependencies/P1/src/f1.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_install_dependencies/P2/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_install_dependencies/P2/src/f2.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_install_dependencies/P3/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_project_install_dependencies/P3/src/f3.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_shadowNestedNodeModules/node_modules/dep/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_shadowNestedNodeModules/node_modules/dep/src-gen/Dep.js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_shadowNestedNodeModules/node_modules/dep/src/Dep.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_shadowNestedNodeModules/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_shadowNestedNodeModules/packages/P/node_modules/dep/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_shadowNestedNodeModules/packages/P/node_modules/dep/src-gen/Dep.js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_shadowNestedNodeModules/packages/P/node_modules/dep/src/Dep.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_shadowNestedNodeModules/packages/P/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_shadowNestedNodeModules/packages/P/src/Main.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_singleProjectOrFileCompile/external.project/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_singleProjectOrFileCompile/external.project/src/Main.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_with_n4jsd/project.using.external.from.n4js/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_with_n4jsd/project.using.external.from.n4js/src/Main.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_with_n4jsd/project.using.external.from.n4jsx/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/external_with_n4jsd/project.using.external.from.n4jsx/src/MainX.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/externalmm/external.project.mm/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/externalmm/external.project.mm/src/Main.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P1/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P1/src/bar.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P2/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P2/src/bar.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P2/src/bar2.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P2/src/foo.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P3/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P3/src/bar.n4jsx (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P3/src/foo.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/P3/src/react/index.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/react/index.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/n4jsx/react/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/@myScope/Lib/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/@myScope/Lib/src/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/@myScope/Lib/src/C.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/@myScope/Lib/src/D.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/Lib/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/Lib/src/B.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/Lib/src/C.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/Lib/src/D.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/XClient/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/XClient/src/ClientModule1.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/npmScopes/XClient/src/ClientModule2.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/oneBasedWSP/oneBased/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/oneBasedWSP/oneBased/src/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests/fixture => org.eclipse.n4js.integration.tests/probands/simple}/P1/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/simple/P1/src/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/simple/P1/src/c/C.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/simple/P1/src/x/X.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/simple/P1/src/y/Y.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/testCatalogIgnoresTestsInNodeModules/P1/node_modules/Test01/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/testCatalogIgnoresTestsInNodeModules/P1/node_modules/Test01/src/Example.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/testCatalogIgnoresTestsInNodeModules/P1/node_modules/Test01/test/ExampleTest.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/testCatalogIgnoresTestsInNodeModules/P1/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/testCatalogIgnoresTestsInNodeModules/P1/src/A.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Broken_Client/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Broken_Client/src/Client.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Broken_Def/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Broken_Def/src/A.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Client/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Client/src/Client.n4js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Def/package.json (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Def/src/A.n4jsd (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Impl/A.js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Impl/B.js (100%) rename tests/{org.eclipse.n4js.ide.tests => org.eclipse.n4js.integration.tests}/probands/type-definitions/Impl/package.json (100%) create mode 100644 tests/org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/N4jsLibsTest.java rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/AT_GHOLD_212_transpilecrashTest.java (96%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/AT_GH_2154_HeadlessBuilderNotShowingAllIssues.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/AT_IDEBUG_532_transpilecrashTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/AT_IDEBUG_542_missing_dep_to_project_under_testTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/AT_IDEBUG_654_ExportPlainJsModulesTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/AT_IDEBUG_654_MissingPolyfillImportsTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/AT_IDEBUG_695_CannotSetFinalFieldInCtorForStaticPolyfillsTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/IncompleteApiImplementationTest.java (99%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/InstallCompileRunN4jscExternalImportsTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/InstallCompileRunN4jscExternalMainModuleTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/InstallCompileRunN4jscExternalShadowNestedNodeModulesTest.java (98%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/InstallCompileRunN4jscExternalTest.java (98%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/InstallCompileRunN4jscExternalWithDefinitionFilesTest.java (98%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/InstallCompileRunN4jscExternalWithSingleFileCompileTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/InstallCompileRunN4jscExternalWithSingleProjectCompileTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/InstallFromManifestCompileRunN4jscExternalImportsTest.java (98%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/InstallFromPackageJsonCompileRunN4jscExternalImportsTest.java (98%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4JSXTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscBasicTest.java (99%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscCleanTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscDependentProjectDependenciesTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/init/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscInitTest.java (99%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscScopedProjectTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/setversions/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscSetVersionsTest.java (98%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscTestCatalogIgnoresTestsInNodeModulesTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscTestCatalogSideBySideTest.java (98%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscTestCatalogYarnTest.java (98%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/compiler => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/N4jscTypeDefinitionsModuleShadowingTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests/src/org/eclipse/n4js/ide/tests/issuePositions => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/compile}/OneBasedIssuesInN4jscTest.java (92%) rename tests/{org.eclipse.n4js.cli.tests/src/org/eclipse/n4js/cli/frontend/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/frontend}/AbstractCliFrontendTest.java (93%) rename tests/{org.eclipse.n4js.cli.tests/src/org/eclipse/n4js/cli/frontend/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/frontend}/FrontendCompileTest.java (99%) rename tests/{org.eclipse.n4js.cli.tests/src/org/eclipse/n4js/cli/frontend/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/frontend}/FrontendHelpTest.java (99%) rename tests/{org.eclipse.n4js.cli.tests/src/org/eclipse/n4js/cli/frontend/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli/frontend}/FrontendLspTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests.jar/src/org/eclipse/n4js/ide/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli}/jar/IncompleteApiImplementationJarTest.java (95%) rename tests/{org.eclipse.n4js.ide.tests.jar/src/org/eclipse/n4js/ide/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli}/jar/PerformanceReportN4jscJarTest.java (97%) rename tests/{org.eclipse.n4js.ide.tests.jar/src/org/eclipse/n4js/ide/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli}/jar/SingleFileCompileN4jscJarTest.java (96%) rename tests/{org.eclipse.n4js.ide.tests.jar/src/org/eclipse/n4js/ide/tests => org.eclipse.n4js.integration.tests/src/org/eclipse/n4js/integration/tests/cli}/jar/package-info.java (93%) rename tests/{org.eclipse.n4js.cli.tests => org.eclipse.n4js.integration.tests}/xtend-gen/.gitignore (100%) diff --git a/docs/org.eclipse.n4js.design/chapters/02_eclipseSetup/eclipseSetup.adoc b/docs/org.eclipse.n4js.design/chapters/02_eclipseSetup/eclipseSetup.adoc index f0c4d79f4f..0f27d556a6 100644 --- a/docs/org.eclipse.n4js.design/chapters/02_eclipseSetup/eclipseSetup.adoc +++ b/docs/org.eclipse.n4js.design/chapters/02_eclipseSetup/eclipseSetup.adoc @@ -98,7 +98,8 @@ In case of local changes of n4js-libs one way of including them is to use a loca The verdaccio is first populated by running maven, and then used when executing `npm install` in the directory `n4js-vscode-extension`. * Start docker -* Run maven with: `mvn -DnoTests -DstartAndKeepVerdaccio clean verify` +* Run maven with: `mvn -DnoTests clean verify` +* Start and populate a local verdaccio server with: `./releng/utils/scripts/start-verdaccio.sh` * Change directory to `n4js-vscode-extension` * Remove `node_modules` folder and `package-lock.json` file * Install from local verdaccio with: `npm install --registry http://localhost:4873` diff --git a/docs/org.eclipse.n4js.design/chapters/03_releng/releng.adoc b/docs/org.eclipse.n4js.design/chapters/03_releng/releng.adoc index 94c825942b..d53d7a79b8 100644 --- a/docs/org.eclipse.n4js.design/chapters/03_releng/releng.adoc +++ b/docs/org.eclipse.n4js.design/chapters/03_releng/releng.adoc @@ -172,11 +172,10 @@ You may have to increase the memory for maven via `export MAVEN_OPTS="-Xmx2048m" Available optional maven profiles are: [horizontal] -execute-basic-tests:: run basic tests (e.g. `org.eclipse.n4js.lang.tests`); active by default, use `-DdoNotExecuteBasicTests` to deactivate -execute-ecmas-tests:: run ECMA test suite +execute-basic-tests:: run basic tests (e.g. `org.eclipse.n4js.lang.tests`; also includes `org.eclipse.n4js.integration.tests`); active by default, use `-DdoNotExecuteBasicTests` to deactivate +execute-ecma-tests:: run ECMA test suite execute-smoke-tests:: run generated tests using corrupted source code as input execute-accesscontrol-tests:: run generated tests for checking accessibility of class/interface members -execute-jar-tests:: run tests using the headless jar (in bundle `org.eclipse.n4js.ide.tests.jar`, requires docker and verdaccio!) Available system properties: @@ -187,7 +186,6 @@ noTesthelpers:: if defined (i.e. "-DnoTesthelpers"), omit projects in f noDocs:: if defined (i.e. "-DnoDocs"), omit projects in folder "docs" from maven build doNotExecuteBasicTests:: if defined (i.e. "-DdoNotExecuteBasicTests"), deactivate profile "execute-basic-tests" languageVersion:: an optional version string to show in the Eclipse About dialog of IDE products (should be defined by publishing builds) -startAndKeepVerdaccio:: if defined (i.e. "-DstartAndKeepVerdaccio"), enforce starting and suppress stopping of the test verdaccio (see <>) @@ -203,19 +201,6 @@ The existence of `local-snapshot-deploy-folder` will trigger a profile enabling -[[sec:test-verdaccio]] -=== Test Verdaccio containing n4js-libs - -If profile `execute-jar-tests` is active, a local verdaccio instance is started and populated with -freshly-compiled n4js-libs (the libraries located under top-level folder `/n4js-libs`) and is stopped before the -end of the build. The verdaccio instance is started as a docker container called `n4js-test-verdaccio`. - -When giving `-DstartAndKeepVerdaccio` on the command line, such a test verdaccio will always be started/populated but -never stopped, regardless of whether profile `execute-jar-tests` is active or not. This is useful to enforce -starting of the test verdaccio (even without running integration tests) and then reusing it in subsequent builds. - - - === Generation of Eclipse help for spec and design document The HTML pages for N4JSSpec and N4JSDesign documents are generated from the Asciidoc sources in the project `org.eclipse.n4js.spec` `org.eclipse.n4js.design` by Asciispec.  diff --git a/jenkins/eclipse-nightly.jenkinsfile b/jenkins/eclipse-nightly.jenkinsfile deleted file mode 100644 index 9025c7ad46..0000000000 --- a/jenkins/eclipse-nightly.jenkinsfile +++ /dev/null @@ -1,115 +0,0 @@ -/* - * Copyright (c) 2018 NumberFour AG. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * NumberFour AG - Initial API and implementation - */ - -pipeline { - - agent any - - options { - buildDiscarder( - logRotator( - numToKeepStr: '20', - artifactDaysToKeepStr: '14', - artifactNumToKeepStr: '20', - daysToKeepStr: '14')) - disableConcurrentBuilds() - timeout(time: 6, unit: 'HOURS') - timestamps() - } - - // To request an update of the below tools on Eclipse JIPP, create a ticket on Bugzilla via this link: - // https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Community&component=CI-Jenkins - // For example: - // https://bugs.eclipse.org/bugs/show_bug.cgi?id=558060 - environment { - NODEJS_PATH= '/shared/common/node-v12.13.1-linux-x64/bin' - YARN_PATH = '/shared/common/yarn/1.19.2/bin' - PATH = "${PATH}" + - ':/shared/common/jq/1.6' + - ':/shared/common/apache-ant-1.9.6/bin' + - ':/shared/common/maven/apache-maven-3.6.0/bin/' + - ':/shared/common/node-v12.13.1-linux-x64/bin' + - ':/shared/common/yarn/1.19.2/bin' + - ':/shared/common/java/openjdk/jdk-11/bin' - MAVEN_OPTS = '-Xmx4G' - JAVA_HOME = '/shared/common/java/openjdk/jdk-11' - } - - triggers { - cron('H 22 * * *') // build every night sometime after 10pm (22:00) - } - - stages { - - stage('Build & Test') { - steps { - wrap([$class: 'Xvnc', takeScreenshot: false, useXauthority: true]) { - dir('n4js') { - script { - def options = [ - '--batch-mode', - '--update-snapshots', - '--show-version', - '-Dtycho.localArtifacts=ignore', - '-Dmaven.test.failure.ignore', - '-DWORKSPACE=' + env.WORKSPACE - ].join(' ') - def profiles = [ - 'execute-ecma-tests', - 'execute-accesscontrol-tests', - 'execute-smoke-tests' - ].join(',') - - sh "mvn -P${profiles} ${options} clean verify" - } - } - } -// junit 'n4js/**/failsafe-reports/**/*.xml' // required to set build status! (due to use of '-Dmaven.test.failure.ignore') - junit 'n4js/**/surefire-reports/**/*.xml' - } - } - - stage('Trigger Publishing Build') { - when { // only if no error/failure/abort occured before - expression { - return currentBuild.currentResult == "SUCCESS" - } - } - steps { - script { - def n4jsCommitId = sh(returnStdout: true, script: 'cd n4js ; git log -n 1 --pretty=format:"%H"').trim() - - echo """ -Triggering publishing build with the following arguments: -BRANCH_OR_COMMIT: ${n4jsCommitId} -""" - - build( - job: 'publish', - wait: false, - parameters: [ - [$class: 'StringParameterValue', name: 'BRANCH_OR_COMMIT', value: "${n4jsCommitId}"] - ]) - } - } - } - } - - post { - always { - archiveArtifacts allowEmptyArchive: true, artifacts: '**/logs/*.log' - archiveArtifacts allowEmptyArchive: true, artifacts: '**/tests/**/target/**/*-output.txt' - } - cleanup { - deleteDir() - } - } -} diff --git a/jenkins/eclipse-publish.jenkinsfile b/jenkins/eclipse-publish.jenkinsfile deleted file mode 100644 index ead1bc9170..0000000000 --- a/jenkins/eclipse-publish.jenkinsfile +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Copyright (c) 2018 NumberFour AG. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * NumberFour AG - Initial API and implementation - */ - - -def MAVEN_OPTIONS = '-U -V -B -e ' + - '-DWORKSPACE=$WORKSPACE ' + - '-Dmaven.test.failure.ignore ' + - '-Dmaven.test.redirectTestOutputToFile=true ' + - '-Dtycho.localArtifacts=ignore' - -def DEBUG_DEPLOY_SUFFIX = ''; // should be empty string by default; use something like '_GH-1234' for debugging the publishing build itself - -// the following will be set below in stage 'Compute Version': -def String LANGUAGE_VERSION; -def String N4JS_LIBS_DIST_TAG; - - -pipeline { - - agent any - - options { - buildDiscarder( - logRotator( - numToKeepStr: '20', - artifactDaysToKeepStr: '14', - artifactNumToKeepStr: '20', - daysToKeepStr: '14')) - disableConcurrentBuilds() - timeout(time: 3, unit: 'HOURS') - timestamps() - } - - // For how to request updates of below tools on Eclipse infrastructure, see file 'eclipse-nightly.jenkinsfile'. - environment { - NODEJS_PATH= '/shared/common/node-v12.13.1-linux-x64/bin' - YARN_PATH = '/shared/common/yarn/1.19.2/bin' - PATH = "${PATH}" + - ':/shared/common/jq/1.6' + - ':/shared/common/apache-ant-1.9.6/bin' + - ':/shared/common/maven/apache-maven-3.6.0/bin/' + - ':/shared/common/node-v12.13.1-linux-x64/bin' + - ':/shared/common/yarn/1.19.2/bin' + - ':/shared/common/java/openjdk/jdk-11/bin' - MAVEN_OPTS = '-Xmx4G' - JAVA_HOME = '/shared/common/java/openjdk/jdk-11' - } - - stages { - - stage('Compute Version') { - steps { - script { - sh 'n4js/releng/utils/scripts/compute-version.sh' - LANGUAGE_VERSION = sh(returnStdout: true, script: 'jq -r ".languageVersion" n4js/version-info.json').trim(); - LANGUAGE_COMMIT = sh(returnStdout: true, script: 'jq -r ".languageCommit" n4js/version-info.json').trim(); - N4JS_LIBS_DIST_TAG = sh(returnStdout: true, script: 'jq -r ".n4jsLibsDistTag" n4js/version-info.json').trim(); - // note: we never publish any of the n4js-libs in this build, - // so we can ignore the other properties in file version-info.json - } - } - } - - stage('Build (no tests)') { - steps { - dir('n4js') { - sh "mvn $MAVEN_OPTIONS -DlanguageVersion=${LANGUAGE_VERSION} -DnoTests clean verify" - } - - // assert that the headless builder reports the correct version - script { - def versionOfHeadlessBuilder = sh(returnStdout: true, script: 'java -jar n4js/plugins/org.eclipse.n4js.cli/target/n4jsc.jar --version').trim(); - def expectedVersion = LANGUAGE_VERSION + " (commit " + LANGUAGE_COMMIT + ")" - if (versionOfHeadlessBuilder != expectedVersion) { - error "headless builder reported an incorrect version: ${versionOfHeadlessBuilder}" - } - } - } - } - - stage('Deploy') { - steps { - script { - // append language version to file names of products - sh """ - cd n4js/target - mv n4jsc.jar n4jsc_${LANGUAGE_VERSION}.jar - """ - - echo "Deploying version ${LANGUAGE_VERSION} of N4JS ..." - - echo 'START: moving old products to archive.eclipse.org (those that are older than a week):' - sh """\ - cd /home/data/httpd/download.eclipse.org/n4js - find products/nightly -mindepth 1 -maxdepth 1 -type d -not -name LATEST -mtime +7 -print -exec mv {} /home/data/httpd/archive.eclipse.org/n4js/{} \\; - """ - echo 'END: moving old products' - - echo 'START: copying new products:' - def pathProductsVersion = "/home/data/httpd/download.eclipse.org/n4js/products$DEBUG_DEPLOY_SUFFIX/nightly/$LANGUAGE_VERSION"; - sh """\ - mkdir -p ${pathProductsVersion} - cp n4js/target/*.jar ${pathProductsVersion} - """ - echo 'END: copying new products' - - echo 'START: updating folder LATEST on download.eclipse.org:' - if (N4JS_LIBS_DIST_TAG == 'latest') { - def pathProductsLatest = "/home/data/httpd/download.eclipse.org/n4js/products$DEBUG_DEPLOY_SUFFIX/nightly/LATEST"; - sh """\ - rm -rf ${pathProductsLatest} - mkdir -p ${pathProductsLatest} - cp -R ${pathProductsVersion}/* ${pathProductsLatest} - """ - - // create copies of products without version suffix - sh """\ - cp ${pathProductsLatest}/n4jsc_${LANGUAGE_VERSION}.jar ${pathProductsLatest}/n4jsc.jar - """ - } else { - echo 'SKIPPED! (because publishing with a dist-tag other than "latest")' - } - echo 'END: updating folder LATEST on download.eclipse.org:' - - // show a summary - def output = sh returnStdout: true, script: """\ - echo ******************** Products on download server: - ls -l /home/data/httpd/download.eclipse.org/n4js/products$DEBUG_DEPLOY_SUFFIX/nightly - echo ******************** Products on archive server: - ls -l /home/data/httpd/archive.eclipse.org/n4js/products/nightly - echo ******************** - """ - - echo "$output" - } - } - } - } - - post { - cleanup { - deleteDir() - } - } -} diff --git a/jenkins/haw-pr.jenkinsfile b/jenkins/haw-pr.jenkinsfile deleted file mode 100644 index 616d3147f6..0000000000 --- a/jenkins/haw-pr.jenkinsfile +++ /dev/null @@ -1,99 +0,0 @@ -/* - * Copyright (c) 2019 HAW Hamburg - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Based on eclipse-nightly.jenkinsfile - */ -pipeline { - agent any - - environment { - // paths to tools, some common paths you may found on other machines are commented out - NODEJS_PATH= '/usr/bin' // '/shared/common/node-v10.15.3-linux-x64/bin' - YARN_PATH = '/usr/bin' // '/shared/common/yarn/1.15.2/bin' - // PATH = "${PATH}" - // ":/shared/common/node-v10.15.3-linux-x64/bin" + - // ":/shared/common/java/openjdk/jdk11-x64/bin" - MAVEN_OPTS = '-Xmx4G' - JAVA_HOME = '/usr/lib/jvm/java-11-openjdk-amd64' - TIMESTAMP = new Date().format("yyyyMMddHHmm") - } - - stages { - stage('Build and Test') { - steps { - echo 'Starting Xvnc' - wrap([$class: 'Xvnc', takeScreenshot: false, useXauthority: true]) { - echo 'Building and testing, using display ' + DISPLAY - script { - def envvars = [ - '-DDISPLAY=localhost'+DISPLAY, - '-DargLine="-DDISPLAY=localhost'+DISPLAY+'"' - ].join(' ') - def options = [ - '--batch-mode', - //'--quiet', - '--update-snapshots', - '--show-version', - '-Dtycho.localArtifacts=ignore', - // for adjusting the script only, renable later on: - '-Dmaven.test.failure.ignore', - "--fail-at-end", - '-DWORKSPACE=' + env.WORKSPACE - ].join(' ') - def profiles = [ - 'execute-ecma-tests', - 'execute-accesscontrol-tests' - // 'execute-smoke-tests' // #1533 - ].join(',') - - sh """\ - pwd - git log -n 1 - npm version - """ - sh "mvn ${envvars} clean verify -P${profiles} ${options}" - - // The following calls may be used for testing purposes: - // sh "mvn clean verify ${options}" - // for quick testing: - // sh "mvn -o clean" - - // prints out the target folder, not needed here but useful in other cases - // sh "ls -Ral builds/org.eclipse.n4js.product.build/target/repository/" - } - } // end wrap - } // end steps - } // end stage - /* commented out here, may be introduced again, left skeleton here: - stage('Deploy') { - steps { - echo 'Deploying....' - } - }*/ - } - - post { - always { - // archiveArtifacts allowEmptyArchive: true, artifacts: '**/builds/**/target/products/*.zip' - // archiveArtifacts allowEmptyArchive: true, artifacts: '**/tools/**/target/n4jsc.jar' - // archiveArtifacts allowEmptyArchive: true, artifacts: '**/logs/*.log' - // archiveArtifacts allowEmptyArchive: true, artifacts: '**/tests/**/target/**/*-output.txt' - - junit '**/surefire-reports/**/*.xml' - //junit '**/failsafe-reports/**/*.xml' - } - cleanup { - // Execute after every other post condition has been evaluated, regardless of status - // See https://jenkins.io/doc/book/pipeline/syntax/#post - - // "real" cleaning will be added after some real world experience with the script - echo "Not cleaning yet, please check server yourself!" - // echo 'Cleaning up workspace' - // Not today: deleteDir() - } - } -} \ No newline at end of file diff --git a/n4js-libs/.gitignore b/n4js-libs/.gitignore index 82ac021278..6e71b56ec2 100644 --- a/n4js-libs/.gitignore +++ b/n4js-libs/.gitignore @@ -24,4 +24,3 @@ npm-debug.log .npm-log .n4js.projectstate *-gen.* - diff --git a/n4js-libs/npm-test.sh b/n4js-libs/npm-test.sh new file mode 100755 index 0000000000..670ffdee9d --- /dev/null +++ b/n4js-libs/npm-test.sh @@ -0,0 +1,30 @@ +#!/bin/bash +# +# Copyright (c) 2021 NumberFour AG. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# Contributors: +# NumberFour AG - Initial API and implementation +# +set -e +cd `dirname $0` + + +echo "========= Running tests defined in the individual packages of yarn workspace 'n4js-libs' ..." +./node_modules/.bin/lerna run test + + +echo "========= Running mangelhaft tests for all packages in yarn workspace 'n4js-libs' ..." +REPORT_NAME="./build/report.xml" +mkdir -p "./build" +echo "Run mangelhaft ..." +packages/n4js-mangelhaft-cli/bin/n4js-mangelhaft-cli.js . \ + --xunitReportFile $REPORT_NAME \ + --xunitReportName test-report \ + --xunitReportPackage n4js-libs-report \ + --nycCoveragePath ./build/coverage.json +echo "Done running mangehalft." +echo "Saved test report at: ${REPORT_NAME}" diff --git a/n4js-libs/package.json b/n4js-libs/package.json index aad6a2e6ed..80720ea76f 100644 --- a/n4js-libs/package.json +++ b/n4js-libs/package.json @@ -6,7 +6,7 @@ "semver": "7.1.1" }, "scripts": { - "test": "lerna run --stream test" + "test": "./npm-test.sh" }, "workspaces": [ "packages/*" diff --git a/plugins/org.eclipse.n4js/src/org/eclipse/n4js/N4JSGlobals.java b/plugins/org.eclipse.n4js/src/org/eclipse/n4js/N4JSGlobals.java index 7aba495dfa..dd265695a6 100644 --- a/plugins/org.eclipse.n4js/src/org/eclipse/n4js/N4JSGlobals.java +++ b/plugins/org.eclipse.n4js/src/org/eclipse/n4js/N4JSGlobals.java @@ -15,6 +15,7 @@ import static java.util.Collections.unmodifiableCollection; import java.math.BigDecimal; +import java.nio.file.Path; import java.util.Arrays; import java.util.Collection; import java.util.LinkedHashSet; @@ -132,7 +133,7 @@ public final class N4JSGlobals { * Path to the folder in the N4JS Git repository containing the source code of the "n4js-libs", relative to the * repository's root folder. */ - public static final String N4JS_LIBS_SOURCES_PATH = N4JS_LIBS_FOLDER_NAME + "/" + "packages"; + public static final Path N4JS_LIBS_SOURCES_PATH = Path.of(N4JS_LIBS_FOLDER_NAME, "packages"); /** * Name of the npm package containing the N4JS bootstrap and runtime code, i.e. the code defining internal low-level @@ -158,6 +159,11 @@ public final class N4JSGlobals { */ public static final N4JSPackageName N4JS_RUNTIME_HTML5 = new N4JSPackageName("n4js-runtime-html5"); + /** + * The wrapper npm package for the N4JS command line interface. + */ + public static final N4JSPackageName N4JS_CLI = new N4JSPackageName("n4js-cli"); + /** * Project types for which a dependency to the {@link #N4JS_RUNTIME n4js-runtime} is mandatory. */ @@ -346,6 +352,16 @@ public final class N4JSGlobals { */ public static final String IMPORT_N4JSGLOBALS = "import 'n4js-runtime'"; + /** + * Standard maven target folder-name, the base of maven-compile results. + */ + public static final String TARGET = "target"; + + /** + * Name of the N4JS headless builder JAR. + */ + public static final String N4JSC_JAR = "n4jsc.jar"; + private N4JSGlobals() { // private to prevent inheritance & instantiation. } diff --git a/pom.xml b/pom.xml index bbf11e85db..5654037f9e 100644 --- a/pom.xml +++ b/pom.xml @@ -27,12 +27,6 @@ Contributors: releng/org.eclipse.n4js.parent - - - none - none - - releng @@ -77,39 +71,6 @@ Contributors: tests - - - - execute-jar-tests - - false - - - pre-integration-test - post-integration-test - - - - - - - false - - startAndKeepVerdaccio - - - - pre-integration-test - none - - diff --git a/releng/org.eclipse.n4js.libs.build/pom.xml b/releng/org.eclipse.n4js.libs.build/pom.xml index 83c703bd9e..ac973d0868 100644 --- a/releng/org.eclipse.n4js.libs.build/pom.xml +++ b/releng/org.eclipse.n4js.libs.build/pom.xml @@ -46,67 +46,6 @@ Contributors: maven-clean-plugin - - - maven-antrun-plugin - ${maven-antrun-plugin.version} - - - - stop-verdaccio-before-start - ${internal_startVerdaccioPhase} - - run - - - - - - - - - - - - - - - start-verdaccio - ${internal_startVerdaccioPhase} - - run - - - - - - - - - - - - - - - - - - - - - - - - org.codehaus.mojo exec-maven-plugin @@ -135,23 +74,6 @@ Contributors: false - - - publish-n4js-libs - ${internal_startVerdaccioPhase} - - exec - - - bash - - ${project.basedir}/../../releng/utils/scripts/publish-n4js-libs.sh - local - 0.0.1 - - - - diff --git a/releng/org.eclipse.n4js.libs.build/src/org/eclipse/n4js/libs/build/BuildN4jsLibs.java b/releng/org.eclipse.n4js.libs.build/src/org/eclipse/n4js/libs/build/BuildN4jsLibs.java index f650fe4842..2aee7e9460 100644 --- a/releng/org.eclipse.n4js.libs.build/src/org/eclipse/n4js/libs/build/BuildN4jsLibs.java +++ b/releng/org.eclipse.n4js.libs.build/src/org/eclipse/n4js/libs/build/BuildN4jsLibs.java @@ -10,25 +10,35 @@ */ package org.eclipse.n4js.libs.build; +import static org.eclipse.n4js.N4JSGlobals.N4JSC_JAR; +import static org.eclipse.n4js.N4JSGlobals.N4JS_CLI; +import static org.eclipse.n4js.N4JSGlobals.N4JS_LIBS_FOLDER_NAME; +import static org.eclipse.n4js.N4JSGlobals.N4JS_LIBS_SOURCES_PATH; +import static org.eclipse.n4js.N4JSGlobals.NODE_MODULES; +import static org.eclipse.n4js.N4JSGlobals.TARGET; import static org.eclipse.n4js.cli.N4jscTestOptions.COMPILE; -import java.io.File; import java.io.IOException; +import java.nio.file.FileVisitResult; import java.nio.file.Files; import java.nio.file.Path; +import java.nio.file.SimpleFileVisitor; +import java.nio.file.attribute.BasicFileAttributes; +import java.util.ArrayList; import java.util.List; -import java.util.stream.Collectors; import org.eclipse.emf.mwe2.runtime.workflow.IWorkflowComponent; import org.eclipse.emf.mwe2.runtime.workflow.IWorkflowContext; -import org.eclipse.n4js.N4JSGlobals; import org.eclipse.n4js.cli.N4jscMain; +import org.eclipse.n4js.cli.N4jscTestOptions; import org.eclipse.n4js.cli.helper.CliCompileResult; import org.eclipse.n4js.cli.helper.CliTools; import org.eclipse.n4js.cli.helper.CliTools.CliException; import org.eclipse.n4js.utils.UtilN4; +import org.eclipse.n4js.utils.io.FileCopier; import org.eclipse.n4js.utils.io.FileDeleter; +import com.google.common.base.Preconditions; import com.google.common.base.Throwables; /** @@ -62,46 +72,67 @@ public static void buildN4jsLibs() throws IOException { println("==== Running BUILD N4JS-LIBS ===="); final Path n4jsRootPath = UtilN4.findN4jsRepoRootPath(); - final Path n4jsLibsRootPath = n4jsRootPath.resolve(N4JSGlobals.N4JS_LIBS_SOURCES_PATH); - final File n4jsLibsRoot = n4jsLibsRootPath.toFile(); + final Path n4jsLibsRootPath = n4jsRootPath.resolve(N4JS_LIBS_FOLDER_NAME); // step 1: clean - println("==== STEP 1/2: remove all node_modules folders below top-level folder \"" - + N4JSGlobals.N4JS_LIBS_FOLDER_NAME + "\" in n4js repository:"); - removeNodeModulesFolders(n4jsLibsRoot); + println("==== STEP 1/4: removing all node_modules folders below top-level folder \"" + N4JS_LIBS_FOLDER_NAME + + "\" in n4js repository:"); + removeNodeModulesFolders(n4jsLibsRootPath); + + // step 2: install dependencies + println("==== STEP 2/4: installing dependencies of " + N4JS_LIBS_FOLDER_NAME); + installDependencies(n4jsLibsRootPath); // step 2: compile projects under top-level folder "n4js-libs" - println("==== STEP 2/2: compiling code under top-level folder \"" + N4JSGlobals.N4JS_LIBS_FOLDER_NAME - + "\" in n4js repository:"); + println("==== STEP 3/4: compiling code under top-level folder \"" + N4JS_LIBS_FOLDER_NAME + + "\" in n4js repository"); compile(n4jsLibsRootPath); + // step 3: deploy n4jsc.jar (optional) + println("==== STEP 4/4: deploying \"" + N4JSC_JAR + "\" to \"" + N4JS_CLI + "\" (optional)"); + deployN4jscJar(n4jsRootPath); + println("==== BUILD N4JS-LIBS finished ===="); } - private static void removeNodeModulesFolders(File... foldersContainingProjectFolders) throws IOException { - // remove all node_modules folders - for (File folder : foldersContainingProjectFolders) { - List nodeModulesFolders = Files.walk(folder.toPath()) - .map(path -> path.toFile()) - .filter(file -> file.isDirectory() && file.getName().equals(N4JSGlobals.NODE_MODULES)) - .collect(Collectors.toList()); - for (File nodeModulesFolder : nodeModulesFolders) { - println("Deleting node_modules folder: " + nodeModulesFolder); - FileDeleter.delete(nodeModulesFolder); + private static void removeNodeModulesFolders(Path folder) throws IOException { + final List nodeModulesFolders = new ArrayList<>(); + Files.walkFileTree(folder, new SimpleFileVisitor() { + @Override + public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException { + if (NODE_MODULES.equals(dir.getFileName().toString())) { + nodeModulesFolders.add(dir); + return FileVisitResult.SKIP_SUBTREE; + } + return FileVisitResult.CONTINUE; } + }); + for (Path nodeModulesFolder : nodeModulesFolders) { + println("Deleting node_modules folder: " + nodeModulesFolder); + FileDeleter.delete(nodeModulesFolder); } } + private static void installDependencies(Path n4jsLibsRootPath) { + CliTools cliTools = new CliTools(); + cliTools.setInheritIO(true); + cliTools.setEnvironmentVariable("NPM_TOKEN", "dummy"); + + cliTools.yarnInstall(n4jsLibsRootPath); + } + private static void compile(Path n4jsLibsRootPath) { CliCompileResult compileResult = new CliCompileResult(); try { CliTools cliTools = new CliTools(); cliTools.setInheritIO(true); - cliTools.setEnvironmentVariable("NPM_TOKEN", "dummy"); - cliTools.yarnInstall(n4jsLibsRootPath); + // we want '--clean' but *not* '--noPersist' + N4jscTestOptions options = COMPILE(false, n4jsLibsRootPath.toFile()).clean(); + Preconditions.checkState(options.isClean()); + Preconditions.checkState(!options.isNoPersist()); - cliTools.callN4jscInprocess(COMPILE(n4jsLibsRootPath.toFile()), false, compileResult); + cliTools.callN4jscInprocess(options, false, compileResult); } catch (CliException e) { if (compileResult.getException() != null) { @@ -111,7 +142,7 @@ private static void compile(Path n4jsLibsRootPath) { // this happens when there are compile errors in the n4js-libs // --> the below code would emit the entire output of n4jsc several times leading to excessive output // (also, the compile errors were already reported by n4jsc to the console), so we exit early in this - // case: + // case to suppress further error reporting: throw new RuntimeException("Errors while compiling n4js-libs"); } else { @@ -134,6 +165,28 @@ private static void compile(Path n4jsLibsRootPath) { } } + private static void deployN4jscJar(Path n4jsRootPath) throws IOException { + final Path n4jscJarPath = n4jsRootPath.resolve(TARGET).resolve(N4JSC_JAR); + final Path n4jscJarInN4jsCliPath = n4jsRootPath.resolve(N4JS_LIBS_SOURCES_PATH) + .resolve(N4JS_CLI.getRawName()).resolve("bin").resolve(N4JSC_JAR); + + if (Files.exists(n4jscJarInN4jsCliPath)) { + println("Deleting old \"" + N4JSC_JAR + "\" at: " + n4jscJarInN4jsCliPath); + Files.delete(n4jscJarInN4jsCliPath); + } + + if (Files.exists(n4jscJarPath)) { + Preconditions.checkState(Files.isRegularFile(n4jscJarPath), + "\"" + N4JSC_JAR + "\" in target folder is not a regular file"); + println("Copying file \"" + N4JSC_JAR + "\" ..."); + println(" from: " + n4jscJarPath.getParent()); + println(" to: " + n4jscJarInN4jsCliPath.getParent()); + FileCopier.copy(n4jscJarPath, n4jscJarInN4jsCliPath); + } else { + println("Skipped (no file \"" + N4JSC_JAR + "\" found in target folder)."); + } + } + /** * Don't use a log4j logger here, because: *
    diff --git a/releng/utils/scripts/publish-n4js-libs.sh b/releng/utils/scripts/publish-n4js-libs.sh index fd60546754..b679286ea0 100755 --- a/releng/utils/scripts/publish-n4js-libs.sh +++ b/releng/utils/scripts/publish-n4js-libs.sh @@ -16,35 +16,35 @@ set -eo pipefail # The first parameter is the destination and must be 'local', 'staging', or 'public' if [ -z "$1" ]; then - echo "The destination ('local', 'staging', or 'public') must be specified as the first parameter." - exit 1 + echo "The destination ('local', 'staging', or 'public') must be specified as the first parameter." + exit 1 else - export DESTINATION=$1 - if [ "$DESTINATION" = "public" ]; then - export NPM_REGISTRY="https://registry.npmjs.org" - elif [ "$DESTINATION" = "staging" ]; then - export NPM_REGISTRY="http://n4ide1-nexus.service.cd-dev.consul/repository/npm-internal" - elif [ "$DESTINATION" = "local" ]; then - export NPM_REGISTRY="http://localhost:4873" - else - echo "Invalid destination: $DESTINATION (must be 'local', 'staging', or 'public')" - exit 1 - fi + export DESTINATION=$1 + if [ "$DESTINATION" = "public" ]; then + export NPM_REGISTRY="https://registry.npmjs.org" + elif [ "$DESTINATION" = "staging" ]; then + export NPM_REGISTRY="http://n4ide1-nexus.service.cd-dev.consul/repository/npm-internal" + elif [ "$DESTINATION" = "local" ]; then + export NPM_REGISTRY="http://localhost:4873" + else + echo "Invalid destination: $DESTINATION (must be 'local', 'staging', or 'public')" + exit 1 + fi fi # The second parameter is the version. if [ -z "$2" ]; then - echo "The version must be specified as the second parameter." - exit 1 + echo "The version must be specified as the second parameter." + exit 1 else - export PUBLISH_VERSION=$2 + export PUBLISH_VERSION=$2 fi # The optional third parameter is the npm dist-tag if [ -z "$3" ]; then - DIST_TAG="latest" + DIST_TAG="latest" else - DIST_TAG=$3 + DIST_TAG=$3 fi @@ -68,53 +68,61 @@ echo "Repository root directory: ${REPO_ROOT_DIR}" echo "Current working directory: $PWD" -echo "==== STEP 1/7: check preconditions" -# check that everything was prepared ('yarn install' in n4js-libs; building of N4JS and n4js-libs) -if [ ! -f "./node_modules/.bin/lerna" ]; then - echo "ERROR: 'yarn install' must have been executed before running this script!" - exit 1 +echo "==== STEP 1/5: check preconditions" +# check that everything was prepared (n4jsc.jar available; 'yarn install' in n4js-libs; building of n4js-libs) +if [ ! -f "../target/n4jsc.jar" ]; then + echo "ERROR: n4jsc.jar must have been built and copied to folder 'target' before running this script!" + exit 1 fi -if [ ! -d "./packages/n4js-runtime/src-gen" ]; then - echo "ERROR: n4js-libs must have been built before running this script!" - exit 1 +if [ ! -f "./node_modules/.bin/n4jsc" ]; then + echo "ERROR: 'yarn install' must have been executed before running this script!" + exit 1 fi -if [ ! -f "../target/n4jsc.jar" ]; then - echo "ERROR: n4jsc.jar must have been built and copied to folder 'target' before running this script!" - exit 1 +if [ ! -f "./packages/n4js-runtime/.n4js.projectstate" ]; then + echo "ERROR: n4js-libs must have been compiled before running this script!" + exit 1 +fi +if [ ! -f "./packages/n4js-cli/bin/n4jsc.jar" ]; then + echo "ERROR: n4jsc.jar missing from n4js-cli/bin!" + exit 1 +fi +if ! cmp -s "../target/n4jsc.jar" "./packages/n4js-cli/bin/n4jsc.jar"; then + echo "ERROR: 'n4js-cli/bin/n4jsc.jar' is different from 'target/n4jsc.jar'!" + exit 1 fi # check NPM_TOKEN if [ "$DESTINATION" != "local" ]; then - if [ -z "$NPM_TOKEN" ]; then - echo "ERROR: publishing to 'public' or 'staging' requires the environment variable NPM_TOKEN to be set but it has not been set!" - exit 1 - fi - echo "Environment variable NPM_TOKEN is set." + if [ -z "$NPM_TOKEN" ]; then + echo "ERROR: publishing to 'public' or 'staging' requires the environment variable NPM_TOKEN to be set but it has not been set!" + exit 1 + fi + echo "Environment variable NPM_TOKEN is set." fi # check consistency of dist-tag and pre-release segment (does not apply when publishing to 'local') if [ "$DESTINATION" != "local" ]; then - if [ "$DIST_TAG" = "latest" ]; then - if [[ "$PUBLISH_VERSION" == *"-"* ]]; then - echo "ERROR: when publishing to dist-tag 'latest', the version must not include a pre-release segment!" - exit 1 - fi - else - if [[ "$PUBLISH_VERSION" != *"-$DIST_TAG"* ]]; then - echo "ERROR: when publishing to dist-tag other than 'latest', the version must include a pre-release segment starting with the dist-tag!" - exit 1 - fi - fi - echo "Dist-tag and pre-release segment are consistent." + if [ "$DIST_TAG" = "latest" ]; then + if [[ "$PUBLISH_VERSION" == *"-"* ]]; then + echo "ERROR: when publishing to dist-tag 'latest', the version must not include a pre-release segment!" + exit 1 + fi + else + if [[ "$PUBLISH_VERSION" != *"-$DIST_TAG"* ]]; then + echo "ERROR: when publishing to dist-tag other than 'latest', the version must include a pre-release segment starting with the dist-tag!" + exit 1 + fi + fi + echo "Dist-tag and pre-release segment are consistent." fi -echo "==== STEP 2/7: prepare environment variables and .npmrc" +echo "==== STEP 2/5: prepare .npmrc and environment variables" # prepare .npmrc for credentials if [ "$DESTINATION" != "local" ]; then - # we made sure above that NPM_TOKEN is set - git checkout HEAD -- './.npmrc' - echo '//registry.npmjs.org/:_authToken=${NPM_TOKEN}' >> .npmrc - echo '//localhost:4873/:_authToken=${NPM_TOKEN}' >> .npmrc - echo '//localhost:4874/:_authToken=${NPM_TOKEN}' >> .npmrc + # we made sure above that NPM_TOKEN is set + git checkout HEAD -- './.npmrc' + echo '//registry.npmjs.org/:_authToken=${NPM_TOKEN}' >> .npmrc + echo '//localhost:4873/:_authToken=${NPM_TOKEN}' >> .npmrc + echo '//localhost:4874/:_authToken=${NPM_TOKEN}' >> .npmrc fi export NPM_CONFIG_GLOBALCONFIG="$REPO_ROOT_DIR/n4js-libs" echo "Publishing using .npmrc configuration to ${NPM_REGISTRY}"; @@ -123,31 +131,12 @@ export PATH=`pwd`/node_modules/.bin:${PATH} export N4_N4JSC_JAR="${REPO_ROOT_DIR}/target/n4jsc.jar" -echo "==== STEP 3/7: copy n4jsc.jar to n4js-cli/bin" -rm -f "packages/n4js-cli/bin/n4jsc.jar" -cp "../target/n4jsc.jar" "packages/n4js-cli/bin" - - -echo "==== STEP 4/7: run tests of n4js-libs" -# run tests defined in the individual packages -lerna run test -# run mangelhaft tests for all packages in the yarn workspace -REPORT_NAME="./build/report.xml" -echo "Run mangelhaft ..." -packages/n4js-mangelhaft-cli/bin/n4js-mangelhaft-cli.js . \ - --xunitReportFile $REPORT_NAME \ - --xunitReportName test-report \ - --xunitReportPackage n4js-libs-report -echo "Done running mangehalft." -echo "Saved test report at: ${REPORT_NAME}" - - # update repository meta-info in package.json of all n4js-libs to point to the commit ID of n4js-libs folder # and to enforce consistent repository meta-info in package.json # NOTE: we use our own property 'gitHeadN4jsLibs' instead of the official 'gitHead' property because: # 1) yarn isn't updating 'gitHead' at all at the moment (see https://github.com/yarnpkg/yarn/issues/2978 ) and # 2) behavior of lerna w.r.t. property 'gitHead' has recently changed and we want to avoid surprises in the future. -echo "==== STEP 5/7: Updating property 'gitHeadN4jsLibs' in package.json of all n4js-libs to new local commit ID ..." +echo "==== STEP 3/5: Updating property 'gitHeadN4jsLibs' in package.json of all n4js-libs to new local commit ID ..." # obtain commit ID of 'n4js' repository (used only for informational purposes): N4JS_COMMIT_ID_LOCAL=`git log -1 --format="%H"` # obtain commit ID of folder 'n4js-libs' in the local git working copy: @@ -160,14 +149,14 @@ SCRIPT="\" lerna exec -- json -I -f package.json -e $SCRIPT -echo "==== STEP 6/7: Appending version information to README.md files ..." +echo "==== STEP 4/5: Appending version information to README.md files ..." # reset README.md files to avoid appending version info multiple times in case script is run more than once find ./packages -name "README.md" -exec git checkout HEAD -- {} \; export VERSION_INFO="\n\n## Version\n\nVersion ${PUBLISH_VERSION} of \${LERNA_PACKAGE_NAME} was built from commit [${N4JS_LIBS_COMMIT_ID_LOCAL}](https://github.com/eclipse/n4js/tree/${N4JS_LIBS_COMMIT_ID_LOCAL}/n4js-libs/packages/\${LERNA_PACKAGE_NAME}).\n\nCompiled with an N4JS compiler built from commit [${N4JS_COMMIT_ID_LOCAL}](https://github.com/eclipse/n4js/tree/${N4JS_COMMIT_ID_LOCAL}).\n\n" lerna exec -- 'printf "'${VERSION_INFO}'" >> README.md' -echo "==== STEP 7/7: Now publishing with version '${PUBLISH_VERSION}' and dist-tag '${DIST_TAG}' to registry ${NPM_REGISTRY}" +echo "==== STEP 5/5: Now publishing with version '${PUBLISH_VERSION}' and dist-tag '${DIST_TAG}' to registry ${NPM_REGISTRY}" lerna publish --loglevel warn --no-git-tag-version --no-push --registry="${NPM_REGISTRY}" --exact --yes --dist-tag="${DIST_TAG}" "${PUBLISH_VERSION}" diff --git a/releng/utils/scripts/start-verdaccio.sh b/releng/utils/scripts/start-verdaccio.sh new file mode 100755 index 0000000000..79b8b425ab --- /dev/null +++ b/releng/utils/scripts/start-verdaccio.sh @@ -0,0 +1,62 @@ +#!/bin/bash +# +# Copyright (c) 2021 NumberFour AG. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# Contributors: +# NumberFour AG - Initial API and implementation +# +set -eo pipefail +# use the following for excessive logging: +#set -x + + +# Set working directory to root folder of repository +# (we assume this script is located in folder /releng/utils/scripts) +cd `dirname $0` +cd ../../.. +REPO_ROOT_DIR=`pwd -P` +VERDACCIO_CONFIG_FILE="${REPO_ROOT_DIR}/releng/org.eclipse.n4js.libs.build/verdaccioConfig/config.yaml" + +# Navigate to n4js-libs folder +cd n4js-libs + + +# check that everything was prepared (n4jsc.jar available; 'yarn install' in n4js-libs; building of n4js-libs) +if [ ! -f "../target/n4jsc.jar" ]; then + echo "ERROR: n4jsc.jar must have been built and copied to folder 'target' before running this script!" + exit 1 +fi +if [ ! -f "./node_modules/.bin/n4jsc" ]; then + echo "ERROR: 'yarn install' must have been executed before running this script!" + exit 1 +fi +if [ ! -f "./packages/n4js-runtime/.n4js.projectstate" ]; then + echo "ERROR: n4js-libs must have been compiled before running this script!" + exit 1 +fi +if [ ! -f "./packages/n4js-cli/bin/n4jsc.jar" ]; then + echo "ERROR: n4jsc.jar missing from n4js-cli/bin!" + exit 1 +fi +if ! cmp -s "../target/n4jsc.jar" "./packages/n4js-cli/bin/n4jsc.jar"; then + echo "ERROR: 'n4js-cli/bin/n4jsc.jar' is different from 'target/n4jsc.jar'!" + exit 1 +fi + + +# start verdaccio +docker rm -f n4js-test-verdaccio || true +docker run -d -it --rm \ + --name n4js-test-verdaccio \ + -p 4873:4873 \ + -v "${VERDACCIO_CONFIG_FILE}:/verdaccio/conf/config.yaml" \ + "verdaccio/verdaccio@sha256:818b76e40631cf888c288d1cfe9579a6e9e816f2e1e5f87fe1471eb3f36dc168" # verdaccio/verdaccio:5.1.2 + + +# populate verdaccio: publish n4js-libs into verdaccio after starting it +# (use dist-tag "latest" to make sure tests will install this version by default) +../releng/utils/scripts/publish-n4js-libs.sh local 0.0.1 latest diff --git a/releng/utils/scripts/stop-verdaccio.sh b/releng/utils/scripts/stop-verdaccio.sh new file mode 100755 index 0000000000..5760dc73b4 --- /dev/null +++ b/releng/utils/scripts/stop-verdaccio.sh @@ -0,0 +1,25 @@ +#!/bin/bash +# +# Copyright (c) 2021 NumberFour AG. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# Contributors: +# NumberFour AG - Initial API and implementation +# +set -eo pipefail +# use the following for excessive logging: +#set -x + + +# Set working directory to root folder of repository +# (we assume this script is located in folder /releng/utils/scripts) +cd `dirname $0` +cd ../../.. +REPO_ROOT_DIR=`pwd -P` + + +# stop verdaccio +docker rm -f n4js-test-verdaccio || true diff --git a/testhelpers/org.eclipse.n4js.cli.tests.helper/src/org/eclipse/n4js/cli/helper/AbstractCliJarTest.java b/testhelpers/org.eclipse.n4js.cli.tests.helper/src/org/eclipse/n4js/cli/helper/AbstractCliJarTest.java index 1db9ecb166..761224ac73 100644 --- a/testhelpers/org.eclipse.n4js.cli.tests.helper/src/org/eclipse/n4js/cli/helper/AbstractCliJarTest.java +++ b/testhelpers/org.eclipse.n4js.cli.tests.helper/src/org/eclipse/n4js/cli/helper/AbstractCliJarTest.java @@ -16,6 +16,7 @@ import java.nio.file.Path; import java.nio.file.Paths; +import org.eclipse.n4js.N4JSGlobals; import org.eclipse.n4js.utils.io.FileDeleter; import org.eclipse.n4js.workspace.utils.N4JSPackageName; import org.junit.Before; @@ -31,7 +32,7 @@ */ public abstract class AbstractCliJarTest extends AbstractCliCompileTest { /** Standard target folder-name, the base of maven-compile results. */ - static public final String TARGET = "target"; + static public final String TARGET = N4JSGlobals.TARGET; /** Standard target folder (name+"/"), the base of maven-compile results. */ static public final String TARGET_FOLDER = TARGET + "/"; /** Sub folder in target folder. */ diff --git a/testhelpers/org.eclipse.n4js.cli.tests.helper/src/org/eclipse/n4js/cli/helper/GeneratedJSFilesCounter.java b/testhelpers/org.eclipse.n4js.cli.tests.helper/src/org/eclipse/n4js/cli/helper/GeneratedJSFilesCounter.java index 9e6f8b28cb..b3715aea7b 100644 --- a/testhelpers/org.eclipse.n4js.cli.tests.helper/src/org/eclipse/n4js/cli/helper/GeneratedJSFilesCounter.java +++ b/testhelpers/org.eclipse.n4js.cli.tests.helper/src/org/eclipse/n4js/cli/helper/GeneratedJSFilesCounter.java @@ -126,11 +126,11 @@ static private boolean pathContainsSrcGen(Path path) { */ static private File findN4jsLibRoot() { File base = new File(new File("").getAbsolutePath()); - File n4jsLibrariesRoot = new File(base, N4JSGlobals.N4JS_LIBS_SOURCES_PATH); + File n4jsLibrariesRoot = base.toPath().resolve(N4JSGlobals.N4JS_LIBS_SOURCES_PATH).toFile(); while (base.getParentFile() != null && !n4jsLibrariesRoot.isDirectory()) { base = base.getParentFile(); - n4jsLibrariesRoot = new File(base, N4JSGlobals.N4JS_LIBS_SOURCES_PATH); + n4jsLibrariesRoot = base.toPath().resolve(N4JSGlobals.N4JS_LIBS_SOURCES_PATH).toFile(); } return n4jsLibrariesRoot; } diff --git a/tests/org.eclipse.n4js.cli.tests/.gitignore b/tests/org.eclipse.n4js.cli.tests/.gitignore deleted file mode 100644 index 21ce665739..0000000000 --- a/tests/org.eclipse.n4js.cli.tests/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -report.csv -performance-report.csv diff --git a/tests/org.eclipse.n4js.cli.tests/.settings/org.eclipse.xtend.core.Xtend.prefs b/tests/org.eclipse.n4js.cli.tests/.settings/org.eclipse.xtend.core.Xtend.prefs deleted file mode 100644 index 341a9329c3..0000000000 --- a/tests/org.eclipse.n4js.cli.tests/.settings/org.eclipse.xtend.core.Xtend.prefs +++ /dev/null @@ -1,39 +0,0 @@ -.version=1 -autobuilding=true -blank.line.around.expressions=0 -blank.lines.after.imports=1 -blank.lines.after.last.member=0 -blank.lines.after.packagedecl=1 -blank.lines.before.first.member=0 -blank.lines.between.classes=1 -blank.lines.between.enum.literals=0 -blank.lines.between.fields=0 -blank.lines.between.fields.and.methods=1 -blank.lines.between.imports=0 -blank.lines.between.methods=1 -braces.in.new.line=false -eclipse.preferences.version=1 -indentation=\t -indentation.length=4 -is_project_specific=true -line.separator=\n -line.width.max=120 -newline.after.class.annotations=false -newline.after.constructor.annotations=false -newline.after.field.annotations=false -newline.after.method.annotations=false -newline.after.parameter.annotations=false -org.eclipse.xtend.core.validation.IssueCodes.java_doc_linking=warning -org.eclipse.xtend.core.validation.IssueCodes.unnecessary_modifier=ignore -org.eclipse.xtend.ide.default.eclipse_profile=_N4JS -org.eclipse.xtext.xbase.validation.IssueCodes.equals_with_null=warning -outlet.DEFAULT_OUTPUT.cleanDirectory=false -outlet.DEFAULT_OUTPUT.cleanupDerived=true -outlet.DEFAULT_OUTPUT.createDirectory=true -outlet.DEFAULT_OUTPUT.derived=true -outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true -outlet.DEFAULT_OUTPUT.installDslAsPrimarySource=false -outlet.DEFAULT_OUTPUT.override=true -preserve.blank.lines=1 -preserve.new.lines=true -whitespace.between.keyword.and.parenthesis=true diff --git a/tests/org.eclipse.n4js.cli.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.n4js.cli.tests/META-INF/MANIFEST.MF deleted file mode 100644 index 2bfce0556c..0000000000 --- a/tests/org.eclipse.n4js.cli.tests/META-INF/MANIFEST.MF +++ /dev/null @@ -1,13 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: org.eclipse.n4js.cli.tests -Bundle-Vendor: org.eclipse.n4js -Bundle-Version: 0.0.1.qualifier -Bundle-SymbolicName: org.eclipse.n4js.cli.tests; singleton:=true -Fragment-Host: org.eclipse.n4js.cli -Require-Bundle: org.eclipse.core.resources, - org.eclipse.xtext.testing, - org.eclipse.n4js.cli.tests.helper, - org.junit -Bundle-RequiredExecutionEnvironment: JavaSE-11 -Automatic-Module-Name: org.eclipse.n4js.cli.tests diff --git a/tests/org.eclipse.n4js.cli.tests/build.properties b/tests/org.eclipse.n4js.cli.tests/build.properties deleted file mode 100644 index a2369e078f..0000000000 --- a/tests/org.eclipse.n4js.cli.tests/build.properties +++ /dev/null @@ -1,5 +0,0 @@ -source.. = src/,\ - xtend-gen/ -bin.includes = META-INF/,\ - .,\ - about.html diff --git a/tests/org.eclipse.n4js.ide.tests.helper.tests/pom.xml b/tests/org.eclipse.n4js.ide.tests.helper.tests/pom.xml index a68b64ad67..ba9cb456ff 100644 --- a/tests/org.eclipse.n4js.ide.tests.helper.tests/pom.xml +++ b/tests/org.eclipse.n4js.ide.tests.helper.tests/pom.xml @@ -43,29 +43,6 @@ Contributors: ${jdk-version} - - org.apache.maven.plugins - maven-verifier-plugin - ${maven-verifier-plugin.version} - - verifier/verifications-test.xml - - - - main - verify - - verify - - - - ${NODEJS_PATH} - ${org.eclipse.n4js.defaultNodePath} - - - - - org.apache.maven.plugins diff --git a/tests/org.eclipse.n4js.ide.tests.helper.tests/verifier/verifications-test.xml b/tests/org.eclipse.n4js.ide.tests.helper.tests/verifier/verifications-test.xml deleted file mode 100644 index bcc74216a0..0000000000 --- a/tests/org.eclipse.n4js.ide.tests.helper.tests/verifier/verifications-test.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - diff --git a/tests/org.eclipse.n4js.ide.tests.jar/.classpath b/tests/org.eclipse.n4js.ide.tests.jar/.classpath deleted file mode 100644 index 5b1ec0d4a2..0000000000 --- a/tests/org.eclipse.n4js.ide.tests.jar/.classpath +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/tests/org.eclipse.n4js.ide.tests.jar/.project b/tests/org.eclipse.n4js.ide.tests.jar/.project deleted file mode 100644 index bc2ffc7406..0000000000 --- a/tests/org.eclipse.n4js.ide.tests.jar/.project +++ /dev/null @@ -1,34 +0,0 @@ - - - org.eclipse.n4js.ide.tests.jar - - - - - - org.eclipse.xtext.ui.shared.xtextBuilder - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.jdt.core.javanature - org.eclipse.pde.PluginNature - org.eclipse.xtext.ui.shared.xtextNature - - diff --git a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.core.resources.prefs b/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index db326978a7..0000000000 --- a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/main/resources=UTF-8 -encoding/=UTF-8 diff --git a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.core.runtime.prefs b/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.core.runtime.prefs deleted file mode 100644 index 5a0ad22d2a..0000000000 --- a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.core.runtime.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -line.separator=\n diff --git a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.emf.ecore.xcore.Xcore.prefs b/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.emf.ecore.xcore.Xcore.prefs deleted file mode 100644 index ec02abd91d..0000000000 --- a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.emf.ecore.xcore.Xcore.prefs +++ /dev/null @@ -1,10 +0,0 @@ -autobuilding=true -eclipse.preferences.version=1 -is_project_specific=true -outlet.DEFAULT_OUTPUT.cleanDirectory=true -outlet.DEFAULT_OUTPUT.cleanupDerived=true -outlet.DEFAULT_OUTPUT.createDirectory=true -outlet.DEFAULT_OUTPUT.derived=true -outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true -outlet.DEFAULT_OUTPUT.installDslAsPrimarySource=false -outlet.DEFAULT_OUTPUT.override=true diff --git a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 8236167cdc..0000000000 --- a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,420 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.builder.cleanOutputFolder=clean -org.eclipse.jdt.core.builder.duplicateResourceTask=warning -org.eclipse.jdt.core.builder.invalidClasspath=abort -org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore -org.eclipse.jdt.core.builder.resourceCopyExclusionFilter= -org.eclipse.jdt.core.circularClasspath=error -org.eclipse.jdt.core.classpath.exclusionPatterns=enabled -org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled -org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource=error -org.eclipse.jdt.core.codeComplete.argumentPrefixes= -org.eclipse.jdt.core.codeComplete.argumentSuffixes= -org.eclipse.jdt.core.codeComplete.fieldPrefixes= -org.eclipse.jdt.core.codeComplete.fieldSuffixes= -org.eclipse.jdt.core.codeComplete.localPrefixes= -org.eclipse.jdt.core.codeComplete.localSuffixes= -org.eclipse.jdt.core.codeComplete.staticFieldPrefixes= -org.eclipse.jdt.core.codeComplete.staticFieldSuffixes= -org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes= -org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes= -org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=enabled -org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore -org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull -org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=javax.annotation.ParametersAreNonnullByDefault -org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable -org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate -org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=11 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.doc.comment.support=enabled -org.eclipse.jdt.core.compiler.maxProblemPerUnit=100 -org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.autoboxing=ignore -org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning -org.eclipse.jdt.core.compiler.problem.deadCode=warning -org.eclipse.jdt.core.compiler.problem.deprecation=warning -org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=enabled -org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled -org.eclipse.jdt.core.compiler.problem.discouragedReference=warning -org.eclipse.jdt.core.compiler.problem.emptyStatement=warning -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore -org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning -org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled -org.eclipse.jdt.core.compiler.problem.fieldHiding=warning -org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning -org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning -org.eclipse.jdt.core.compiler.problem.forbiddenReference=error -org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning -org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=enabled -org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning -org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning -org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning -org.eclipse.jdt.core.compiler.problem.invalidJavadoc=error -org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled -org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=disabled -org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled -org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private -org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning -org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning -org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore -org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning -org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled -org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning -org.eclipse.jdt.core.compiler.problem.missingJavadocComments=warning -org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled -org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=protected -org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=all_standard_tags -org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore -org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled -org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled -org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public -org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning -org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled -org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore -org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning -org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning -org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning -org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore -org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning -org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning -org.eclipse.jdt.core.compiler.problem.nullReference=error -org.eclipse.jdt.core.compiler.problem.nullSpecViolation=warning -org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning -org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning -org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore -org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning -org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning -org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=warning -org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning -org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning -org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning -org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning -org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning -org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore -org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore -org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled -org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning -org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=enabled -org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled -org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=enabled -org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore -org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning -org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled -org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning -org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning -org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning -org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning -org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore -org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning -org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled -org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled -org.eclipse.jdt.core.compiler.problem.unusedImport=warning -org.eclipse.jdt.core.compiler.problem.unusedLabel=warning -org.eclipse.jdt.core.compiler.problem.unusedLocal=warning -org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning -org.eclipse.jdt.core.compiler.problem.unusedParameter=warning -org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled -org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled -org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled -org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning -org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning -org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning -org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning -org.eclipse.jdt.core.compiler.source=11 -org.eclipse.jdt.core.formatter.align_type_members_on_columns=false -org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 -org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 -org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 -org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 -org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 -org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 -org.eclipse.jdt.core.formatter.alignment_for_assignment=0 -org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 -org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 -org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 -org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 -org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 -org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 -org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 -org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 -org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 -org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80 -org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 -org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 -org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 -org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 -org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 -org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 -org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16 -org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 -org.eclipse.jdt.core.formatter.blank_lines_after_package=1 -org.eclipse.jdt.core.formatter.blank_lines_before_field=0 -org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 -org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 -org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 -org.eclipse.jdt.core.formatter.blank_lines_before_method=1 -org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 -org.eclipse.jdt.core.formatter.blank_lines_before_package=0 -org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 -org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 -org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line -org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line -org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false -org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false -org.eclipse.jdt.core.formatter.comment.format_block_comments=true -org.eclipse.jdt.core.formatter.comment.format_header=false -org.eclipse.jdt.core.formatter.comment.format_html=true -org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true -org.eclipse.jdt.core.formatter.comment.format_line_comments=true -org.eclipse.jdt.core.formatter.comment.format_source_code=true -org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true -org.eclipse.jdt.core.formatter.comment.indent_root_tags=true -org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert -org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert -org.eclipse.jdt.core.formatter.comment.line_length=120 -org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true -org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true -org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false -org.eclipse.jdt.core.formatter.compact_else_if=true -org.eclipse.jdt.core.formatter.continuation_indentation=2 -org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 -org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off -org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on -org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false -org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true -org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true -org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true -org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true -org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true -org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true -org.eclipse.jdt.core.formatter.indent_empty_lines=false -org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true -org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true -org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true -org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false -org.eclipse.jdt.core.formatter.indentation.size=4 -org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert -org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert -org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert -org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert -org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert -org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert -org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert -org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert -org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert -org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert -org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert -org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert -org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert -org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert -org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert -org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert -org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert -org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert -org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert -org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert -org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert -org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert -org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert -org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert -org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert -org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert -org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert -org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert -org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert -org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert -org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert -org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert -org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert -org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert -org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert -org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert -org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert -org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert -org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert -org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert -org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert -org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert -org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert -org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert -org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert -org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert -org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert -org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert -org.eclipse.jdt.core.formatter.join_lines_in_comments=true -org.eclipse.jdt.core.formatter.join_wrapped_lines=false -org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false -org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false -org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false -org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false -org.eclipse.jdt.core.formatter.lineSplit=120 -org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false -org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false -org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 -org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 -org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true -org.eclipse.jdt.core.formatter.tabulation.char=tab -org.eclipse.jdt.core.formatter.tabulation.size=4 -org.eclipse.jdt.core.formatter.use_on_off_tags=true -org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false -org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true -org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true -org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true -org.eclipse.jdt.core.incompatibleJDKLevel=warning -org.eclipse.jdt.core.incompleteClasspath=error diff --git a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.launching.prefs b/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.launching.prefs deleted file mode 100644 index d211d32633..0000000000 --- a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.launching.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.launching.PREF_STRICTLY_COMPATIBLE_JRE_NOT_AVAILABLE=warning diff --git a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.ui.prefs b/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.ui.prefs deleted file mode 100644 index 08bb1d6617..0000000000 --- a/tests/org.eclipse.n4js.ide.tests.jar/.settings/org.eclipse.jdt.ui.prefs +++ /dev/null @@ -1,131 +0,0 @@ -cleanup.add_default_serial_version_id=true -cleanup.add_generated_serial_version_id=false -cleanup.add_missing_annotations=true -cleanup.add_missing_deprecated_annotations=true -cleanup.add_missing_methods=false -cleanup.add_missing_nls_tags=false -cleanup.add_missing_override_annotations=true -cleanup.add_missing_override_annotations_interface_methods=true -cleanup.add_serial_version_id=false -cleanup.always_use_blocks=true -cleanup.always_use_parentheses_in_expressions=false -cleanup.always_use_this_for_non_static_field_access=false -cleanup.always_use_this_for_non_static_method_access=false -cleanup.convert_functional_interfaces=false -cleanup.convert_to_enhanced_for_loop=false -cleanup.correct_indentation=true -cleanup.format_source_code=false -cleanup.format_source_code_changes_only=false -cleanup.insert_inferred_type_arguments=false -cleanup.make_local_variable_final=true -cleanup.make_parameters_final=false -cleanup.make_private_fields_final=true -cleanup.make_type_abstract_if_missing_method=false -cleanup.make_variable_declarations_final=false -cleanup.never_use_blocks=false -cleanup.never_use_parentheses_in_expressions=true -cleanup.organize_imports=true -cleanup.qualify_static_field_accesses_with_declaring_class=false -cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true -cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true -cleanup.qualify_static_member_accesses_with_declaring_class=true -cleanup.qualify_static_method_accesses_with_declaring_class=false -cleanup.remove_private_constructors=true -cleanup.remove_redundant_type_arguments=true -cleanup.remove_trailing_whitespaces=true -cleanup.remove_trailing_whitespaces_all=false -cleanup.remove_trailing_whitespaces_ignore_empty=true -cleanup.remove_unnecessary_casts=true -cleanup.remove_unnecessary_nls_tags=true -cleanup.remove_unused_imports=true -cleanup.remove_unused_local_variables=false -cleanup.remove_unused_private_fields=true -cleanup.remove_unused_private_members=false -cleanup.remove_unused_private_methods=true -cleanup.remove_unused_private_types=true -cleanup.sort_members=false -cleanup.sort_members_all=false -cleanup.use_anonymous_class_creation=false -cleanup.use_blocks=false -cleanup.use_blocks_only_for_return_and_throw=false -cleanup.use_lambda=true -cleanup.use_parentheses_in_expressions=false -cleanup.use_this_for_non_static_field_access=false -cleanup.use_this_for_non_static_field_access_only_if_necessary=true -cleanup.use_this_for_non_static_method_access=false -cleanup.use_this_for_non_static_method_access_only_if_necessary=true -cleanup.use_type_arguments=false -cleanup_profile=_N4JS -cleanup_settings_version=2 -eclipse.preferences.version=1 -editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true -formatter_profile=_N4JS -formatter_settings_version=12 -org.eclipse.jdt.ui.exception.name=e -org.eclipse.jdt.ui.gettersetter.use.is=true -org.eclipse.jdt.ui.ignorelowercasenames=true -org.eclipse.jdt.ui.importorder=java;javax;org;com; -org.eclipse.jdt.ui.javadoc=true -org.eclipse.jdt.ui.keywordthis=false -org.eclipse.jdt.ui.ondemandthreshold=99 -org.eclipse.jdt.ui.overrideannotation=true -org.eclipse.jdt.ui.staticondemandthreshold=99 -org.eclipse.jdt.ui.text.custom_code_templates=