test myList

This commit is contained in:
sebastian 2017-05-03 10:54:39 +02:00
parent 3ad2f7d6ce
commit 95aa8d79e3
4 changed files with 316 additions and 126 deletions

268
.idea/workspace.xml generated
View File

@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="5cf612a7-261d-49e6-bf7a-db4b05e41151" name="Default" comment="" />
<list default="true" id="5cf612a7-261d-49e6-bf7a-db4b05e41151" name="Default" comment="">
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/test/strucTypes5/SolveTest.jav" afterPath="$PROJECT_DIR$/test/strucTypes5/SolveTest.jav" />
</list>
<ignored path="$PROJECT_DIR$/bin/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="TRACKING_ENABLED" value="true" />
@ -16,11 +18,11 @@
<component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file leaf-file-name="SolveTest.java" pinned="false" current-in-tab="true">
<file leaf-file-name="SolveTest.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-259">
<caret line="133" column="0" lean-forward="true" selection-start-line="133" selection-start-column="0" selection-end-line="133" selection-end-column="0" />
<state relative-caret-position="1300">
<caret line="133" column="0" lean-forward="false" selection-start-line="133" selection-start-column="0" selection-end-line="133" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
@ -28,6 +30,36 @@
</provider>
</entry>
</file>
<file leaf-file-name="SolveTestMyList.java" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTestMyList.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="110">
<caret line="104" column="30" lean-forward="false" selection-start-line="104" selection-start-column="30" selection-end-line="104" selection-end-column="30" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="SolveTest2.jav" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest2.jav">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="17" column="11" lean-forward="false" selection-start-line="17" selection-start-column="11" selection-end-line="17" selection-end-column="11" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="SolveTest.jav" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest.jav">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="60">
<caret line="4" column="42" lean-forward="false" selection-start-line="4" selection-start-column="42" selection-end-line="4" selection-end-column="42" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="TypeVarRefType.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarRefType.java">
<provider selected="true" editor-type-id="text-editor">
@ -38,16 +70,6 @@
</provider>
</entry>
</file>
<file leaf-file-name="Class2String.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Class2String.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-1605">
<caret line="17" column="13" lean-forward="false" selection-start-line="17" selection-start-column="13" selection-end-line="17" selection-end-column="13" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="Help.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/ausgabe/Help.java">
<provider selected="true" editor-type-id="text-editor">
@ -62,7 +84,7 @@
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Ruler.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="210">
<caret line="56" column="37" lean-forward="true" selection-start-line="56" selection-start-column="37" selection-end-line="56" selection-end-column="37" />
<caret line="56" column="37" lean-forward="false" selection-start-line="56" selection-start-column="37" selection-end-line="56" selection-end-column="37" />
<folding>
<element signature="imports" expanded="true" />
</folding>
@ -119,11 +141,6 @@
</component>
<component name="FindInProjectRecents">
<findStrings>
<find>neue Res</find>
<find>construct</find>
<find>***</find>
<find>!!!</find>
<find>Neue</find>
<find>alte</find>
<find>r_20</find>
<find>20</find>
@ -149,6 +166,11 @@
<find>Re</find>
<find>adapt2</find>
<find>erase</find>
<find>MyList</find>
<find>List</find>
<find>MyInteger</find>
<find>Gener</find>
<find>Generierte</find>
</findStrings>
</component>
<component name="Git.Settings">
@ -162,8 +184,6 @@
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/test/strucTypes5/NewOperatorTest.jav" />
<option value="$PROJECT_DIR$/test/strucTypes5/ConstructTest.java" />
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/InterfaceTemplates/MethodInterface.java" />
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes4/syntaxtree/MethodInterface.java" />
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/ResultTuple.java" />
@ -195,7 +215,6 @@
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintSubstitution.java" />
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/MappingAltNeu.java" />
<option value="$PROJECT_DIR$/test/strucTypes5/NewOperatorTest2.java" />
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest.jav" />
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarFactory.java" />
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/constraints/ConstraintInterface.java" />
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/typeVars/TypeVarType.java" />
@ -213,6 +232,9 @@
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Ruler.java" />
<option value="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Rules.java" />
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest.java" />
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest.jav" />
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTest2.jav" />
<option value="$PROJECT_DIR$/test/strucTypes5/SolveTestMyList.java" />
</list>
</option>
</component>
@ -533,7 +555,7 @@
<recent name="$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5" />
</key>
</component>
<component name="RunManager" selected="JUnit.SolveTest.run">
<component name="RunManager" selected="JUnit.SolveTestMyList.run">
<configuration default="false" name="NewOperatorTest2.run" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
@ -560,32 +582,6 @@
<patterns />
<method />
</configuration>
<configuration default="false" name="NewOperatorTest3.run" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="strucTypes5.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="JavaCompilerCore" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PACKAGE_NAME" value="strucTypes5" />
<option name="MAIN_CLASS_NAME" value="strucTypes5.NewOperatorTest3" />
<option name="METHOD_NAME" value="run" />
<option name="TEST_OBJECT" value="method" />
<option name="VM_PARAMETERS" value="-ea" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<envs />
<patterns />
<method />
</configuration>
<configuration default="false" name="NewOperatorTest3" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
@ -664,6 +660,32 @@
<patterns />
<method />
</configuration>
<configuration default="false" name="SolveTestMyList.run" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
<pattern>
<option name="PATTERN" value="strucTypes5.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<module name="JavaCompilerCore" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PACKAGE_NAME" value="strucTypes5" />
<option name="MAIN_CLASS_NAME" value="strucTypes5.SolveTestMyList" />
<option name="METHOD_NAME" value="run" />
<option name="TEST_OBJECT" value="method" />
<option name="VM_PARAMETERS" value="-ea" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<envs />
<patterns />
<method />
</configuration>
<configuration default="true" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" factoryName="Plugin">
<module name="" />
<option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
@ -1046,18 +1068,18 @@
</configuration>
<list size="5">
<item index="0" class="java.lang.String" itemvalue="JUnit.NewOperatorTest2.run" />
<item index="1" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3.run" />
<item index="2" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3" />
<item index="3" class="java.lang.String" itemvalue="JUnit.SolveTest_Dev.run" />
<item index="4" class="java.lang.String" itemvalue="JUnit.SolveTest.run" />
<item index="1" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3" />
<item index="2" class="java.lang.String" itemvalue="JUnit.SolveTest_Dev.run" />
<item index="3" class="java.lang.String" itemvalue="JUnit.SolveTest.run" />
<item index="4" class="java.lang.String" itemvalue="JUnit.SolveTestMyList.run" />
</list>
<recent_temporary>
<list size="5">
<item index="0" class="java.lang.String" itemvalue="JUnit.SolveTest.run" />
<item index="1" class="java.lang.String" itemvalue="JUnit.SolveTest_Dev.run" />
<item index="2" class="java.lang.String" itemvalue="JUnit.NewOperatorTest2.run" />
<item index="3" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3" />
<item index="4" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3.run" />
<item index="0" class="java.lang.String" itemvalue="JUnit.SolveTestMyList.run" />
<item index="1" class="java.lang.String" itemvalue="JUnit.SolveTest.run" />
<item index="2" class="java.lang.String" itemvalue="JUnit.SolveTest_Dev.run" />
<item index="3" class="java.lang.String" itemvalue="JUnit.NewOperatorTest2.run" />
<item index="4" class="java.lang.String" itemvalue="JUnit.NewOperatorTest3" />
</list>
</recent_temporary>
</component>
@ -1075,48 +1097,48 @@
<option name="presentableId" value="Default" />
<updated>1492600650522</updated>
<workItem from="1492600653626" duration="3746000" />
<workItem from="1492623646935" duration="192061000" />
<workItem from="1492623646935" duration="193993000" />
</task>
<servers />
</component>
<component name="TestHistory">
<history-entry file="SolveTest_run - 2017.05.03 at 08h 49m 16s.xml">
<history-entry file="SolveTestMyList_run - 2017.05.03 at 10h 37m 53s.xml">
<configuration name="SolveTestMyList.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTestMyList_run - 2017.05.03 at 10h 39m 32s.xml">
<configuration name="SolveTestMyList.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTestMyList_run - 2017.05.03 at 10h 41m 05s.xml">
<configuration name="SolveTestMyList.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTestMyList_run - 2017.05.03 at 10h 41m 24s.xml">
<configuration name="SolveTestMyList.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTestMyList_run - 2017.05.03 at 10h 42m 37s.xml">
<configuration name="SolveTestMyList.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTestMyList_run - 2017.05.03 at 10h 45m 55s.xml">
<configuration name="SolveTestMyList.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTestMyList_run - 2017.05.03 at 10h 49m 07s.xml">
<configuration name="SolveTestMyList.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTestMyList_run - 2017.05.03 at 10h 50m 39s.xml">
<configuration name="SolveTestMyList.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 10h 22m 01s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 08h 49m 46s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 08h 53m 38s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 08h 55m 31s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 09h 18m 31s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 09h 18m 58s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 09h 26m 07s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 09h 46m 53s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 09h 47m 59s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
<history-entry file="SolveTest_run - 2017.05.03 at 09h 49m 20s.xml">
<history-entry file="SolveTest_run - 2017.05.03 at 10h 37m 30s.xml">
<configuration name="SolveTest.run" configurationId="JUnit" />
</history-entry>
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="195807000" />
<option name="totallyTimeSpent" value="197739000" />
</component>
<component name="ToolWindowManager">
<frame x="-2" y="27" width="1442" height="863" extended-state="1" />
<editor active="true" />
<frame x="-2" y="27" width="1442" height="863" extended-state="0" />
<editor active="false" />
<layout>
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Tool Output" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
@ -1137,7 +1159,7 @@
<window_info id="Palette&#9;" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.4751309" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.45549738" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
@ -1217,7 +1239,7 @@
<option name="timeStamp" value="47" />
</line-breakpoint>
</breakpoints>
<option name="time" value="57" />
<option name="time" value="58" />
</breakpoint-manager>
<watches-manager />
</component>
@ -1226,26 +1248,6 @@
<option name="FILTER_TARGETS" value="false" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/assumptions/AssumptionMethod.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="60">
<caret line="10" column="13" lean-forward="false" selection-start-line="10" selection-start-column="13" selection-end-line="10" selection-end-column="13" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/assumptions/AssumptionMakerGlobal.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="38" column="0" lean-forward="false" selection-start-line="38" selection-start-column="0" selection-end-line="38" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/assumptions/MappingAltNeu.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="45">
@ -1440,14 +1442,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest.jav">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="15">
<caret line="1" column="0" lean-forward="false" selection-start-line="1" selection-start-column="0" selection-end-line="1" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/syntaxtree/type/RefType.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-600">
@ -1630,9 +1624,9 @@
<state relative-caret-position="300">
<caret line="20" column="9" lean-forward="true" selection-start-line="20" selection-start-column="9" selection-end-line="20" selection-end-column="9" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#350#351#0" expanded="true" />
<element signature="e#378#379#0" expanded="true" />
<element signature="imports" expanded="false" />
<element signature="e#350#351#0" expanded="false" />
<element signature="e#378#379#0" expanded="false" />
</folding>
</state>
</provider>
@ -1679,23 +1673,47 @@
<entry file="file://$PROJECT_DIR$/src/de/dhbwstuttgart/strucTypes5/solve/Ruler.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="210">
<caret line="56" column="37" lean-forward="true" selection-start-line="56" selection-start-column="37" selection-end-line="56" selection-end-column="37" />
<caret line="56" column="37" lean-forward="false" selection-start-line="56" selection-start-column="37" selection-end-line="56" selection-end-column="37" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest.jav">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="60">
<caret line="4" column="42" lean-forward="false" selection-start-line="4" selection-start-column="42" selection-end-line="4" selection-end-column="42" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest2.jav">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="17" column="11" lean-forward="false" selection-start-line="17" selection-start-column="11" selection-end-line="17" selection-end-column="11" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTest.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-259">
<caret line="133" column="0" lean-forward="true" selection-start-line="133" selection-start-column="0" selection-end-line="133" selection-end-column="0" />
<state relative-caret-position="1300">
<caret line="133" column="0" lean-forward="false" selection-start-line="133" selection-start-column="0" selection-end-line="133" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/test/strucTypes5/SolveTestMyList.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="110">
<caret line="104" column="30" lean-forward="false" selection-start-line="104" selection-start-column="30" selection-end-line="104" selection-end-column="30" />
<folding />
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>

View File

@ -15,6 +15,7 @@ class MyInteger {
}
class MyList {
}

View File

@ -0,0 +1,21 @@
class Main {
main () { return new A().mt( new MyList() , new MyInteger() , new MyInteger() ); }
}
class A{
mt(x,y,z) { return x.addI(y,z); }
}
class MyInteger {
}
class MyList {
}

View File

@ -0,0 +1,150 @@
package strucTypes5;
import de.dhbwstuttgart.parser.JavaTXParser;
import de.dhbwstuttgart.strucTypes5.algo.TI;
import de.dhbwstuttgart.strucTypes5.assumptions.AssumptionMap;
import de.dhbwstuttgart.strucTypes5.constraints.*;
import de.dhbwstuttgart.strucTypes5.solve.Ruler;
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarAbstract;
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarFactory;
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarInterface;
import de.dhbwstuttgart.strucTypes5.typeVars.TypeVarRefType;
import de.dhbwstuttgart.syntaxtree.ClassOrInterface;
import de.dhbwstuttgart.syntaxtree.SourceFile;
import org.junit.Test;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
/**
* Dieser Test pr�ft nur, ob .java-Dateien fehlerfrei geparst werden. Der
* dabei erstellte Syntaxbaum wird nicht kontrolliert.
*
* @author janulrich
*
*/
public class SolveTestMyList {
private static final String rootDirectory = System.getProperty("user.dir") + "/test/strucTypes5/";
@Test
public void run() {
List<String> filenames = new ArrayList<String>();
filenames.add("SolveTest2.jav");
JavaTXParser parser = new JavaTXParser();
try {
for (String filename : filenames) {
System.out.println("Teste: " + filename);
SourceFile sf = parser.parse(new File(rootDirectory + filename));
SourceFile sfdebug = sf;
ClassOrInterface mainClass = sf.getClasses().get(0);
ClassOrInterface aClass = sf.getClasses().get(1);
AssumptionMap assumptionMap = new AssumptionMap();
TI ti = new TI(assumptionMap, aClass);
TI ti1 = new TI(ti.assresult, mainClass);
// Take The Generatet Constraints from ti:
// Try To Solve
System.out.println("\n \n \n \n Starte einfach Unifikation ");
System.out.println("Gegegeben Constraints: " + ti1.resultConstraints);
TypeVarRefType myInteger = (TypeVarRefType) getTypeVar(ti1.resultConstraints , "TVar_MyInteger");
TypeVarRefType myList = (TypeVarRefType) getTypeVar(ti1.resultConstraints , "TVar_MyList");
TypeVarAbstract v2 = getTypeVar(ti1.resultConstraints , "TVar_2");
TypeVarAbstract v5 = getTypeVar(ti1.resultConstraints , "TVar_5");
System.out.println(myInteger.toString());
System.out.println(myList.toString());
System.out.println(v2.toString());
// System.out.println(v5.toString());
// Generiere Interface 1
List<TypeVarAbstract> generics = new ArrayList<>();
generics.add(TypeVarFactory.makeTypeVar(myList.getRefType()));
generics.add(TypeVarFactory.makeTypeVar(myInteger.getRefType()));
generics.add(TypeVarFactory.makeTypeVar(myInteger.getRefType()));
InterfaceForConstraint if1 = new InterfaceForConstraint(v2, generics);
ConstraintInterface constraintInterface = new ConstraintInterface(TypeVarFactory.makeTypeVar(myList.getRefType()) , TypeVarFactory.makeTypeVar(if1) );
List<ConstraintInterface> interfaces = new ArrayList<>();
interfaces.add(constraintInterface);
// Generiere Interface 2
List<TypeVarAbstract> generics2 = new ArrayList<>();
generics2.add(TypeVarFactory.makeTypeVar(myInteger.getRefType()));
generics2.add(TypeVarFactory.makeTypeVar(myInteger.getRefType()));
InterfaceForConstraint if2 = new InterfaceForConstraint(v5, generics);
//ConstraintInterface constraintInterface2 = new ConstraintInterface(TypeVarFactory.makeTypeVar(myInteger.getRefType()) , TypeVarFactory.makeTypeVar(if2) );
//interfaces.add(constraintInterface2);
System.out.println(interfaces);
List<ConstraintSubstitution> substitutions = new ArrayList<>();
Ruler ruler = new Ruler(interfaces,substitutions,ti1.resultConstraints);
System.out.println("start ...");
int bremse = 0;
while (ti1.resultConstraints.size() > 0) {
bremse = bremse +1;
if (bremse > 15 ) {break; };
ruler.rule();
}
}
} catch (Exception exc) {
exc.printStackTrace();
fail();
}
assertTrue("Tests durchlaufen", filenames.size() > 0);
}
private TypeVarAbstract getTypeVar(List<ConstraintAbstract> constraints , String name) {
for (ConstraintAbstract cs : constraints) {
if (cs instanceof ConstraintSubType) {
ConstraintSubType css = (ConstraintSubType) cs;
if (css.getSubtype().toString().equals(name)) {
return css.getSubtype();
}
else if (css.getSuperType().toString().equals(name)) {
return css.getSuperType();
}
else if (css.getSuperType() instanceof TypeVarInterface) {
TypeVarInterface tcv = (TypeVarInterface) css.getSuperType();
if (tcv.getInterfaceForConstraint().getStrucType().toString().equals(name)) {
return tcv.getInterfaceForConstraint().getStrucType();
}
}
}
}
return null;
}
}