1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
|
final class TupleDeclTests: PrettyPrintTestCase {
func testBasicTuples() {
let input =
"""
let a = (1, 2, 3)
let a: (Int, Int, Int) = (1, 2, 3)
let a = (1, 2, 3, 4, 5, 6, 70, 80, 90)
let a = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
let a = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
"""
let expected =
"""
let a = (1, 2, 3)
let a: (Int, Int, Int) = (1, 2, 3)
let a = (
1, 2, 3, 4, 5, 6, 70, 80, 90
)
let a = (
1, 2, 3, 4, 5, 6, 7, 8, 9, 10
)
let a = (
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
12
)
"""
assertPrettyPrintEqual(input: input, expected: expected, linelength: 37)
}
func testLabeledTuples() {
let input =
"""
let a = (A: var1, B: var2)
var b: (A: Int, B: Double)
"""
let expected =
"""
let a = (A: var1, B: var2)
var b: (A: Int, B: Double)
"""
assertPrettyPrintEqual(input: input, expected: expected, linelength: 30)
}
func testDiscretionaryNewlineAfterColon() {
let input =
"""
let a = (
reallyLongKeySoTheValueWillWrap:
value,
b: c
)
let a = (
shortKey:
value,
b:
c,
label: Deeply.Nested.InnerMember,
label2:
Deeply.Nested.InnerMember
)
"""
let expected =
"""
let a = (
reallyLongKeySoTheValueWillWrap:
value,
b: c
)
let a = (
shortKey:
value,
b:
c,
label: Deeply.Nested
.InnerMember,
label2:
Deeply.Nested
.InnerMember
)
"""
assertPrettyPrintEqual(input: input, expected: expected, linelength: 25)
}
func testGroupsTrailingComma() {
let input =
"""
let t = (
condition ? firstOption : secondOption,
bar()
)
"""
let expected =
"""
let t = (
condition
? firstOption
: secondOption,
bar()
)
"""
assertPrettyPrintEqual(input: input, expected: expected, linelength: 32)
}
}
|