Skip to content

Commit

Permalink
Avoid async assert methods
Browse files Browse the repository at this point in the history
  • Loading branch information
SimplyDanny committed Feb 1, 2025
1 parent 838b953 commit 8bd06c1
Show file tree
Hide file tree
Showing 5 changed files with 59 additions and 53 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,12 @@ final class ExplicitTypeInterfaceConfigurationTests: SwiftLintTestCase {
}

func testInvalidKeyInCustomConfiguration() async throws {
try await AsyncAssertEqual(
try await Issue.captureConsole {
var config = ExplicitTypeInterfaceConfiguration()
try config.apply(configuration: ["invalidKey": "error"])
},
let console = try await Issue.captureConsole {
var config = ExplicitTypeInterfaceConfiguration()
try config.apply(configuration: ["invalidKey": "error"])
}
XCTAssertEqual(
console,
"warning: Configuration for 'explicit_type_interface' rule contains the invalid key(s) 'invalidKey'."
)
}
Expand Down
17 changes: 9 additions & 8 deletions Tests/BuiltInRulesTests/IndentationWidthRuleTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,15 @@ final class IndentationWidthRuleTests: SwiftLintTestCase {
let defaultValue = IndentationWidthConfiguration().indentationWidth

for indentation in [0, -1, -5] {
try await AsyncAssertEqual(
try await Issue.captureConsole {
var testee = IndentationWidthConfiguration()
try testee.apply(configuration: ["indentation_width": indentation])

// Value remains the default.
XCTAssertEqual(testee.indentationWidth, defaultValue)
},
let console = try await Issue.captureConsole {
var testee = IndentationWidthConfiguration()
try testee.apply(configuration: ["indentation_width": indentation])

// Value remains the default.
XCTAssertEqual(testee.indentationWidth, defaultValue)
}
XCTAssertEqual(
console,
"warning: Invalid configuration for 'indentation_width' rule. Falling back to default."
)
}
Expand Down
30 changes: 16 additions & 14 deletions Tests/BuiltInRulesTests/MultilineParametersConfigurationTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,14 @@ import XCTest
final class MultilineParametersConfigurationTests: SwiftLintTestCase {
func testInvalidMaxNumberOfSingleLineParameters() async throws {
for maxNumberOfSingleLineParameters in [0, -1] {
try await AsyncAssertEqual(
try await Issue.captureConsole {
var config = MultilineParametersConfiguration()
try config.apply(
configuration: ["max_number_of_single_line_parameters": maxNumberOfSingleLineParameters]
)
},
let console = try await Issue.captureConsole {
var config = MultilineParametersConfiguration()
try config.apply(
configuration: ["max_number_of_single_line_parameters": maxNumberOfSingleLineParameters]
)
}
XCTAssertEqual(
console,
"""
warning: Inconsistent configuration for 'multiline_parameters' rule: Option \
'max_number_of_single_line_parameters' should be >= 1.
Expand All @@ -22,13 +23,14 @@ final class MultilineParametersConfigurationTests: SwiftLintTestCase {
}

func testInvalidMaxNumberOfSingleLineParametersWithSingleLineEnabled() async throws {
try await AsyncAssertEqual(
try await Issue.captureConsole {
var config = MultilineParametersConfiguration()
try config.apply(
configuration: ["max_number_of_single_line_parameters": 2, "allows_single_line": false]
)
},
let console = try await Issue.captureConsole {
var config = MultilineParametersConfiguration()
try config.apply(
configuration: ["max_number_of_single_line_parameters": 2, "allows_single_line": false]
)
}
XCTAssertEqual(
console,
"""
warning: Inconsistent configuration for 'multiline_parameters' rule: Option \
'max_number_of_single_line_parameters' has no effect when 'allows_single_line' is false.
Expand Down
11 changes: 6 additions & 5 deletions Tests/BuiltInRulesTests/NoEmptyBlockConfigurationTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,12 @@ final class NoEmptyBlockConfigurationTests: SwiftLintTestCase {
}

func testInvalidKeyInCustomConfiguration() async throws {
try await AsyncAssertEqual(
try await Issue.captureConsole {
var config = NoEmptyBlockConfiguration()
try config.apply(configuration: ["invalidKey": "error"])
},
let console = try await Issue.captureConsole {
var config = NoEmptyBlockConfiguration()
try config.apply(configuration: ["invalidKey": "error"])
}
XCTAssertEqual(
console,
"warning: Configuration for 'no_empty_block' rule contains the invalid key(s) 'invalidKey'."
)
}
Expand Down
43 changes: 22 additions & 21 deletions Tests/FrameworkTests/RuleConfigurationDescriptionTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -491,35 +491,36 @@ final class RuleConfigurationDescriptionTests: SwiftLintTestCase {
}

func testDeprecationWarning() async throws {
try await AsyncAssertEqual(
try await Issue.captureConsole {
var configuration = TestConfiguration()
try configuration.apply(configuration: ["set": [6, 7]])
},
let console = try await Issue.captureConsole {
var configuration = TestConfiguration()
try configuration.apply(configuration: ["set": [6, 7]])
}
XCTAssertEqual(
console,
"warning: Configuration option 'set' in 'my_rule' rule is deprecated. Use the option 'other_opt' instead."
)
}

func testNoDeprecationWarningIfNoDeprecatedPropertySet() async throws {
try await AsyncAssertTrue(
try await Issue.captureConsole {
var configuration = TestConfiguration()
try configuration.apply(configuration: ["flag": false])
}.isEmpty
)
let console = try await Issue.captureConsole {
var configuration = TestConfiguration()
try configuration.apply(configuration: ["flag": false])
}
XCTAssertTrue(console.isEmpty)
}

func testInvalidKeys() async throws {
try await AsyncAssertEqual(
try await Issue.captureConsole {
var configuration = TestConfiguration()
try configuration.apply(configuration: [
"severity": "error",
"warning": 3,
"unknown": 1,
"unsupported": true,
])
},
let console = try await Issue.captureConsole {
var configuration = TestConfiguration()
try configuration.apply(configuration: [
"severity": "error",
"warning": 3,
"unknown": 1,
"unsupported": true,
])
}
XCTAssertEqual(
console,
"warning: Configuration for 'RuleMock' rule contains the invalid key(s) 'unknown', 'unsupported'."
)
}
Expand Down

0 comments on commit 8bd06c1

Please sign in to comment.