@@ -13,7 +13,7 @@ import XCTest
1313@_spi ( ExternalLinks) @testable import SwiftDocC
1414
1515class ExternalRenderNodeTests : XCTestCase {
16- func generateExternalResover ( ) -> TestMultiResultExternalReferenceResolver {
16+ func generateExternalResolver ( ) -> TestMultiResultExternalReferenceResolver {
1717 let externalResolver = TestMultiResultExternalReferenceResolver ( )
1818 externalResolver. bundleID = " com.test.external "
1919 externalResolver. entitiesToReturn [ " /path/to/external/swiftArticle " ] = . success(
@@ -37,23 +37,32 @@ class ExternalRenderNodeTests: XCTestCase {
3737 referencePath: " /path/to/external/swiftSymbol " ,
3838 title: " SwiftSymbol " ,
3939 kind: . class,
40- language: . swift
40+ language: . swift,
41+ declarationFragments: . init( declarationFragments: [
42+ . init( kind: . keyword, spelling: " class " , preciseIdentifier: nil ) ,
43+ . init( kind: . text, spelling: " " , preciseIdentifier: nil ) ,
44+ . init( kind: . identifier, spelling: " SwiftSymbol " , preciseIdentifier: nil )
45+ ] )
4146 )
4247 )
4348 externalResolver. entitiesToReturn [ " /path/to/external/objCSymbol " ] = . success(
4449 . init(
4550 referencePath: " /path/to/external/objCSymbol " ,
4651 title: " ObjCSymbol " ,
4752 kind: . function,
48- language: . objectiveC
53+ language: . objectiveC,
54+ declarationFragments: . init( declarationFragments: [
55+ . init( kind: . text, spelling: " - " , preciseIdentifier: nil ) ,
56+ . init( kind: . identifier, spelling: " ObjCSymbol " , preciseIdentifier: nil ) ,
57+ ] )
4958 )
5059 )
5160 return externalResolver
5261 }
5362
5463 func testExternalRenderNode( ) throws {
5564
56- let externalResolver = generateExternalResover ( )
65+ let externalResolver = generateExternalResolver ( )
5766 let ( _, bundle, context) = try testBundleAndContext (
5867 copying: " MixedLanguageFramework " ,
5968 externalResolvers: [ externalResolver. bundleID: externalResolver]
@@ -146,16 +155,18 @@ class ExternalRenderNodeTests: XCTestCase {
146155 )
147156 XCTAssertEqual ( swiftNavigatorExternalRenderNode. metadata. title, swiftTitle)
148157 XCTAssertEqual ( swiftNavigatorExternalRenderNode. metadata. navigatorTitle, navigatorTitle)
158+ XCTAssertEqual ( swiftNavigatorExternalRenderNode. metadata. fragments, fragments)
149159
150160 let objcNavigatorExternalRenderNode = try XCTUnwrap (
151161 NavigatorExternalRenderNode ( renderNode: externalRenderNode, trait: . interfaceLanguage( " objc " ) )
152162 )
153163 XCTAssertEqual ( objcNavigatorExternalRenderNode. metadata. title, occTitle)
154164 XCTAssertEqual ( objcNavigatorExternalRenderNode. metadata. navigatorTitle, occNavigatorTitle)
165+ XCTAssertEqual ( objcNavigatorExternalRenderNode. metadata. fragments, occFragments)
155166 }
156167
157168 func testNavigatorWithExternalNodes( ) throws {
158- let externalResolver = generateExternalResover ( )
169+ let externalResolver = generateExternalResolver ( )
159170 let ( _, bundle, context) = try testBundleAndContext (
160171 copying: " MixedLanguageFramework " ,
161172 externalResolvers: [ externalResolver. bundleID: externalResolver]
@@ -204,14 +215,14 @@ class ExternalRenderNodeTests: XCTestCase {
204215 let occExternalNodes = renderIndex. interfaceLanguages [ " occ " ] ? . first { $0. path == " /documentation/mixedlanguageframework " } ? . children? . filter { $0. path? . contains ( " /path/to/external " ) ?? false } ?? [ ]
205216 XCTAssertEqual ( swiftExternalNodes. count, 2 )
206217 XCTAssertEqual ( occExternalNodes. count, 2 )
207- XCTAssertEqual ( swiftExternalNodes. map ( \. title) , [ " SwiftArticle " , " SwiftSymbol " ] )
208- XCTAssertEqual ( occExternalNodes. map ( \. title) , [ " ObjCArticle " , " ObjCSymbol " ] )
218+ XCTAssertEqual ( swiftExternalNodes. map ( \. title) , [ " SwiftArticle " , " class SwiftSymbol" ] )
219+ XCTAssertEqual ( occExternalNodes. map ( \. title) , [ " ObjCArticle " , " - ObjCSymbol" ] )
209220 XCTAssert ( swiftExternalNodes. allSatisfy ( \. isExternal) )
210221 XCTAssert ( occExternalNodes. allSatisfy ( \. isExternal) )
211222 }
212223
213224 func testNavigatorWithExternalNodesOnlyAddsCuratedNodesToNavigator( ) throws {
214- let externalResolver = generateExternalResover ( )
225+ let externalResolver = generateExternalResolver ( )
215226
216227 let ( _, bundle, context) = try testBundleAndContext (
217228 copying: " MixedLanguageFramework " ,
@@ -265,7 +276,7 @@ class ExternalRenderNodeTests: XCTestCase {
265276 XCTAssertEqual ( swiftExternalNodes. count, 1 )
266277 XCTAssertEqual ( occExternalNodes. count, 1 )
267278 XCTAssertEqual ( swiftExternalNodes. map ( \. title) , [ " SwiftArticle " ] )
268- XCTAssertEqual ( occExternalNodes. map ( \. title) , [ " ObjCSymbol " ] )
279+ XCTAssertEqual ( occExternalNodes. map ( \. title) , [ " - ObjCSymbol" ] )
269280 XCTAssert ( swiftExternalNodes. allSatisfy ( \. isExternal) )
270281 XCTAssert ( occExternalNodes. allSatisfy ( \. isExternal) )
271282 }
0 commit comments