Skip to content

Commit 509ffb3

Browse files
authored
Merge pull request swiftlang#29446 from lorentey/substring-test-cleanup
[test] Adjust new Substring test
2 parents fecaca5 + b7eb2fc commit 509ffb3

File tree

1 file changed

+16
-23
lines changed

1 file changed

+16
-23
lines changed

test/stdlib/subString.swift

Lines changed: 16 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,17 @@ func checkMatch<S: Collection, T: Collection>(_ x: S, _ y: T, _ i: S.Index)
1212
expectEqual(x[i], y[i])
1313
}
1414

15-
func checkMatchContiguousStorage<S: Collection, T: Collection>(_ x: S, _ y: T, expected: Bool)
15+
func checkMatchContiguousStorage<S: Collection, T: Collection>(_ x: S, _ y: T)
1616
where S.Element == T.Element, S.Element: Equatable
1717
{
1818
let xElement = x.withContiguousStorageIfAvailable { $0.first }
1919
let yElement = y.withContiguousStorageIfAvailable { $0.first }
2020

21-
if expected {
22-
expectEqual(xElement, yElement)
23-
} else {
24-
expectNotEqual(xElement, yElement)
25-
}
21+
expectEqual(xElement, yElement)
2622
}
2723

28-
func checkHasContiguousStorage<S: Collection>(_ x: S, expected: Bool) {
29-
let hasStorage = x.withContiguousStorageIfAvailable { _ in true } ?? false
30-
expectEqual(hasStorage, expected)
24+
func checkHasContiguousStorage<S: Collection>(_ x: S) {
25+
expectTrue(x.withContiguousStorageIfAvailable { _ in true } ?? false)
3126
}
3227

3328
func checkHasContiguousStorageSubstring(_ x: Substring.UTF8View) {
@@ -252,23 +247,21 @@ SubstringTests.test("UTF8View") {
252247
expectEqual("", String(u.dropFirst(100))!)
253248
expectEqual("", String(u.dropLast(100))!)
254249

255-
let expectSubstringWCSIA: Bool
256-
// This availability guard should refer to a concrete OS version in
257-
// future.
258-
if #available(macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, *) {
259-
expectSubstringWCSIA = true
260-
} else {
261-
expectSubstringWCSIA = false
262-
}
263250

264-
checkHasContiguousStorage(s.utf8, expected: true) // Strings always do
265-
checkHasContiguousStorage(t, expected: expectSubstringWCSIA)
266-
checkHasContiguousStorage(u, expected: expectSubstringWCSIA)
251+
checkHasContiguousStorage(s.utf8) // Strings always do
267252
checkHasContiguousStorageSubstring(t)
268253
checkHasContiguousStorageSubstring(u)
269-
checkMatchContiguousStorage(Array(s.utf8), s.utf8, expected: true)
270-
checkMatchContiguousStorage(Array(t), t, expected: expectSubstringWCSIA)
271-
checkMatchContiguousStorage(Array(u), u, expected: expectSubstringWCSIA)
254+
checkMatchContiguousStorage(Array(s.utf8), s.utf8)
255+
256+
// The specialization for Substring.withContiguousStorageIfAvailable was
257+
// added in https://github.com/apple/swift/pull/29146.
258+
guard #available(macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, *) else {
259+
return
260+
}
261+
checkHasContiguousStorage(t)
262+
checkHasContiguousStorage(u)
263+
checkMatchContiguousStorage(Array(t), t)
264+
checkMatchContiguousStorage(Array(u), u)
272265
}
273266
}
274267

0 commit comments

Comments
 (0)