@@ -441,6 +441,8 @@ public void DanglingWordformLinks()
441441 var danglingMorphGoodSenseGuid = "9665bf3b-2aab-4f7f-88a9-4ca738b75110" ;
442442 var danglingMorphNoRepairGuid = "5752ed24-40e1-4282-9ba0-d82c89592432" ;
443443 var danglingMorphNoRepairAfGuid = "1f568cae-b0f8-413d-84a6-41cbd90923e9" ;
444+ var disownedOwnerGuid = "16827d7a-cf4e-45f8-aaa1-66cef5c2cc4d" ;
445+ var disownedGuid = "1f568cae-b0f8-413d-84a6-41cbd90923e9" ;
444446
445447 // Verify initial state.
446448 // We start out with morph bundles that have broken links.
@@ -463,7 +465,7 @@ public void DanglingWordformLinks()
463465 "//rt[@class=\" WfiMorphBundle\" and @guid=\" " + danglingMorphNoRepairAfGuid + "\" ]/Morph/objsur[@guid=\" " + danglingMsaGuid + "\" ]" , 1 ) ;
464466
465467 // Check errors
466- Assert . AreEqual ( 10 , _errors . Count , "Unexpected number of errors found." ) ;
468+ Assert . AreEqual ( 11 , _errors . Count , "Unexpected number of errors found." ) ;
467469 Assert . True ( _errors [ 0 ] . StartsWith ( "Removing dangling link to '" + danglingMsaGuid + "' (class='LexEntry'" ) ,
468470 "Error message is incorrect." ) ; // OriginalFixer--ksRemovingLinkToNonexistingObject
469471 Assert . That ( _errors [ 1 ] , Is . EqualTo ( "Fixing link to MSA based on Sense MSA (class='WfiMorphBundle', guid='" + repairableBundleGuid + "')." ) ,
@@ -480,7 +482,9 @@ public void DanglingWordformLinks()
480482 "Error message is incorrect." ) ; // MorphBundleFixer--ksRemovingDanglingMsa
481483 Assert . That ( _errors [ 8 ] , Is . EqualTo ( "Removing dangling link to Form '" + danglingMsaGuid + "' for WfiMorphBundle '" + danglingMorphNoRepairGuid + "'." ) ,
482484 "Error message is incorrect." ) ; // MorphBundleFixer--ksRemovingDanglingMorph
483- Assert . That ( _errors [ 9 ] , Is . EqualTo ( "Removing dangling link to Form '" + danglingMsaGuid + "' for WfiMorphBundle '" + danglingMorphNoRepairAfGuid + "'." ) ,
485+ Assert . True ( _errors [ 9 ] . StartsWith ( "Removing disowned object (invalid ownerguid='" + disownedOwnerGuid + "', class='WfiMorphBundle', guid='" + disownedGuid ) ,
486+ "Error message is incorrect." ) ; // MorphBundleFixer--ksRemovingDanglingMorph
487+ Assert . That ( _errors [ 10 ] , Is . EqualTo ( "Removing dangling link to Form '" + danglingMsaGuid + "' for WfiMorphBundle '" + danglingMorphNoRepairAfGuid + "'." ) ,
484488 "Error message is incorrect." ) ; // MorphBundleFixer--ksRemovingDanglingMorph
485489
486490 // Check file repair
@@ -498,6 +502,8 @@ public void DanglingWordformLinks()
498502 "//rt[@class=\" WfiMorphBundle\" and @guid=\" " + danglingMorphNoRepairGuid + "\" ]/Morph" , 0 ) ; // must remove Morph, not just child objsur
499503 AssertThatXmlIn . File ( Path . Combine ( testPath , "BasicFixup.fwdata" ) ) . HasSpecifiedNumberOfMatchesForXpath (
500504 "//rt[@class=\" WfiMorphBundle\" and @guid=\" " + danglingMorphNoRepairAfGuid + "\" ]/Morph/objsur" , 0 ) ;
505+ AssertThatXmlIn . File ( Path . Combine ( testPath , "BasicFixup.fwdata" ) ) . HasSpecifiedNumberOfMatchesForXpath (
506+ "//rt[@class=\" WfiMorphBundle\" and @guid=\" " + disownedGuid + "\" ]/Morph/objsur" , 0 ) ;
501507 }
502508
503509 /// <summary>
0 commit comments