Skip to content

Commit e0dfddc

Browse files
committed
Convert SortComparator tests
1 parent 4726a86 commit e0dfddc

File tree

2 files changed

+51
-56
lines changed

2 files changed

+51
-56
lines changed

Tests/FoundationEssentialsTests/SortComparatorTests.swift

Lines changed: 25 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -10,56 +10,46 @@
1010
//
1111
//===----------------------------------------------------------------------===//
1212

13-
#if canImport(TestSupport)
14-
import TestSupport
15-
#endif
1613

17-
#if FOUNDATION_FRAMEWORK
18-
@testable import Foundation
19-
#else
14+
import Testing
15+
16+
#if canImport(FoundationEssentials)
2017
@testable import FoundationEssentials
21-
#endif // FOUNDATION_FRAMEWORK
18+
#else
19+
@testable import Foundation
20+
#endif
2221

23-
class SortComparatorTests: XCTestCase {
24-
func test_comparable_descriptors() {
22+
@Suite("SortComparator")
23+
private struct SortComparatorTests {
24+
@Test func comparableDescriptors() {
2525
let intDesc: ComparableComparator<Int> = ComparableComparator<Int>()
26-
XCTAssertEqual(intDesc.compare(0, 1), .orderedAscending)
26+
#expect(intDesc.compare(0, 1) == .orderedAscending)
2727
let result = intDesc.compare(1000, -10)
28-
XCTAssertEqual(result, .orderedDescending)
28+
#expect(result == .orderedDescending)
2929
}
3030

3131

32-
func test_order() {
32+
@Test func order() {
3333
var intDesc: ComparableComparator<Int> = ComparableComparator<Int>(order: .reverse)
34-
XCTAssertEqual(intDesc.compare(0, 1), .orderedDescending)
35-
XCTAssertEqual(intDesc.compare(1000, -10), .orderedAscending)
36-
XCTAssertEqual(intDesc.compare(100, 100), .orderedSame)
34+
#expect(intDesc.compare(0, 1) == .orderedDescending)
35+
#expect(intDesc.compare(1000, -10) == .orderedAscending)
36+
#expect(intDesc.compare(100, 100) == .orderedSame)
3737

3838
intDesc.order = .forward
39-
XCTAssertEqual(intDesc.compare(0, 1), .orderedAscending)
40-
XCTAssertEqual(intDesc.compare(1000, -10), .orderedDescending)
41-
XCTAssertEqual(intDesc.compare(100, 100), .orderedSame)
42-
}
43-
44-
func test_compare_options_descriptor() {
45-
let compareOptions = String.Comparator(options: [.numeric])
46-
XCTAssertEqual(
47-
compareOptions.compare("ttestest005", "test2"),
48-
"test005".compare("test2", options: [.numeric]))
49-
XCTAssertEqual(
50-
compareOptions.compare("test2", "test005"),
51-
"test2".compare("test005", options: [.numeric]))
39+
#expect(intDesc.compare(0, 1) == .orderedAscending)
40+
#expect(intDesc.compare(1000, -10) == .orderedDescending)
41+
#expect(intDesc.compare(100, 100) == .orderedSame)
5242
}
5343

54-
func testAnySortComparatorEquality() {
44+
@Test func anySortComparatorEquality() {
5545
let a: ComparableComparator<Int> = ComparableComparator<Int>()
5646
let b: ComparableComparator<Int> = ComparableComparator<Int>(order: .reverse)
5747
let c: ComparableComparator<Double> = ComparableComparator<Double>()
58-
XCTAssertEqual(AnySortComparator(a), AnySortComparator(a))
59-
XCTAssertEqual(AnySortComparator(b), AnySortComparator(b))
60-
XCTAssertEqual(AnySortComparator(c), AnySortComparator(c))
61-
XCTAssertNotEqual(AnySortComparator(a), AnySortComparator(b))
62-
XCTAssertNotEqual(AnySortComparator(b), AnySortComparator(c))
63-
XCTAssertNotEqual(AnySortComparator(a), AnySortComparator(c))
48+
#expect(AnySortComparator(a) == AnySortComparator(a))
49+
#expect(AnySortComparator(b) == AnySortComparator(b))
50+
#expect(AnySortComparator(c) == AnySortComparator(c))
51+
#expect(AnySortComparator(a) != AnySortComparator(b))
52+
#expect(AnySortComparator(b) != AnySortComparator(c))
53+
#expect(AnySortComparator(a) != AnySortComparator(c))
6454
}
6555
}

Tests/FoundationInternationalizationTests/StringSortComparatorTests.swift

Lines changed: 26 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -10,43 +10,48 @@
1010
//
1111
//===----------------------------------------------------------------------===//
1212

13-
#if canImport(TestSupport)
14-
import TestSupport
15-
#endif
13+
import Testing
1614

17-
#if FOUNDATION_FRAMEWORK
18-
@testable import Foundation
19-
#else
15+
#if canImport(FoundationEssentials)
2016
@testable import FoundationEssentials
2117
@testable import FoundationInternationalization
22-
#endif // FOUNDATION_FRAMEWORK
18+
#else
19+
@testable import Foundation
20+
#endif
2321

24-
class StringSortComparatorTests: XCTestCase {
22+
@Suite("String SortComparator")
23+
private struct StringSortComparatorTests {
24+
@Test func compareOptionsDescriptor() {
25+
let compareOptions = String.Comparator(options: [.numeric])
26+
#expect(
27+
compareOptions.compare("ttestest005", "test2") ==
28+
"test005".compare("test2", options: [.numeric]))
29+
#expect(
30+
compareOptions.compare("test2", "test005") ==
31+
"test2".compare("test005", options: [.numeric]))
32+
}
33+
2534
#if FOUNDATION_FRAMEWORK
2635
// TODO: Until we support String.compare(_:options:locale:) in FoundationInternationalization, only support unlocalized comparisons
2736
// https://github.com/apple/swift-foundation/issues/284
28-
func test_locale() {
37+
@Test func locale() {
2938
let swedishComparator = String.Comparator(options: [], locale: Locale(identifier: "sv"))
30-
XCTAssertEqual(swedishComparator.compare("ă", "ã"), .orderedAscending)
31-
XCTAssertEqual(swedishComparator.locale, Locale(identifier: "sv"))
39+
#expect(swedishComparator.compare("ă", "ã") == .orderedAscending)
40+
#expect(swedishComparator.locale, Locale(identifier: "sv"))
3241
}
3342

34-
func test_nil_locale() {
43+
@Test func nilLocale() {
3544
let swedishComparator = String.Comparator(options: [], locale: nil)
36-
XCTAssertEqual(swedishComparator.compare("ă", "ã"), .orderedDescending)
45+
#expect(swedishComparator.compare("ă", "ã") == .orderedDescending)
3746
}
3847

39-
func test_standard_localized() throws {
40-
// This test is only verified to work with en
41-
guard Locale.current.language.languageCode == .english else {
42-
throw XCTSkip("Test only verified to work with English as current language")
43-
}
44-
48+
@Test(.enabled(if: Locale.current.language.languageCode == .english, "Test only verified to work with English as current language"))
49+
func standardLocalized() throws {
4550
let localizedStandard = String.StandardComparator.localizedStandard
46-
XCTAssertEqual(localizedStandard.compare("ă", "ã"), .orderedAscending)
51+
#expect(localizedStandard.compare("ă", "ã") == .orderedAscending)
4752

4853
let unlocalizedStandard = String.StandardComparator.lexical
49-
XCTAssertEqual(unlocalizedStandard.compare("ă", "ã"), .orderedDescending)
54+
#expect(unlocalizedStandard.compare("ă", "ã") == .orderedDescending)
5055
}
5156
#endif
5257
}

0 commit comments

Comments
 (0)