@@ -54,7 +54,9 @@ namespace DEHPMatlab.Tests.DstController
5454 using DEHPMatlab . Services . MappingConfiguration ;
5555 using DEHPMatlab . Services . MatlabConnector ;
5656 using DEHPMatlab . Services . MatlabParser ;
57+ using DEHPMatlab . ViewModel . Dialogs ;
5758 using DEHPMatlab . ViewModel . Row ;
59+ using DEHPMatlab . Views . Dialogs ;
5860
5961 using Moq ;
6062
@@ -130,6 +132,10 @@ public void Setup()
130132 this . hubController . Setup ( x => x . Write ( It . IsAny < ThingTransaction > ( ) ) ) . Returns ( Task . CompletedTask ) ;
131133
132134 this . navigationService = new Mock < INavigationService > ( ) ;
135+
136+ this . navigationService . Setup ( x =>
137+ x . ShowDxDialog < DuplicatedInputsWarningDialog , DuplicatedInputsWarningDialogViewModel > ( It . IsAny < DuplicatedInputsWarningDialogViewModel > ( ) ) )
138+ . Returns ( true ) ;
133139
134140 this . exchangeHistory = new Mock < IExchangeHistoryService > ( ) ;
135141
@@ -308,7 +314,7 @@ public void VerifyTransferMappedThingsToHub()
308314 }
309315 } ;
310316
311- this . dstController . SelectedDstMapResultToTransfer . Add ( elementDefinition ) ;
317+ this . dstController . SelectedDstMapResultToTransfer . Add ( parameter ) ;
312318
313319 var parameterOverride = new ParameterOverride ( Guid . NewGuid ( ) , null , null )
314320 {
@@ -320,37 +326,47 @@ public void VerifyTransferMappedThingsToHub()
320326 Computed = new ValueArray < string > ( new [ ] { "654321" } ) ,
321327 ValueSwitch = ParameterSwitchKind . COMPUTED
322328 }
323- }
329+ } ,
330+ Container = new ElementUsage ( )
324331 } ;
325332
326- this . dstController . SelectedDstMapResultToTransfer . Add ( new ElementUsage
327- {
328- ElementDefinition = elementDefinition ,
329- ParameterOverride =
330- {
331- parameterOverride
332- }
333- } ) ;
333+ this . dstController . SelectedDstMapResultToTransfer . Add ( parameterOverride ) ;
334334
335335 var param = new Parameter ( )
336336 {
337- ParameterType = new BooleanParameterType ( )
337+ ParameterType = new BooleanParameterType ( ) ,
338+ Container = new ElementDefinition ( )
338339 } ;
339340
340341 var variable = new MatlabWorkspaceRowViewModel ( "a" , 0 )
341342 {
342- SelectedParameter = param ,
343- SelectedParameterType = param . ParameterType
343+ SelectedParameter = parameter ,
344+ SelectedParameterType = parameter . ParameterType ,
345+ SelectedCoordinateSystem = param
344346 } ;
345347
346- this . dstController . ParameterVariable . Add ( param , variable ) ;
348+ this . dstController . ParameterVariable . Add ( parameterOverride , variable ) ;
349+ this . dstController . ParameterVariable . Add ( parameter , variable ) ;
347350
348351 this . hubController . Setup ( x =>
349352 x . GetThingById ( It . IsAny < Guid > ( ) , It . IsAny < Iteration > ( ) , out parameter ) ) ;
350353
351354 this . hubController . Setup ( x =>
352355 x . GetThingById ( parameterOverride . Iid , It . IsAny < Iteration > ( ) , out parameterOverride ) ) ;
353356
357+ var paramAsThing = ( Thing ) param ;
358+ var parameterAsThing = ( Thing ) parameter ;
359+ var parameterOverrideAsThing = ( Thing ) parameterOverride ;
360+
361+ this . hubController . Setup ( x =>
362+ x . GetThingById ( paramAsThing . Iid , It . IsAny < Iteration > ( ) , out paramAsThing ) ) ;
363+
364+ this . hubController . Setup ( x =>
365+ x . GetThingById ( parameterAsThing . Iid , It . IsAny < Iteration > ( ) , out parameterAsThing ) ) ;
366+
367+ this . hubController . Setup ( x =>
368+ x . GetThingById ( parameterOverrideAsThing . Iid , It . IsAny < Iteration > ( ) , out parameterOverrideAsThing ) ) ;
369+
354370 Assert . DoesNotThrowAsync ( async ( ) => await this . dstController . TransferMappedThingsToHub ( ) ) ;
355371
356372 this . navigationService . Setup (
@@ -386,10 +402,27 @@ public void VerifyTransferMappedThingsToHub()
386402 x => x . Refresh ( ) , Times . Exactly ( 1 ) ) ;
387403
388404 this . exchangeHistory . Verify ( x =>
389- x . Append ( It . IsAny < Thing > ( ) , It . IsAny < ChangeKind > ( ) ) , Times . Exactly ( 3 ) ) ;
405+ x . Append ( It . IsAny < Thing > ( ) , It . IsAny < ChangeKind > ( ) ) , Times . Exactly ( 5 ) ) ;
390406
391407 this . exchangeHistory . Verify ( x =>
392408 x . Append ( It . IsAny < ParameterValueSetBase > ( ) , It . IsAny < IValueSet > ( ) ) , Times . Exactly ( 2 ) ) ;
409+
410+ this . iteration . Relationship . Add ( new BinaryRelationship ( )
411+ {
412+ Iid = new Guid ( ) ,
413+ Owner = this . hubController . Object . CurrentDomainOfExpertise ,
414+ Target = parameterOverrideAsThing ,
415+ Source = parameterAsThing ,
416+ Name = "CoordinateSystemReference"
417+ } ) ;
418+
419+ this . dstController . ParameterVariable . Add ( parameter , variable ) ;
420+ this . dstController . SelectedDstMapResultToTransfer . Add ( parameter ) ;
421+
422+ Assert . DoesNotThrowAsync ( async ( ) => await this . dstController . TransferMappedThingsToHub ( ) ) ;
423+
424+ this . exchangeHistory . Verify ( x =>
425+ x . Append ( It . IsAny < Thing > ( ) , It . IsAny < ChangeKind > ( ) ) , Times . Exactly ( 8 ) ) ;
393426 }
394427
395428 [ Test ]
@@ -488,6 +521,8 @@ public void VerifyLoadMapping()
488521 }
489522 } ) ;
490523
524+ this . dstController . MatlabAllWorkspaceRowViewModels . Add ( variableRowViewModels . Last ( ) ) ;
525+
491526 Assert . DoesNotThrow ( ( ) => this . dstController . LoadMapping ( ) ) ;
492527 }
493528
@@ -554,9 +589,17 @@ public void VerifySampledFunctionTransferToDst()
554589
555590 this . dstController . MatlabWorkspaceInputRowViewModels . AddRange ( variable . UnwrapVariableRowViewModels ( ) ) ;
556591 variable = this . dstController . MatlabWorkspaceInputRowViewModels . First ( x => x . Name == "anArrayVariable" ) ;
592+ variable . SampledFunctionParameterParameterAssignementToDstRows . Clear ( ) ;
593+
594+ variable . SampledFunctionParameterParameterAssignementToDstRows . Add ( new SampledFunctionParameterParameterAssignementRowViewModel ( "0" )
595+ {
596+ SelectedParameterTypeAssignment = sampledFunction . IndependentParameterType [ 0 ]
597+ } ) ;
557598
558- variable . SampledFunctionParameterParameterAssignementRows [ 0 ] . SelectedParameterTypeAssignment = sampledFunction . IndependentParameterType [ 0 ] ;
559- variable . SampledFunctionParameterParameterAssignementRows [ 1 ] . SelectedParameterTypeAssignment = sampledFunction . DependentParameterType [ 0 ] ;
599+ variable . SampledFunctionParameterParameterAssignementToDstRows . Add ( new SampledFunctionParameterParameterAssignementRowViewModel ( "1" )
600+ {
601+ SelectedParameterTypeAssignment = sampledFunction . DependentParameterType [ 0 ]
602+ } ) ;
560603
561604 var mappedElement = new ParameterToMatlabVariableMappingRowViewModel ( parameter . ValueSet . First ( ) , 0 , ParameterSwitchKind . COMPUTED )
562605 {
@@ -572,9 +615,18 @@ public void VerifySampledFunctionTransferToDst()
572615 var array = ( Array ) variableAfterTransfer . ArrayValue ;
573616 Assert . AreEqual ( 3 , array . GetLength ( 0 ) ) ;
574617
575- variable . RowColumnSelection = RowColumnSelection . Row ;
576- variable . SampledFunctionParameterParameterAssignementRows [ 0 ] . SelectedParameterTypeAssignment = sampledFunction . IndependentParameterType [ 0 ] ;
577- variable . SampledFunctionParameterParameterAssignementRows [ 1 ] . SelectedParameterTypeAssignment = sampledFunction . DependentParameterType [ 0 ] ;
618+ variable . RowColumnSelectionToDst = RowColumnSelection . Row ;
619+ variable . SampledFunctionParameterParameterAssignementToDstRows . Clear ( ) ;
620+
621+ variable . SampledFunctionParameterParameterAssignementToDstRows . Add ( new SampledFunctionParameterParameterAssignementRowViewModel ( "0" )
622+ {
623+ SelectedParameterTypeAssignment = sampledFunction . IndependentParameterType [ 0 ]
624+ } ) ;
625+
626+ variable . SampledFunctionParameterParameterAssignementToDstRows . Add ( new SampledFunctionParameterParameterAssignementRowViewModel ( "1" )
627+ {
628+ SelectedParameterTypeAssignment = sampledFunction . DependentParameterType [ 0 ]
629+ } ) ;
578630
579631 this . dstController . SelectedHubMapResultToTransfer . Add ( mappedElement ) ;
580632
0 commit comments