@@ -61,7 +61,6 @@ import io.mockk.unmockkStatic
6161import io.mockk.verify
6262import java.util.Optional
6363import java.util.UUID
64- import java.util.stream.Stream
6564import kotlin.test.AfterTest
6665import kotlin.test.BeforeTest
6766import kotlin.test.Ignore
@@ -75,11 +74,6 @@ import org.junit.jupiter.api.TestFactory
7574import org.junit.jupiter.api.assertDoesNotThrow
7675import org.junit.jupiter.api.assertThrows
7776import org.junit.jupiter.api.extension.ExtendWith
78- import org.junit.jupiter.api.extension.ExtensionContext
79- import org.junit.jupiter.params.ParameterizedTest
80- import org.junit.jupiter.params.provider.Arguments
81- import org.junit.jupiter.params.provider.ArgumentsProvider
82- import org.junit.jupiter.params.provider.ArgumentsSource
8377import org.springframework.data.domain.PageImpl
8478
8579const val ORGANIZATION_ID = " O-AbCdEf123"
@@ -756,172 +750,6 @@ class ScenarioServiceImplTests {
756750 }
757751 }
758752
759- @Test
760- fun `PROD-8051 - findAllScenarios add info about parent and master lastRuns` () {
761- /* Scenario tree: M1 (run) -- (P11 (never run) -- C111 (run) */
762- every { getCurrentAuthenticatedRoles(any()) } returns listOf (" Platform.Admin" )
763- val m1 =
764- Scenario (
765- id = " M1" ,
766- parentId = null ,
767- rootId = null ,
768- lastRun =
769- ScenarioLastRun (
770- scenarioRunId = " sr-m1" ,
771- workflowName = " m1-workflowName" ,
772- workflowId = " m1-workflowId" ,
773- csmSimulationRun = " m1-csmSimulationRun" ))
774- val p11 = Scenario (id = " P11" , parentId = m1.id, rootId = m1.id, lastRun = null )
775- val c111 =
776- Scenario (
777- id = " C111" ,
778- parentId = p11.id,
779- rootId = m1.id,
780- lastRun =
781- ScenarioLastRun (
782- scenarioRunId = " sr-c111" ,
783- workflowName = " c111-workflowName" ,
784- workflowId = " c111-workflowId" ,
785- csmSimulationRun = " c111-csmSimulationRun" ))
786- val organization = Organization (id = ORGANIZATION_ID , security = null )
787- val workspace = mockWorkspace(ORGANIZATION_ID , SOLUTION_ID , " WorkspaceName" )
788- every { csmPlatformProperties.twincache.scenario.defaultPageSize } returns 100
789- every { organizationService.findOrganizationById(ORGANIZATION_ID ) } returns organization
790- every { workspaceService.findWorkspaceById(ORGANIZATION_ID , WORKSPACE_ID ) } returns workspace
791- every {
792- scenarioServiceImpl.findScenarioByIdNoState(ORGANIZATION_ID , WORKSPACE_ID , m1.id!! )
793- } returns m1
794- every {
795- scenarioServiceImpl.findScenarioByIdNoState(ORGANIZATION_ID , WORKSPACE_ID , p11.id!! )
796- } returns p11
797- every {
798- scenarioServiceImpl.findScenarioByIdNoState(ORGANIZATION_ID , WORKSPACE_ID , c111.id!! )
799- } returns c111
800- every {
801- scenarioServiceImpl.findPaginatedScenariosStateOption(
802- ORGANIZATION_ID , WORKSPACE_ID , 0 , 100 , true )
803- } returns listOf (m1, p11, c111)
804-
805- val allScenariosById =
806- scenarioServiceImpl
807- .findAllScenarios(ORGANIZATION_ID , WORKSPACE_ID , 0 , 100 )
808- .associateBy(Scenario ::id)
809- assertEquals(3 , allScenariosById.size)
810- assertTrue { allScenariosById.containsKey(m1.id) }
811- assertTrue { allScenariosById.containsKey(p11.id) }
812- assertTrue { allScenariosById.containsKey(c111.id) }
813-
814- val m1Found = allScenariosById[m1.id]!!
815- assertNull(m1Found.parentLastRun)
816- assertNull(m1Found.rootLastRun)
817-
818- val p11Found = allScenariosById[p11.id]!!
819- assertEquals(m1Found.lastRun, p11Found.parentLastRun)
820- assertEquals(m1Found.lastRun, p11Found.rootLastRun)
821-
822- val c111Found = allScenariosById[c111.id]!!
823- assertNull(c111Found.parentLastRun)
824- assertEquals(m1Found.lastRun, c111Found.rootLastRun)
825- }
826-
827- @Test
828- fun `PROD-8051 - findScenarioById adds null parent and master lastRuns if they don't exist` () {
829- val parentId = " s-no-longer-existing-parent"
830- val rootId = " s-no-longer-existing-root"
831- val organization = Organization (id = ORGANIZATION_ID , security = null )
832- val workspace =
833- Workspace (
834- id = WORKSPACE_ID ,
835- security = null ,
836- key = " w-myWorkspaceKey" ,
837- name = " wonderful_workspace" ,
838- solution = WorkspaceSolution (solutionId = " w-sol-id" ))
839- every { getCurrentAuthenticatedRoles(any()) } returns listOf (" Platform.Admin" )
840- every { organizationService.findOrganizationById(ORGANIZATION_ID ) } returns organization
841- every { workspaceService.findWorkspaceById(ORGANIZATION_ID , WORKSPACE_ID ) } returns workspace
842- every {
843- scenarioServiceImpl.findScenarioByIdNoState(ORGANIZATION_ID , WORKSPACE_ID , parentId)
844- } throws CsmResourceNotFoundException (" Scenario not found" )
845- every {
846- scenarioServiceImpl.findScenarioByIdNoState(ORGANIZATION_ID , WORKSPACE_ID , rootId)
847- } throws CsmResourceNotFoundException (" Scenario not found" )
848-
849- val scenarioId = " s-c1"
850- Scenario (id = scenarioId, parentId = parentId, rootId = rootId)
851- val scenario = Scenario (id = scenarioId, parentId = parentId, rootId = rootId)
852- every {
853- scenarioServiceImpl.findScenarioByIdNoState(ORGANIZATION_ID , WORKSPACE_ID , scenarioId)
854- } returns scenario
855-
856- val scenarioReturned =
857- scenarioServiceImpl.findScenarioById(ORGANIZATION_ID , WORKSPACE_ID , scenarioId)
858-
859- assertNull(scenarioReturned.parentLastRun)
860- assertNull(scenarioReturned.rootLastRun)
861- }
862-
863- @ParameterizedTest(name = " (parentId, rootId) = ({0}, {1})" )
864- @ArgumentsSource(ParentRootScenarioIdsCartesianProductArgumentsProvider ::class )
865- fun `PROD-8051 - findScenarioById adds info about parent and master lastRuns` (
866- parentScenarioId : String? ,
867- rootScenarioId : String?
868- ) {
869- val parentLastRun: ScenarioLastRun ?
870- if (! parentScenarioId.isNullOrBlank()) {
871- parentLastRun =
872- ScenarioLastRun (
873- scenarioRunId = " sr-parentScenarioRunId" ,
874- workflowName = " parent-workflowName" ,
875- workflowId = " parent-workflowId" ,
876- csmSimulationRun = " parent-csmSimulationRun" )
877- val parent = Scenario (id = parentScenarioId, lastRun = parentLastRun)
878- every {
879- scenarioServiceImpl.findScenarioByIdNoState(ORGANIZATION_ID , WORKSPACE_ID , parentScenarioId)
880- } returns parent
881- } else {
882- parentLastRun = null
883- }
884-
885- val rootLastRun: ScenarioLastRun ?
886- if (! rootScenarioId.isNullOrBlank()) {
887- rootLastRun =
888- ScenarioLastRun (
889- scenarioRunId = " sr-rootScenarioRunId" ,
890- workflowName = " root-workflowName" ,
891- workflowId = " root-workflowId" ,
892- csmSimulationRun = " root-csmSimulationRun" )
893- val root = Scenario (id = rootScenarioId, lastRun = rootLastRun)
894- every {
895- scenarioServiceImpl.findScenarioByIdNoState(ORGANIZATION_ID , WORKSPACE_ID , rootScenarioId)
896- } returns root
897- } else {
898- rootLastRun = null
899- }
900-
901- val scenarioId = " S-myScenarioId"
902- val scenario = Scenario (id = scenarioId, parentId = parentScenarioId, rootId = rootScenarioId)
903- val organization = Organization (id = ORGANIZATION_ID , security = null )
904- val workspace =
905- Workspace (
906- id = WORKSPACE_ID ,
907- security = null ,
908- key = " w-myWorkspaceKey" ,
909- name = " wonderful_workspace" ,
910- solution = WorkspaceSolution (solutionId = " w-sol-id" ))
911- every { getCurrentAuthenticatedRoles(any()) } returns listOf (" Platform.Admin" )
912- every { organizationService.findOrganizationById(ORGANIZATION_ID ) } returns organization
913- every { workspaceService.findWorkspaceById(ORGANIZATION_ID , WORKSPACE_ID ) } returns workspace
914- every {
915- scenarioServiceImpl.findScenarioByIdNoState(ORGANIZATION_ID , WORKSPACE_ID , scenarioId)
916- } returns scenario
917-
918- val scenarioReturned =
919- scenarioServiceImpl.findScenarioById(ORGANIZATION_ID , WORKSPACE_ID , scenarioId)
920-
921- assertEquals(parentLastRun, scenarioReturned.parentLastRun)
922- assertEquals(rootLastRun, scenarioReturned.rootLastRun)
923- }
924-
925753 @Test
926754 fun `should test import Scenario method and assert it registered` () {
927755 val scenario = mockScenario()
@@ -1393,6 +1221,7 @@ class ScenarioServiceImplTests {
13931221 }
13941222}
13951223
1224+ /*
13961225private fun <T, U> List<T>.cartesianProduct(otherList: List<U>): List<Pair<T, U>> =
13971226 this.flatMap { elementInThisList ->
13981227 otherList.map { elementInOtherList -> elementInThisList to elementInOtherList }
@@ -1405,3 +1234,4 @@ private class ParentRootScenarioIdsCartesianProductArgumentsProvider : Arguments
14051234 .map { (parentId, rootId) -> Arguments.of(parentId, rootId) }
14061235 .stream()
14071236}
1237+ */
0 commit comments