Skip to content

Commit 456a40a

Browse files
committed
[Test] Improve signature help tests
1 parent 6f6b9d8 commit 456a40a

14 files changed

+78
-115
lines changed

test/IDE/signature_help_closure_param.swift

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22

33
func apply<Value, Result>(value: Value, body: (Value) -> Result) -> Result {
44
return body(#^CLOSURE_PARAM^#)
5+
// CLOSURE_PARAM: Begin signatures, 1 items
6+
// CLOSURE_PARAM-DAG: Signature[Active]: body(<param active>Value</param>) -> Result
57
}
6-
7-
// CLOSURE_PARAM: Begin signatures, 1 items
8-
// CLOSURE_PARAM-NEXT: Signature[Active]: body(<param active>Value</param>) -> Result
9-
// CLOSURE_PARAM-NEXT: End signatures

test/IDE/signature_help_currying.swift

Lines changed: 20 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -42,39 +42,33 @@ func topLevelCurried(x: Int) -> (Double) -> (String) -> Void {
4242

4343
func testCurryTopLevel() {
4444
topLevelCurried(x: 1)(#^CURRY_TOPLEVEL^#)
45+
// CURRY_TOPLEVEL: Begin signatures, 1 items
46+
// CURRY_TOPLEVEL-DAG: Signature[Active]: (<param active>Double</param>) -> (String) -> Void
4547
}
4648

4749
func testCurryMemberPartial() {
4850
Adder.add(#^CURRY_MEMBER_PARTIAL^#)
51+
// CURRY_MEMBER_PARTIAL: Begin signatures, 8 items
52+
// CURRY_MEMBER_PARTIAL-DAG: Signature[Active]: add(<param name="self" active>_ self: Adder</param>) -> (Int, Int) -> Int
53+
// CURRY_MEMBER_PARTIAL-DAG: Signature: add(<param name="self" active>_ self: Adder</param>) -> (inout Int) -> ()
54+
// CURRY_MEMBER_PARTIAL-DAG: Signature: add(<param name="self" active>_ self: Adder</param>) -> (AdditiveArithmetic, AdditiveArithmetic) -> AdditiveArithmetic
55+
// CURRY_MEMBER_PARTIAL-DAG: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Double?, Float, Int) -> Double
56+
// CURRY_MEMBER_PARTIAL-DAG: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Double, Float, Int) -> Double
57+
// CURRY_MEMBER_PARTIAL-DAG: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Double...) -> Double
58+
// CURRY_MEMBER_PARTIAL-DAG: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Int, Int, (Int, Int) throws -> Int) throws -> Int?
59+
// CURRY_MEMBER_PARTIAL-DAG: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Int) -> (Int) -> Int
4960
}
5061

5162
func testCurryMemberFull() {
5263
let adder = Adder()
5364
Adder.add(adder)(#^CURRY_MEMBER_FULL^#)
65+
// CURRY_MEMBER_FULL: Begin signatures, 8 items
66+
// CURRY_MEMBER_FULL-DAG: Signature[Active]: (<param name="x" active>_ x: Int</param>, <param name="y">to: Int</param>) -> Int
67+
// CURRY_MEMBER_FULL-DAG: Signature: (<param name="x" active>oneTo: inout Int</param>)
68+
// CURRY_MEMBER_FULL-DAG: Signature: (<param name="x" active>_ x: AdditiveArithmetic</param>, <param name="y">to: AdditiveArithmetic</param>) -> AdditiveArithmetic
69+
// CURRY_MEMBER_FULL-DAG: Signature: (<param name="first" active>first: Double!</param>, <param name="second">second: Float</param>, <param name="third">third: Int</param>) -> Double
70+
// CURRY_MEMBER_FULL-DAG: Signature: (<param name="param1" active>arg1: Double</param>, <param name="arg2">arg2: Float</param>, <param name="param3">arg3: Int</param>) -> Double
71+
// CURRY_MEMBER_FULL-DAG: Signature: (<param name="numbers" active>numbers: Double...</param>) -> Double
72+
// CURRY_MEMBER_FULL-DAG: Signature: (<param name="x" active>x: Int</param>, <param name="y">y: Int</param>, <param name="adder">with: (Int, Int) throws -> Int</param>) throws -> Int!
73+
// CURRY_MEMBER_FULL-DAG: Signature: (<param name="x" active>x: Int</param>) -> (Int) -> Int
5474
}
55-
56-
// CURRY_TOPLEVEL: Begin signatures, 1 items
57-
// CURRY_TOPLEVEL-NEXT: Signature[Active]: (<param active>Double</param>) -> (String) -> Void
58-
// CURRY_TOPLEVEL-NEXT: End signatures
59-
60-
// CURRY_MEMBER_PARTIAL: Begin signatures, 8 items
61-
// CURRY_MEMBER_PARTIAL-NEXT: Signature[Active]: add(<param name="self" active>_ self: Adder</param>) -> (Int, Int) -> Int
62-
// CURRY_MEMBER_PARTIAL-NEXT: Signature: add(<param name="self" active>_ self: Adder</param>) -> (inout Int) -> ()
63-
// CURRY_MEMBER_PARTIAL-NEXT: Signature: add(<param name="self" active>_ self: Adder</param>) -> (AdditiveArithmetic, AdditiveArithmetic) -> AdditiveArithmetic
64-
// CURRY_MEMBER_PARTIAL-NEXT: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Double?, Float, Int) -> Double
65-
// CURRY_MEMBER_PARTIAL-NEXT: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Double, Float, Int) -> Double
66-
// CURRY_MEMBER_PARTIAL-NEXT: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Double...) -> Double
67-
// CURRY_MEMBER_PARTIAL-NEXT: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Int, Int, (Int, Int) throws -> Int) throws -> Int?
68-
// CURRY_MEMBER_PARTIAL-NEXT: Signature: add(<param name="self" active>_ self: Adder</param>) -> (Int) -> (Int) -> Int
69-
// CURRY_MEMBER_PARTIAL-NEXT: End signatures
70-
71-
// CURRY_MEMBER_FULL: Begin signatures, 8 items
72-
// CURRY_MEMBER_FULL-NEXT: Signature[Active]: (<param name="x" active>_ x: Int</param>, <param name="y">to: Int</param>) -> Int
73-
// CURRY_MEMBER_FULL-NEXT: Signature: (<param name="x" active>oneTo: inout Int</param>)
74-
// CURRY_MEMBER_FULL-NEXT: Signature: (<param name="x" active>_ x: AdditiveArithmetic</param>, <param name="y">to: AdditiveArithmetic</param>) -> AdditiveArithmetic
75-
// CURRY_MEMBER_FULL-NEXT: Signature: (<param name="first" active>first: Double!</param>, <param name="second">second: Float</param>, <param name="third">third: Int</param>) -> Double
76-
// CURRY_MEMBER_FULL-NEXT: Signature: (<param name="param1" active>arg1: Double</param>, <param name="arg2">arg2: Float</param>, <param name="param3">arg3: Int</param>) -> Double
77-
// CURRY_MEMBER_FULL-NEXT: Signature: (<param name="numbers" active>numbers: Double...</param>) -> Double
78-
// CURRY_MEMBER_FULL-NEXT: Signature: (<param name="x" active>x: Int</param>, <param name="y">y: Int</param>, <param name="adder">with: (Int, Int) throws -> Int</param>) throws -> Int!
79-
// CURRY_MEMBER_FULL-NEXT: Signature: (<param name="x" active>x: Int</param>) -> (Int) -> Int
80-
// CURRY_MEMBER_FULL-NEXT: End signatures

test/IDE/signature_help_default_args.swift

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,12 @@ func add(x: Int = importantValue) {}
2323
func add(x: Int, line: UInt = #line, file: StaticString = #file) {}
2424

2525
add(#^DEFAULT_ARGS^#)
26-
27-
// DEFAULT_ARGS: Begin signatures, 8 items
28-
// DEFAULT_ARGS-NEXT: Signature[Active]: add(<param name="x" active>_ x: Int = 10</param>, <param name="y">to: Int</param>) -> Int
29-
// DEFAULT_ARGS-NEXT: Signature: add(<param name="x" active>oneTo: inout Int</param>)
30-
// DEFAULT_ARGS-NEXT: Signature: add(<param name="x" active>_ x: Int</param>, <param name="y">to: Int? = nil</param>) -> String
31-
// DEFAULT_ARGS-NEXT: Signature: add(<param name="first" active>first: Double!</param>, <param name="second">second: Float = .pi</param>, <param name="third">third: Int</param>) -> Double
32-
// DEFAULT_ARGS-NEXT: Signature: add(<param name="s" active>s: S = S(a: false)</param>) -> Double
33-
// DEFAULT_ARGS-NEXT: Signature: add(<param name="x" active>x: Int</param>, <param name="y">y: Int</param>, <param name="adder">with: (Int, Int) -> Int = { $0 + $1 }</param>) -> Int
34-
// DEFAULT_ARGS-NEXT: Signature: add(<param name="x" active>x: Int = importantValue</param>)
35-
// DEFAULT_ARGS-NEXT: Signature: add(<param name="x" active>x: Int</param>, <param name="line">line: UInt = #line</param>, <param name="file">file: StaticString = #file</param>)
36-
// DEFAULT_ARGS-NEXT: End signatures
26+
// DEFAULT_ARGS: Begin signatures, 8 items
27+
// DEFAULT_ARGS-DAG: Signature[Active]: add(<param name="x" active>_ x: Int = 10</param>, <param name="y">to: Int</param>) -> Int
28+
// DEFAULT_ARGS-DAG: Signature: add(<param name="x" active>oneTo: inout Int</param>)
29+
// DEFAULT_ARGS-DAG: Signature: add(<param name="x" active>_ x: Int</param>, <param name="y">to: Int? = nil</param>) -> String
30+
// DEFAULT_ARGS-DAG: Signature: add(<param name="first" active>first: Double!</param>, <param name="second">second: Float = .pi</param>, <param name="third">third: Int</param>) -> Double
31+
// DEFAULT_ARGS-DAG: Signature: add(<param name="s" active>s: S = S(a: false)</param>) -> Double
32+
// DEFAULT_ARGS-DAG: Signature: add(<param name="x" active>x: Int</param>, <param name="y">y: Int</param>, <param name="adder">with: (Int, Int) -> Int = { $0 + $1 }</param>) -> Int
33+
// DEFAULT_ARGS-DAG: Signature: add(<param name="x" active>x: Int = importantValue</param>)
34+
// DEFAULT_ARGS-DAG: Signature: add(<param name="x" active>x: Int</param>, <param name="line">line: UInt = #line</param>, <param name="file">file: StaticString = #file</param>)

test/IDE/signature_help_doc.swift

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,5 @@ func add(_ x: Int, to y: Int) -> Int {
1717
}
1818

1919
add(#^DOC^#)
20-
21-
// DOC: Begin signatures, 1 items
22-
// DOC-NEXT: Signature[Active]: add(<param name="x" active>_ x: Int</param>, <param name="y">to: Int</param>) -> Int; Documentation=Adds two integers.\n\n- Parameters:\n - x: The first integer to add.\n - y: The second integer to add.\n\nUsage:\n```swift\nadd(1, to: 2) // 3\n```\n\n- Returns: The sum of the two integers.
23-
// DOC-NEXT: End signatures
20+
// DOC: Begin signatures, 1 items
21+
// DOC-DAG: Signature[Active]: add(<param name="x" active>_ x: Int</param>, <param name="y">to: Int</param>) -> Int; Documentation=Adds two integers.\n\n- Parameters:\n - x: The first integer to add.\n - y: The second integer to add.\n\nUsage:\n```swift\nadd(1, to: 2) // 3\n```\n\n- Returns: The sum of the two integers.

test/IDE/signature_help_enum_case.swift

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,12 @@ enum Barcode {
88

99
func testLabeled() {
1010
Barcode.upc(#^LABELLED^#, manufacturer: 85909, product: 51226, check: 3)
11+
// LABELLED: Begin signatures, 1 items
12+
// LABELLED-DAG: Signature[Active]: upc(<param name="numberSystem" active>numberSystem: Int</param>, <param name="manufacturer">manufacturer: Int</param>, <param name="product">product: Int</param>, <param name="check">check: Int</param>) -> Barcode
1113
}
1214

1315
func testUnlabled() {
1416
Barcode.qrCode(#^UNLABELLED^#)
17+
// UNLABELLED: Begin signatures, 1 items
18+
// UNLABELLED-DAG: Signature[Active]: qrCode(<param active>String</param>) -> Barcode
1519
}
16-
17-
// LABELLED: Begin signatures, 1 items
18-
// LABELLED-NEXT: Signature[Active]: upc(<param name="numberSystem" active>numberSystem: Int</param>, <param name="manufacturer">manufacturer: Int</param>, <param name="product">product: Int</param>, <param name="check">check: Int</param>) -> Barcode
19-
// LABELLED-NEXT: End signatures
20-
21-
// UNLABELLED: Begin signatures, 1 items
22-
// UNLABELLED-NEXT: Signature[Active]: qrCode(<param active>String</param>) -> Barcode
23-
// UNLABELLED-NEXT: End signatures

test/IDE/signature_help_init.swift

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,5 @@ struct Person {
55
}
66

77
Person(name: "John", age: #^INIT^#)
8-
9-
// INIT: Begin signatures, 1 items
10-
// INIT-NEXT: Signature[Active]: init(<param name="name">name: String</param>, <param name="age" active>age: Int</param>, <param name="job">profession: String</param>)
11-
// INIT-NEXT: End signatures
8+
// INIT: Begin signatures, 1 items
9+
// INIT-DAG: Signature[Active]: init(<param name="name">name: String</param>, <param name="age" active>age: Int</param>, <param name="job">profession: String</param>)

test/IDE/signature_help_member_closure.swift

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@ struct Observable {
55

66
func notify() async throws {
77
_ = try await observer("EVENT", #^MEMBER_CLOSURE^#, [:])
8+
// MEMBER_CLOSURE: Begin signatures, 1 items
9+
// MEMBER_CLOSURE-DAG: Signature[Active]: observer(<param>String</param>, <param active>Int?</param>, <param>[AnyHashable : [Double?]]</param>) async throws -> [Observable?]
810
}
911
}
10-
11-
// MEMBER_CLOSURE: Begin signatures, 1 items
12-
// MEMBER_CLOSURE-NEXT: Signature[Active]: observer(<param>String</param>, <param active>Int?</param>, <param>[AnyHashable : [Double?]]</param>) async throws -> [Observable?]
13-
// MEMBER_CLOSURE-NEXT: End signatures

test/IDE/signature_help_member_func.swift

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,12 @@ struct Adder {
3636

3737
let adder = Adder()
3838
adder.add(#^MEMBER_FUNC^#)
39-
40-
// MEMBER_FUNC: Begin signatures, 8 items
41-
// MEMBER_FUNC-NEXT: Signature[Active]: add(<param name="x" active>_ x: Int</param>, <param name="y">to: Int</param>) -> Int
42-
// MEMBER_FUNC-NEXT: Signature: add(<param name="x" active>oneTo: inout Int</param>)
43-
// MEMBER_FUNC-NEXT: Signature: add(<param name="x" active>_ x: AdditiveArithmetic</param>, <param name="y">to: AdditiveArithmetic</param>) -> AdditiveArithmetic
44-
// MEMBER_FUNC-NEXT: Signature: add(<param name="first" active>first: Double!</param>, <param name="second">second: Float</param>, <param name="third">third: Int</param>) -> Double
45-
// MEMBER_FUNC-NEXT: Signature: add(<param name="param1" active>arg1: Double</param>, <param name="arg2">arg2: Float</param>, <param name="param3">arg3: Int</param>) -> Double
46-
// MEMBER_FUNC-NEXT: Signature: add(<param name="numbers" active>numbers: Double...</param>) -> Double
47-
// MEMBER_FUNC-NEXT: Signature: add(<param name="x" active>x: Int</param>, <param name="y">y: Int</param>, <param name="adder">with: (Int, Int) -> Int</param>) -> Int
48-
// MEMBER_FUNC-NEXT: Signature: add(<param name="x" active>x: Int</param>) -> (Int) -> Int
49-
// MEMBER_FUNC-NEXT: End signatures
39+
// MEMBER_FUNC: Begin signatures, 8 items
40+
// MEMBER_FUNC-DAG: Signature[Active]: add(<param name="x" active>_ x: Int</param>, <param name="y">to: Int</param>) -> Int
41+
// MEMBER_FUNC-DAG: Signature: add(<param name="x" active>oneTo: inout Int</param>)
42+
// MEMBER_FUNC-DAG: Signature: add(<param name="x" active>_ x: AdditiveArithmetic</param>, <param name="y">to: AdditiveArithmetic</param>) -> AdditiveArithmetic
43+
// MEMBER_FUNC-DAG: Signature: add(<param name="first" active>first: Double!</param>, <param name="second">second: Float</param>, <param name="third">third: Int</param>) -> Double
44+
// MEMBER_FUNC-DAG: Signature: add(<param name="param1" active>arg1: Double</param>, <param name="arg2">arg2: Float</param>, <param name="param3">arg3: Int</param>) -> Double
45+
// MEMBER_FUNC-DAG: Signature: add(<param name="numbers" active>numbers: Double...</param>) -> Double
46+
// MEMBER_FUNC-DAG: Signature: add(<param name="x" active>x: Int</param>, <param name="y">y: Int</param>, <param name="adder">with: (Int, Int) -> Int</param>) -> Int
47+
// MEMBER_FUNC-DAG: Signature: add(<param name="x" active>x: Int</param>) -> (Int) -> Int

test/IDE/signature_help_member_generic.swift

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,5 @@ struct Vector<Value> {
88

99
let vec = Vector(elements: [1.0, 2.1, 3.4])
1010
vec.dot(with: #^MEMBER_GENERIC^#)
11-
12-
// MEMBER_GENERIC: Begin signatures, 1 items
13-
// MEMBER_GENERIC-NEXT: Signature[Active]: dot(<param name="other" active>with: Vector<Double></param>) -> Double
14-
// MEMBER_GENERIC-NEXT: End signatures
11+
// MEMBER_GENERIC: Begin signatures, 1 items
12+
// MEMBER_GENERIC-DAG: Signature[Active]: dot(<param name="other" active>with: Vector<Double></param>) -> Double

test/IDE/signature_help_member_subscript.swift

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,8 @@ struct Matrix {
1616

1717
let matrix = Matrix()
1818
matrix[#^MEMBER_SUBSCRIPT^#]
19-
20-
// MEMBER_SUBSCRIPT: Begin signatures, 4 items
21-
// MEMBER_SUBSCRIPT-NEXT: Signature[Active]: subscript(<param active>keyPath: KeyPath<Matrix, Value></param>) -> Value
22-
// MEMBER_SUBSCRIPT-NEXT: Signature: subscript(<param name="row" active>row: Int</param>, <param name="column">column: Int</param>) -> Int
23-
// MEMBER_SUBSCRIPT-NEXT: Signature: subscript(<param name="r" active>row: Int</param>) -> [Int]
24-
// MEMBER_SUBSCRIPT-NEXT: Signature: subscript(<param name="c" active>column: Int</param>) -> [Int]
25-
// MEMBER_SUBSCRIPT-NEXT: End signatures
19+
// MEMBER_SUBSCRIPT: Begin signatures, 4 items
20+
// MEMBER_SUBSCRIPT-DAG: Signature[Active]: subscript(<param active>keyPath: KeyPath<Matrix, Value></param>) -> Value
21+
// MEMBER_SUBSCRIPT-DAG: Signature: subscript(<param name="row" active>row: Int</param>, <param name="column">column: Int</param>) -> Int
22+
// MEMBER_SUBSCRIPT-DAG: Signature: subscript(<param name="r" active>row: Int</param>) -> [Int]
23+
// MEMBER_SUBSCRIPT-DAG: Signature: subscript(<param name="c" active>column: Int</param>) -> [Int]

0 commit comments

Comments
 (0)