public void RunConversion() { var utilityNetwork = _eventStore.Projections.Get <UtilityNetworkProjection>(); var dbSettings = new Settings.GeoDatabaseSetting() { Host = "localhost", Database = "open-ftth", Username = "******", Password = "******", Port = "5432" }; var importer = new CableSpanEquipmentImporter(_loggerFactory.CreateLogger <ConduitSpanEquipmentImporter>(), _eventStore, dbSettings, _commandDispatcher, _queryDispatcher); //importer.Run(); }
public async Task PlaceCableFromHH1_to_HH11_ThroughConduitThenDirectyInRouteNetwork() { var utilityNetwork = _eventStore.Projections.Get <UtilityNetworkProjection>(); var importer = new CableSpanEquipmentImporter(_loggerFactory.CreateLogger <ConduitSpanEquipmentImporter>(), _eventStore, new Settings.GeoDatabaseSetting(), _commandDispatcher, _queryDispatcher); Guid cableId = Guid.NewGuid(); List <Guid> segmentIds = new List <Guid> { TestRouteNetwork.S2, TestRouteNetwork.S4, TestRouteNetwork.S13, TestRouteNetwork.S12, }; List <CableConduitRel> conduitRels = new List <CableConduitRel>() { new CableConduitRel() { SpanEquipmentId = TestConduits.Conduit_5x10_HH_1_to_HH_10, InnerConduitNumber = 1 } }; var placeCableResult = importer.PlaceCableSpanEquipment(null, cableId, "TEST1", TestSpecifications.FiberCable_24Fiber, segmentIds, conduitRels); placeCableResult.IsSuccess.Should().BeTrue(); utilityNetwork.TryGetEquipment <SpanEquipment>(cableId, out var placedCable); var routeNetworkQueryResult = await _queryDispatcher.HandleAsync <GetRouteNetworkDetails, Result <GetRouteNetworkDetailsResult> >( new GetRouteNetworkDetails(new InterestIdList() { placedCable.WalkOfInterestId }) { RelatedInterestFilter = RelatedInterestFilterOptions.ReferencesFromRouteElementAndInterestObjects } ); var traceQueryResult = await _queryDispatcher.HandleAsync <GetEquipmentDetails, Result <GetEquipmentDetailsResult> >( new GetEquipmentDetails(new EquipmentIdList() { cableId }) { EquipmentDetailsFilter = new EquipmentDetailsFilterOptions() { IncludeRouteNetworkTrace = true } } ); utilityNetwork.TryGetEquipment <SpanEquipment>(TestConduits.Conduit_5x10_HH_1_to_HH_10, out var routeThroughConduit); // Assert // Check walk of interest var walkOfInterest = routeNetworkQueryResult.Value.Interests[placedCable.WalkOfInterestId]; walkOfInterest.RouteNetworkElementRefs.First().Should().Be(TestRouteNetwork.HH_1); walkOfInterest.RouteNetworkElementRefs.Last().Should().Be(TestRouteNetwork.HH_11); // Check parent relationship placedCable.UtilityNetworkHops[0].ParentAffixes.Should().NotBeNull(); placedCable.UtilityNetworkHops[0].ParentAffixes.Count().Should().Be(1); placedCable.UtilityNetworkHops[0].ParentAffixes.Single(p => p.SpanSegmentId == routeThroughConduit.SpanStructures[1].SpanSegments[0].Id).Should().NotBeNull(); }