@@ -276,6 +276,8 @@ public MockResponse dispatch(RecordedRequest request) {
276
276
return new MockResponse (404 );
277
277
} else if (path .matches ("/v1/results/invalidate-status\\ ?resultUuid=" + LOADFLOW_RESULT_UUID )) {
278
278
return new MockResponse (200 );
279
+ } else if (path .matches ("/v1/results/invalidate-status\\ ?resultUuid=" + LOADFLOW_RESULT_UUID + "&resultUuid=" + LOADFLOW_OTHER_NODE_RESULT_UUID )) {
280
+ return new MockResponse (200 );
279
281
} else if (path .matches ("/v1/results/" + LOADFLOW_RESULT_UUID + "/stop.*" )
280
282
|| path .matches ("/v1/results/" + LOADFLOW_OTHER_NODE_RESULT_UUID + "/stop.*" )) {
281
283
String resultUuid = path .matches (".*variantId=" + VARIANT_ID_2 + ".*" ) ? LOADFLOW_OTHER_NODE_RESULT_UUID : LOADFLOW_RESULT_UUID ;
@@ -365,15 +367,15 @@ void testLoadFlow(final MockWebServer server) throws Exception {
365
367
StudyEntity studyEntity = insertDummyStudy (UUID .fromString (NETWORK_UUID_STRING ), CASE_LOADFLOW_UUID , LOADFLOW_PARAMETERS_UUID );
366
368
UUID studyNameUserIdUuid = studyEntity .getId ();
367
369
UUID rootNodeUuid = getRootNode (studyNameUserIdUuid ).getId ();
368
- NetworkModificationNode modificationNode1 = createNetworkModificationNode (studyNameUserIdUuid , rootNodeUuid ,
370
+ NetworkModificationNode modificationNode1 = createNetworkModificationConstructionNode (studyNameUserIdUuid , rootNodeUuid ,
369
371
UUID .randomUUID (), VARIANT_ID , "node 1" );
370
372
UUID modificationNode1Uuid = modificationNode1 .getId ();
371
373
372
- NetworkModificationNode modificationNode2 = createNetworkModificationNode (studyNameUserIdUuid ,
374
+ NetworkModificationNode modificationNode2 = createNetworkModificationConstructionNode (studyNameUserIdUuid ,
373
375
modificationNode1Uuid , UUID .randomUUID (), VARIANT_ID , "node 2" );
374
376
UUID modificationNode2Uuid = modificationNode2 .getId ();
375
377
376
- NetworkModificationNode modificationNode3 = createNetworkModificationNode (studyNameUserIdUuid ,
378
+ NetworkModificationNode modificationNode3 = createNetworkModificationConstructionNode (studyNameUserIdUuid ,
377
379
modificationNode2Uuid , UUID .randomUUID (), VARIANT_ID_2 , "node 3" );
378
380
379
381
NetworkModificationNode modificationNode4 = createNetworkModificationNode (studyNameUserIdUuid ,
@@ -553,6 +555,7 @@ void testInvalidateStatus(final MockWebServer server) throws Exception {
553
555
// invalidating loadflow (with security node) invalidate node, their children and their computations
554
556
checkUpdateModelsStatusMessagesReceived (studyNameUserIdUuid , modificationNode1Uuid );
555
557
checkUpdateModelStatusMessagesReceived (studyNameUserIdUuid , NotificationService .UPDATE_TYPE_LOADFLOW_STATUS );
558
+ assertRequestsDone (server , List .of ("/v1/results/invalidate-status\\ ?resultUuid=.*" ));
556
559
}
557
560
558
561
@ Test
@@ -562,11 +565,11 @@ void testDeleteLoadFlowResults(final MockWebServer server) throws Exception {
562
565
UUID studyNameUserIdUuid = studyEntity .getId ();
563
566
UUID firstRootNetworkUuid = studyTestUtils .getOneRootNetworkUuid (studyNameUserIdUuid );
564
567
UUID rootNodeUuid = getRootNode (studyNameUserIdUuid ).getId ();
565
- NetworkModificationNode modificationNode1 = createNetworkModificationNode (studyNameUserIdUuid , rootNodeUuid ,
568
+ NetworkModificationNode modificationNode1 = createNetworkModificationConstructionNode (studyNameUserIdUuid , rootNodeUuid ,
566
569
UUID .randomUUID (), VARIANT_ID , "node 1" );
567
570
UUID modificationNode1Uuid = modificationNode1 .getId ();
568
571
569
- NetworkModificationNode modificationNode2 = createNetworkModificationNode (studyNameUserIdUuid ,
572
+ NetworkModificationNode modificationNode2 = createNetworkModificationConstructionNode (studyNameUserIdUuid ,
570
573
modificationNode1Uuid , UUID .randomUUID (), VARIANT_ID , "node 2" );
571
574
UUID modificationNode2Uuid = modificationNode2 .getId ();
572
575
@@ -602,7 +605,7 @@ void testResetUuidResultWhenLFFailed() throws Exception {
602
605
UUID resultUuid = UUID .randomUUID ();
603
606
StudyEntity studyEntity = insertDummyStudy (UUID .randomUUID (), UUID .randomUUID (), LOADFLOW_PARAMETERS_UUID );
604
607
RootNode rootNode = networkModificationTreeService .getStudyTree (studyEntity .getId (), null );
605
- NetworkModificationNode modificationNode = createNetworkModificationNode (studyEntity .getId (), rootNode .getId (), UUID .randomUUID (), VARIANT_ID , "node 1" );
608
+ NetworkModificationNode modificationNode = createNetworkModificationConstructionNode (studyEntity .getId (), rootNode .getId (), UUID .randomUUID (), VARIANT_ID , "node 1" );
606
609
UUID rootNetworkUuid = studyEntity .getFirstRootNetwork ().getId ();
607
610
String resultUuidJson = objectMapper .writeValueAsString (new NodeReceiver (modificationNode .getId (), rootNetworkUuid ));
608
611
@@ -677,7 +680,7 @@ void testNoResult() throws Exception {
677
680
UUID studyNameUserIdUuid = studyEntity .getId ();
678
681
UUID firstRootNetworkUuid = studyTestUtils .getOneRootNetworkUuid (studyNameUserIdUuid );
679
682
UUID rootNodeUuid = getRootNode (studyNameUserIdUuid ).getId ();
680
- NetworkModificationNode modificationNode1 = createNetworkModificationNode (studyNameUserIdUuid , rootNodeUuid ,
683
+ NetworkModificationNode modificationNode1 = createNetworkModificationConstructionNode (studyNameUserIdUuid , rootNodeUuid ,
681
684
UUID .randomUUID (), VARIANT_ID , "node 1" );
682
685
UUID modificationNode1Uuid = modificationNode1 .getId ();
683
686
@@ -907,22 +910,22 @@ void testInvalidateNodesAfterLoadflow(final MockWebServer server) throws Excepti
907
910
UUID studyUuid = studyEntity .getId ();
908
911
UUID rootNetworkUuid = studyTestUtils .getOneRootNetworkUuid (studyUuid );
909
912
RootNode rootNode = getRootNode (studyUuid );
910
- NetworkModificationNode node1 = createNetworkModificationNode (studyUuid , rootNode .getId (), UUID .randomUUID (), "variant1" , "N1" );
911
- NetworkModificationNode node2 = createNetworkModificationNode (studyUuid , node1 .getId (), UUID .randomUUID (), "variant2" , "N2" );
912
- NetworkModificationNode node3 = createNetworkModificationNode (studyUuid , node1 .getId (), UUID .randomUUID (), "variant3" , "N3" );
913
+ NetworkModificationNode node1 = createNetworkModificationConstructionNode (studyUuid , rootNode .getId (), UUID .randomUUID (), "variant1" , "N1" );
914
+ NetworkModificationNode node2 = createNetworkModificationConstructionNode (studyUuid , node1 .getId (), UUID .randomUUID (), "variant2" , "N2" );
915
+ NetworkModificationNode node3 = createNetworkModificationNode (studyUuid , node1 .getId (), UUID .randomUUID (), "variant3" , "N3" , NetworkModificationNodeType . SECURITY );
913
916
914
917
/*
915
918
* R
916
919
* |
917
- * N1
920
+ * N1(C)
918
921
* | |
919
- * N2 N3
922
+ * N2(C) N3(S)
920
923
*/
921
924
updateNodeBuildStatus (node1 .getId (), rootNetworkUuid , BuildStatus .BUILT );
922
925
updateNodeBuildStatus (node2 .getId (), rootNetworkUuid , BuildStatus .BUILT );
923
926
updateNodeBuildStatus (node3 .getId (), rootNetworkUuid , BuildStatus .BUILT );
924
- updateLoadflowResultUuid (node2 .getId (), rootNetworkUuid , UUID .randomUUID ( ));
925
- updateLoadflowResultUuid (node3 .getId (), rootNetworkUuid , UUID .randomUUID ( ));
927
+ updateLoadflowResultUuid (node2 .getId (), rootNetworkUuid , UUID .fromString ( LOADFLOW_RESULT_UUID ));
928
+ updateLoadflowResultUuid (node3 .getId (), rootNetworkUuid , UUID .fromString ( LOADFLOW_OTHER_NODE_RESULT_UUID ));
926
929
927
930
/*
928
931
* R
@@ -931,7 +934,9 @@ void testInvalidateNodesAfterLoadflow(final MockWebServer server) throws Excepti
931
934
* | |
932
935
* N2* N3*
933
936
*
934
- * All nodes are BUILT, N2 and N3 have loadflow results - they will be invalidated
937
+ * All nodes are BUILT, N2 and N3 have loadflow results
938
+ * N2 is construction - its loadflow computation will be invalidated
939
+ * N3 is security - it will be invalidated
935
940
*/
936
941
937
942
// run loadflow invalidation on all study
@@ -940,16 +945,16 @@ void testInvalidateNodesAfterLoadflow(final MockWebServer server) throws Excepti
940
945
// node2 and node3 will be invalidated with their children, but the order in which way they are invalidated is not deterministic
941
946
// this is why we don't check node uuid here for those two calls
942
947
checkUpdateModelsStatusMessagesReceived (studyUuid );
943
- checkUpdateModelsStatusMessagesReceived (studyUuid );
944
948
945
949
checkUpdateModelStatusMessagesReceived (studyUuid , NotificationService .UPDATE_TYPE_LOADFLOW_STATUS );
946
950
947
- var requests = TestUtils .getRequestsDone (4 , server );
951
+ var requests = TestUtils .getRequestsDone (3 , server );
948
952
assertTrue (requests .stream ().anyMatch (r -> r .matches ("/v1/results\\ ?resultsUuids=.*" )));
949
953
assertTrue (requests .stream ().anyMatch (r -> r .matches ("/v1/reports" )));
954
+ assertTrue (requests .stream ().anyMatch (r -> r .matches ("/v1/results/invalidate-status\\ ?resultUuid=.*" )));
950
955
951
956
assertEquals (NodeBuildStatusEmbeddable .from (BuildStatus .BUILT ), rootNetworkNodeInfoService .getRootNetworkNodeInfo (node1 .getId (), rootNetworkUuid ).map (RootNetworkNodeInfoEntity ::getNodeBuildStatus ).orElseThrow ());
952
- assertEquals (NodeBuildStatusEmbeddable .from (BuildStatus .NOT_BUILT ), rootNetworkNodeInfoService .getRootNetworkNodeInfo (node2 .getId (), rootNetworkUuid ).map (RootNetworkNodeInfoEntity ::getNodeBuildStatus ).orElseThrow ());
957
+ assertEquals (NodeBuildStatusEmbeddable .from (BuildStatus .BUILT ), rootNetworkNodeInfoService .getRootNetworkNodeInfo (node2 .getId (), rootNetworkUuid ).map (RootNetworkNodeInfoEntity ::getNodeBuildStatus ).orElseThrow ());
953
958
assertEquals (NodeBuildStatusEmbeddable .from (BuildStatus .NOT_BUILT ), rootNetworkNodeInfoService .getRootNetworkNodeInfo (node3 .getId (), rootNetworkUuid ).map (RootNetworkNodeInfoEntity ::getNodeBuildStatus ).orElseThrow ());
954
959
}
955
960
@@ -983,8 +988,8 @@ private RootNode getRootNode(UUID study) throws Exception {
983
988
.getContentAsString (), new TypeReference <>() { });
984
989
}
985
990
986
- private NetworkModificationNode createNetworkModificationNode (UUID studyUuid , UUID parentNodeUuid ,
987
- UUID modificationGroupUuid , String variantId , String nodeName ) throws Exception {
991
+ private NetworkModificationNode createNetworkModificationConstructionNode (UUID studyUuid , UUID parentNodeUuid ,
992
+ UUID modificationGroupUuid , String variantId , String nodeName ) throws Exception {
988
993
return createNetworkModificationNode (studyUuid , parentNodeUuid , modificationGroupUuid , variantId , nodeName , NetworkModificationNodeType .CONSTRUCTION );
989
994
}
990
995
0 commit comments