]> SALOME platform Git repositories - modules/yacs.git/blobdiff - src/yacsloader/samples/wlm_2foreach_with_cache.xml
Salome HOME
Improve test stability.
[modules/yacs.git] / src / yacsloader / samples / wlm_2foreach_with_cache.xml
index 4bda1d82c4f91b92beb355d5ceb91f8e10b95a4e..e70df0c91f6fd6d733f48a2c802770121ad088b8 100644 (file)
@@ -51,6 +51,7 @@ vals = [ i for i in range(40)]
 nbbranches = len(vals)
 t0=time.time()
 ]]></code></script>
+      <load container="DefaultContainer"/>
       <outport name="t0" type="pyobj"/>
       <outport name="vals" type="intvec"/>
       <outport name="nbbranches" type="int"/>
@@ -62,7 +63,7 @@ total_time=int(tf-t0)
 
 ok = True
 s_expected = sum(vals)
-
+err_message = ""
 tr1={}
 for cont_name, s in r1:
     if cont_name in tr1.keys():
@@ -75,9 +76,9 @@ for cont_name, s in r1:
 s1 = sum(tr1.values())
 if s_expected != s1:
     ok = False
-    print("Error on the first foreach.")
-    print("Expected sum:", s_expected)
-    print("Obtained sum:", s1)
+    err_message += "Error on the first foreach.\n"
+    err_message += "Expected sum:{}\n".format(s_expected)
+    err_message += "Obtained sum:{}\n".format(s1)
 
 tr2={}
 for cont_name, s in r2:
@@ -91,14 +92,15 @@ for cont_name, s in r2:
 s2 = sum(tr2.values())
 if s_expected != s2:
     ok = False
-    print("Error on the second foreach.")
-    print("Expected sum:", s_expected)
-    print("Obtained sum:", s2)
+    err_message += "Error on the second foreach.\n"
+    err_message += "Expected sum:{}\n".format(s_expected)
+    err_message += "Obtained sum:{}\n".format(s2)
 
 coeff_cont = len(tr1) + ( 4 * len(tr2))
-#print(r1)
-#print(r2)
+print("total_time:", total_time)
+print(err_message)
 ]]></code></script>
+      <load container="DefaultContainer"/>
       <inport name="t0" type="pyobj"/>
       <inport name="r1" type="seqpyobj"/>
       <inport name="r2" type="seqpyobj"/>
@@ -106,6 +108,7 @@ coeff_cont = len(tr1) + ( 4 * len(tr2))
       <outport name="total_time" type="int"/>
       <outport name="ok" type="bool"/>
       <outport name="coeff_cont" type="int"/>
+      <outport name="err_message" type="string"/>
    </inline>
    <foreach name="ForEach1" nbranch="1" loopWeight="-1" type="int">
       <remote name="PyNode1" elementaryWeight="-1">
@@ -141,34 +144,62 @@ time.sleep(1)
          <outport name="result" type="pyobj"/>
       </remote>
    </foreach>
+   <foreach name="Create_C1_containers" nbranch="8" loopWeight="-1" type="int">
+      <remote name="wait_c1" elementaryWeight="-1">
+         <script><code><![CDATA[import time
+time.sleep(1)
+]]></code></script>
+         <load container="c1"/>
+         <inport name="x" type="int"/>
+      </remote>
+   </foreach>
+   <foreach name="Create_C2_containers" nbranch="3" loopWeight="-1" type="int">
+      <remote name="wait_c2" elementaryWeight="-1">
+         <script><code><![CDATA[import time
+time.sleep(1)
+]]></code></script>
+         <load container="c2"/>
+         <inport name="x" type="int"/>
+      </remote>
+   </foreach>
+   <inline name="delay">
+      <script><code><![CDATA[import time
+time.sleep(1)
+]]></code></script>
+      <load container="DefaultContainer"/>
+   </inline>
    <control> <fromnode>Begin</fromnode> <tonode>ForEach1</tonode> </control>
    <control> <fromnode>Begin</fromnode> <tonode>ForEach2</tonode> </control>
    <control> <fromnode>Begin</fromnode> <tonode>End</tonode> </control>
+   <control> <fromnode>Begin</fromnode> <tonode>delay</tonode> </control>
    <control> <fromnode>ForEach1</fromnode> <tonode>End</tonode> </control>
    <control> <fromnode>ForEach2</fromnode> <tonode>End</tonode> </control>
+   <control> <fromnode>Create_C1_containers</fromnode> <tonode>Create_C2_containers</tonode> </control>
+   <control> <fromnode>Create_C2_containers</fromnode> <tonode>Begin</tonode> </control>
+   <control> <fromnode>delay</fromnode> <tonode>ForEach1</tonode> </control>
    <datalink control="false">
       <fromnode>Begin</fromnode> <fromport>t0</fromport>
       <tonode>End</tonode> <toport>t0</toport>
    </datalink>
    <datalink control="false">
       <fromnode>Begin</fromnode> <fromport>vals</fromport>
-      <tonode>ForEach2</tonode> <toport>SmplsCollection</toport>
+      <tonode>ForEach1</tonode> <toport>SmplsCollection</toport>
    </datalink>
    <datalink control="false">
       <fromnode>Begin</fromnode> <fromport>vals</fromport>
-      <tonode>ForEach1</tonode> <toport>SmplsCollection</toport>
+      <tonode>End</tonode> <toport>vals</toport>
    </datalink>
    <datalink control="false">
       <fromnode>Begin</fromnode> <fromport>vals</fromport>
-      <tonode>End</tonode> <toport>vals</toport>
+      <tonode>ForEach2</tonode> <toport>SmplsCollection</toport>
    </datalink>
    <datalink control="false">
       <fromnode>Begin</fromnode> <fromport>nbbranches</fromport>
-      <tonode>ForEach2</tonode> <toport>nbBranches</toport>
+      <tonode>ForEach1</tonode> <toport>nbBranches</toport>
    </datalink>
    <datalink control="false">
       <fromnode>Begin</fromnode> <fromport>nbbranches</fromport>
-      <tonode>ForEach1</tonode> <toport>nbBranches</toport>
+      <tonode>ForEach2</tonode> <toport>nbBranches</toport>
    </datalink>
    <datalink control="false">
       <fromnode>ForEach1</fromnode> <fromport>evalSamples</fromport>
@@ -178,6 +209,14 @@ time.sleep(1)
       <fromnode>ForEach2</fromnode> <fromport>evalSamples</fromport>
       <tonode>ForEach2.PyNode2</tonode> <toport>v</toport>
    </datalink>
+   <datalink control="false">
+      <fromnode>Create_C1_containers</fromnode> <fromport>evalSamples</fromport>
+      <tonode>Create_C1_containers.wait_c1</tonode> <toport>x</toport>
+   </datalink>
+   <datalink control="false">
+      <fromnode>Create_C2_containers</fromnode> <fromport>evalSamples</fromport>
+      <tonode>Create_C2_containers.wait_c2</tonode> <toport>x</toport>
+   </datalink>
    <datalink control="false">
       <fromnode>ForEach1.PyNode1</fromnode> <fromport>result</fromport>
       <tonode>End</tonode> <toport>r1</toport>
@@ -187,18 +226,52 @@ time.sleep(1)
       <tonode>End</tonode> <toport>r2</toport>
    </datalink>
    <parameter>
-      <tonode>ForEach2</tonode><toport>nbBranches</toport>
+      <tonode>ForEach1</tonode><toport>nbBranches</toport>
       <value><int>1</int></value>
    </parameter>
    <parameter>
-      <tonode>ForEach1</tonode><toport>nbBranches</toport>
+      <tonode>Create_C1_containers</tonode><toport>nbBranches</toport>
+      <value><int>8</int></value>
+   </parameter>
+   <parameter>
+      <tonode>Create_C1_containers</tonode><toport>SmplsCollection</toport>
+      <value><array><data>
+<value><int>1</int></value>
+<value><int>2</int></value>
+<value><int>3</int></value>
+<value><int>4</int></value>
+<value><int>5</int></value>
+<value><int>6</int></value>
+<value><int>7</int></value>
+<value><int>8</int></value>
+</data></array></value>
+   </parameter>
+   <parameter>
+      <tonode>Create_C2_containers</tonode><toport>nbBranches</toport>
+      <value><int>3</int></value>
+   </parameter>
+   <parameter>
+      <tonode>Create_C2_containers</tonode><toport>SmplsCollection</toport>
+      <value><array><data>
+<value><int>1</int></value>
+<value><int>2</int></value>
+<value><int>3</int></value>
+</data></array></value>
+   </parameter>
+   <parameter>
+      <tonode>ForEach2</tonode><toport>nbBranches</toport>
       <value><int>1</int></value>
    </parameter>
+   <presentation name="delay" x="466" y="60" width="158" height="36" expanded="1" expx="466" expy="60" expWidth="158" expHeight="36" shownState="0"/>
+   <presentation name="Create_C2_containers.wait_c2" x="7" y="89" width="158" height="63" expanded="1" expx="7" expy="89" expWidth="158" expHeight="63" shownState="0"/>
+   <presentation name="Begin" x="362.5" y="133" width="158" height="117" expanded="1" expx="362.5" expy="133" expWidth="158" expHeight="117" shownState="0"/>
+   <presentation name="End" x="833.5" y="137" width="158" height="144" expanded="1" expx="833.5" expy="137" expWidth="158" expHeight="144" shownState="0"/>
+   <presentation name="ForEach1" x="587.5" y="123.5" width="171.5" height="155" expanded="1" expx="587.5" expy="123.5" expWidth="171.5" expHeight="155" shownState="0"/>
+   <presentation name="Create_C1_containers.wait_c1" x="6" y="97" width="158" height="63" expanded="1" expx="6" expy="97" expWidth="158" expHeight="63" shownState="0"/>
+   <presentation name="Create_C1_containers" x="4" y="133" width="168" height="164" expanded="1" expx="4" expy="133" expWidth="168" expHeight="164" shownState="0"/>
    <presentation name="ForEach1.PyNode1" x="9.5" y="88" width="158" height="63" expanded="1" expx="9.5" expy="88" expWidth="158" expHeight="63" shownState="0"/>
-   <presentation name="ForEach2" x="204" y="313.5" width="175" height="159" expanded="1" expx="204" expy="313.5" expWidth="175" expHeight="159" shownState="0"/>
-   <presentation name="ForEach1" x="201.5" y="146" width="171.5" height="155" expanded="1" expx="201.5" expy="146" expWidth="171.5" expHeight="155" shownState="0"/>
-   <presentation name="End" x="402.5" y="85" width="158" height="144" expanded="1" expx="402.5" expy="85" expWidth="158" expHeight="144" shownState="0"/>
-   <presentation name="Begin" x="9" y="86" width="158" height="117" expanded="1" expx="9" expy="86" expWidth="158" expHeight="117" shownState="0"/>
    <presentation name="ForEach2.PyNode2" x="13" y="92" width="158" height="63" expanded="1" expx="13" expy="92" expWidth="158" expHeight="63" shownState="0"/>
-   <presentation name="__ROOT__" x="0" y="0" width="564.5" height="476.5" expanded="1" expx="0" expy="0" expWidth="564.5" expHeight="476.5" shownState="0"/>
+   <presentation name="Create_C2_containers" x="187" y="133" width="169" height="156" expanded="1" expx="187" expy="133" expWidth="169" expHeight="156" shownState="0"/>
+   <presentation name="ForEach2" x="587" y="283" width="175" height="159" expanded="1" expx="587" expy="283" expWidth="175" expHeight="159" shownState="0"/>
+   <presentation name="__ROOT__" x="0" y="0" width="995.5" height="446" expanded="1" expx="0" expy="0" expWidth="995.5" expHeight="446" shownState="0"/>
 </proc>