diff options
author | Juergen Haug | 2017-09-05 08:23:18 +0000 |
---|---|---|
committer | Juergen Haug | 2017-09-05 10:24:50 +0000 |
commit | 344dfbbb28dd8a701ef757aa5ef32b09cbcf911d (patch) | |
tree | f03f01e2f2c29d42ee70ac9e94d4a84fd9ef4a4b /tests | |
parent | 0839144c86827b295384218cf63d086ef37bbc8a (diff) | |
download | org.eclipse.etrice-344dfbbb28dd8a701ef757aa5ef32b09cbcf911d.tar.gz org.eclipse.etrice-344dfbbb28dd8a701ef757aa5ef32b09cbcf911d.tar.xz org.eclipse.etrice-344dfbbb28dd8a701ef757aa5ef32b09cbcf911d.zip |
[ui.launch] launch config generated all dependencies within project
Change-Id: I4a766fe175f8f446edaad96507b292910ee2be5e
Diffstat (limited to 'tests')
14 files changed, 206 insertions, 0 deletions
diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/.classpath b/tests/org.eclipse.etrice.ui.behavior.tests/.classpath index 1fa3e6803..13a6c6528 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/.classpath +++ b/tests/org.eclipse.etrice.ui.behavior.tests/.classpath @@ -3,5 +3,6 @@ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> <classpathentry kind="src" path="src"/> + <classpathentry kind="src" path="xtend-gen"/> <classpathentry kind="output" path="bin"/> </classpath> diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF index b82c1517a..a94874042 100644 --- a/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.etrice.ui.behavior.tests/META-INF/MANIFEST.MF @@ -12,6 +12,7 @@ Require-Bundle: org.eclipse.etrice.core.fsm;bundle-version="1.1.1", org.eclipse.etrice.ui.common;bundle-version="1.1.1", org.eclipse.etrice.ui.common.base;bundle-version="1.1.1", org.eclipse.etrice.ui.tests.base;bundle-version="1.1.1", + org.eclipse.etrice.generator.launch;bundle-version="1.1.1", org.eclipse.ui, org.eclipse.core.runtime, org.junit;bundle-version="4.8.1", diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/.project b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/.project new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/.project diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Dep.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Dep.room new file mode 100644 index 000000000..87a69b85c --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Dep.room @@ -0,0 +1,15 @@ +RoomModel Dep { + import model "../project2/ModelDep.room" + import model "platform:/resource/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/ModelDep2.room" + import model "platform:/resource/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Dep2.room" + + LogicalSystem logicalSystem { + SubSystemRef subSys : SubSystem + } + + SubSystemClass SubSystem { + ActorRef ref1 : ModelDep.ModelDep + ActorRef ref2 : ModelDep2.ModelDep2 + ActorRef ref3 : Dep2.Dep2 + } +}
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Dep2.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Dep2.room new file mode 100644 index 000000000..ad5ab0d9e --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Dep2.room @@ -0,0 +1,3 @@ +RoomModel Dep2 { + ActorClass Dep2 {} +}
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/NotMapped.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/NotMapped.room new file mode 100644 index 000000000..01650bec9 --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/NotMapped.room @@ -0,0 +1,9 @@ +RoomModel NotMapped { + import model "NotMappedDep.room" + + ActorClass NotMapped { + Structure { + ActorRef ref0 : NotMappedDep.NotMappedDep + } + } +}
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/NotMappedDep.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/NotMappedDep.room new file mode 100644 index 000000000..32c02693b --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/NotMappedDep.room @@ -0,0 +1,6 @@ +RoomModel NotMappedDep { + + ActorClass NotMappedDep { + + } +}
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Physical.etphys b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Physical.etphys new file mode 100644 index 000000000..28106efdb --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/Physical.etphys @@ -0,0 +1,25 @@ +PhysicalModel physicalSystem{ + + PhysicalSystem PhysSys1 { + NodeRef nodeRef1 : NodeClass1 + } + + NodeClass NodeClass1 { + runtime = RuntimeClass1 + priomin = -10 + priomax = 10 + + DefaultThread PhysicalThread1 { + execmode = blocked + prio = 0 + stacksize = 1024 + msgblocksize = 32 + msgpoolsize = 10 + } + } + + RuntimeClass RuntimeClass1 { + model = multiThreaded + } + +}
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/System.etmap b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/System.etmap new file mode 100644 index 000000000..b27e677a7 --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project1/System.etmap @@ -0,0 +1,8 @@ +MappingModel SystemMapping { + import model "Dep.room" + import model "Physical.etphys" + + Mapping Dep.logicalSystem -> physicalSystem.PhysSys1 { + SubSystemMapping subSys -> nodeRef1 {} + } +}
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/.project b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/.project new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/.project diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/ModelDep.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/ModelDep.room new file mode 100644 index 000000000..2db24bfdd --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/ModelDep.room @@ -0,0 +1,5 @@ +RoomModel ModelDep { + + ActorClass ModelDep { + } +}
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/ModelDep2.room b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/ModelDep2.room new file mode 100644 index 000000000..e2f453ff9 --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/models/generatorLaunchHelper/project2/ModelDep2.room @@ -0,0 +1,5 @@ +RoomModel ModelDep2 { + + ActorClass ModelDep2 { + } +}
\ No newline at end of file diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/launch/TestGeneratorLaunchHelper.xtend b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/launch/TestGeneratorLaunchHelper.xtend new file mode 100644 index 000000000..9411f50ca --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/src/org/eclipse/etrice/ui/launch/TestGeneratorLaunchHelper.xtend @@ -0,0 +1,52 @@ +/******************************************************************************* + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * 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: + * Juergen Haug (initial contribution) + * + *******************************************************************************/ + +package org.eclipse.etrice.ui.launch + +import java.nio.file.Paths +import org.junit.Test + +import static org.eclipse.etrice.generator.launch.GeneratorLaunchHelper.* +import static org.junit.Assert.* + +class TestGeneratorLaunchHelper { + + private def get(Iterable<String> list) { + getAllDependenciesWithinProjects(list).toList + } + + @Test + def void notExisting() { + #[] => [models|assertEquals(models, get(models))] +// #[''] => [models|assertEquals(models, get(models))] + #['1', '.0ß+/§`}]"°'] => [models|assertEquals(models, get(models))] + #['1.room', '2.etphys', '3.etmap', '4.etconfig', '5.unknown'] => [models|assertEquals(models, get(models))] + } + + @Test + def void project() { + val (String) => String toAbsolutePath = [file| Paths.get('models/generatorLaunchHelper', file).toAbsolutePath.toString] + + assertEquals( + #[ + 'project1/System.etmap', + 'project1/NotMapped.room', + 'project1/Physical.etphys', + 'project1/Dep.room' + ].map[toAbsolutePath.apply(it)], get( + #[ + 'project1/System.etmap', + 'project1/NotMapped.room' + ].map[toAbsolutePath.apply(it)])) + + } +} diff --git a/tests/org.eclipse.etrice.ui.behavior.tests/xtend-gen/org/eclipse/etrice/ui/launch/TestGeneratorLaunchHelper.java b/tests/org.eclipse.etrice.ui.behavior.tests/xtend-gen/org/eclipse/etrice/ui/launch/TestGeneratorLaunchHelper.java new file mode 100644 index 000000000..0a52f4766 --- /dev/null +++ b/tests/org.eclipse.etrice.ui.behavior.tests/xtend-gen/org/eclipse/etrice/ui/launch/TestGeneratorLaunchHelper.java @@ -0,0 +1,76 @@ +/** + * Copyright (c) 2011 protos software gmbh (http://www.protos.de). + * 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: + * Juergen Haug (initial contribution) + */ +package org.eclipse.etrice.ui.launch; + +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Collection; +import java.util.Collections; +import java.util.List; +import org.eclipse.etrice.generator.launch.GeneratorLaunchHelper; +import org.eclipse.xtext.xbase.lib.CollectionLiterals; +import org.eclipse.xtext.xbase.lib.Functions.Function1; +import org.eclipse.xtext.xbase.lib.IterableExtensions; +import org.eclipse.xtext.xbase.lib.ListExtensions; +import org.eclipse.xtext.xbase.lib.ObjectExtensions; +import org.eclipse.xtext.xbase.lib.Procedures.Procedure1; +import org.junit.Assert; +import org.junit.Test; + +@SuppressWarnings("all") +public class TestGeneratorLaunchHelper { + private List<String> get(final Iterable<String> list) { + Collection<String> _allDependenciesWithinProjects = GeneratorLaunchHelper.getAllDependenciesWithinProjects(list); + return IterableExtensions.<String>toList(_allDependenciesWithinProjects); + } + + @Test + public void notExisting() { + final Procedure1<List<String>> _function = (List<String> models) -> { + List<String> _get = this.get(models); + Assert.assertEquals(models, _get); + }; + ObjectExtensions.<List<String>>operator_doubleArrow( + Collections.<String>unmodifiableList(CollectionLiterals.<String>newArrayList()), _function); + final Procedure1<List<String>> _function_1 = (List<String> models) -> { + List<String> _get = this.get(models); + Assert.assertEquals(models, _get); + }; + ObjectExtensions.<List<String>>operator_doubleArrow( + Collections.<String>unmodifiableList(CollectionLiterals.<String>newArrayList("1", ".0ß+/§`}]\"°")), _function_1); + final Procedure1<List<String>> _function_2 = (List<String> models) -> { + List<String> _get = this.get(models); + Assert.assertEquals(models, _get); + }; + ObjectExtensions.<List<String>>operator_doubleArrow( + Collections.<String>unmodifiableList(CollectionLiterals.<String>newArrayList("1.room", "2.etphys", "3.etmap", "4.etconfig", "5.unknown")), _function_2); + } + + @Test + public void project() { + final Function1<String, String> _function = (String file) -> { + Path _get = Paths.get("models/generatorLaunchHelper", file); + Path _absolutePath = _get.toAbsolutePath(); + return _absolutePath.toString(); + }; + final Function1<? super String, ? extends String> toAbsolutePath = _function; + final Function1<String, String> _function_1 = (String it) -> { + return toAbsolutePath.apply(it); + }; + List<String> _map = ListExtensions.<String, String>map(Collections.<String>unmodifiableList(CollectionLiterals.<String>newArrayList("project1/System.etmap", "project1/NotMapped.room", "project1/Physical.etphys", "project1/Dep.room")), _function_1); + final Function1<String, String> _function_2 = (String it) -> { + return toAbsolutePath.apply(it); + }; + List<String> _map_1 = ListExtensions.<String, String>map(Collections.<String>unmodifiableList(CollectionLiterals.<String>newArrayList("project1/System.etmap", "project1/NotMapped.room")), _function_2); + List<String> _get = this.get(_map_1); + Assert.assertEquals(_map, _get); + } +} |