Skip to content

Commit 4fe2752

Browse files
authored
[Swift 6]: Update Exercises batch 4 (#788)
* Update Swift tools version to 6.0 and refactor tests for Collatz Conjecture * Re-generate test files
1 parent 980ad89 commit 4fe2752

File tree

15 files changed

+338
-318
lines changed

15 files changed

+338
-318
lines changed

exercises/practice/clock/.meta/template.swift

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,33 @@
1-
import XCTest
1+
import Testing
2+
import Foundation
23
@testable import {{exercise|camelCase}}
3-
class {{exercise|camelCase}}Tests: XCTestCase {
4-
let runAll = Bool(ProcessInfo.processInfo.environment["RUNALL", default: "false"]) ?? false
54

5+
let RUNALL = Bool(ProcessInfo.processInfo.environment["RUNALL", default: "false"]) ?? false
6+
7+
@Suite struct {{exercise|camelCase}}Tests {
68
{% outer: for case in cases %}
79
{%- for subCases in case.cases %}
810
{%- if forloop.outer.first and forloop.first %}
9-
func test{{subCases.description |camelCase }}() {
11+
@Test("{{subCases.description}}")
1012
{%- else %}
11-
func test{{subCases.description |camelCase }}() throws {
12-
try XCTSkipIf(true && !runAll) // change true to false to run this test
13+
@Test("{{subCases.description}}", .enabled(if: RUNALL))
1314
{%- endif %}
15+
func test{{subCases.description |camelCase }}() {
1416
{%- if subCases.property == "create" %}
15-
XCTAssertEqual(Clock(hours: {{subCases.input.hour}}, minutes: {{subCases.input.minute}}).description, "{{subCases.expected}}")
17+
#expect(Clock(hours: {{subCases.input.hour}}, minutes: {{subCases.input.minute}}).description == "{{subCases.expected}}")
1618
{%- elif subCases.property == "add"%}
1719
let clock = Clock(hours: {{subCases.input.hour}}, minutes: {{subCases.input.minute}}).add(minutes: {{subCases.input.value}})
18-
XCTAssertEqual(clock.description, "{{subCases.expected}}")
20+
#expect(clock.description == "{{subCases.expected}}")
1921
{%- elif subCases.property == "subtract" %}
2022
let clock = Clock(hours: {{subCases.input.hour}}, minutes: {{subCases.input.minute}}).subtract(minutes: {{subCases.input.value}})
21-
XCTAssertEqual(clock.description, "{{subCases.expected}}")
23+
#expect(clock.description == "{{subCases.expected}}")
2224
{%- elif subCases.property == "equal" %}
2325
let clock1 = Clock(hours: {{subCases.input.clock1.hour}}, minutes: {{subCases.input.clock1.minute}})
2426
let clock2 = Clock(hours: {{subCases.input.clock2.hour}}, minutes: {{subCases.input.clock2.minute}})
2527
{%- if subCases.expected %}
26-
XCTAssertEqual(clock1, clock2)
28+
#expect(clock1 == clock2)
2729
{%- else %}
28-
XCTAssertNotEqual(clock1, clock2)
30+
#expect(clock1 != clock2)
2931
{%- endif %}
3032
{%- endif %}
3133
}

exercises/practice/clock/Package.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// swift-tools-version:5.3
1+
// swift-tools-version:6.0
22

33
import PackageDescription
44

0 commit comments

Comments
 (0)