This repository was archived by the owner on Jun 1, 2023. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +30
-1
lines changed Expand file tree Collapse file tree 2 files changed +30
-1
lines changed Original file line number Diff line number Diff line change @@ -24,7 +24,7 @@ public final class Interface {
2424 return false
2525 }
2626
27- return symbol. id. pathComponents . isEmpty
27+ return symbol. id. context . isEmpty
2828 }
2929
3030 self . relationships = {
Original file line number Diff line number Diff line change @@ -359,4 +359,33 @@ final class InterfaceTypeTests: XCTestCase {
359359 XCTAssertEqual ( members [ 0 ] . name, " someMethod() " )
360360 XCTAssertEqual ( members [ 1 ] . name, " someExtensionMethod() " )
361361 }
362+
363+ public func testToplevelSymbols( ) throws {
364+ let source = #"""
365+ public class SomeClass {
366+ public func someMethod() { }
367+ }
368+
369+ public infix operator ≠
370+
371+ public typealias OtherClass = SomeClass
372+
373+ public func someFunction() { }
374+
375+ public extension OtherClass {
376+ func someExtensionMethod() { }
377+ }
378+ """#
379+
380+ let url = try temporaryFile ( contents: source)
381+ let sourceFile = try SourceFile ( file: url, relativeTo: url. deletingLastPathComponent ( ) )
382+ let module = Module ( name: " Module " , sourceFiles: [ sourceFile] )
383+
384+ XCTAssertEqual ( module. interface. topLevelSymbols. count, 4 )
385+
386+ XCTAssertEqual ( module. interface. topLevelSymbols [ 0 ] . name, " SomeClass " )
387+ XCTAssertEqual ( module. interface. topLevelSymbols [ 1 ] . name, " ≠ " )
388+ XCTAssertEqual ( module. interface. topLevelSymbols [ 2 ] . name, " OtherClass " )
389+ XCTAssertEqual ( module. interface. topLevelSymbols [ 3 ] . name, " someFunction() " )
390+ }
362391}
You can’t perform that action at this time.
0 commit comments