From 8bd06c15168c70d060c6b5fceb60967f9ac069fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Danny=20M=C3=B6sch?= Date: Sat, 1 Feb 2025 15:58:35 +0100 Subject: [PATCH] Avoid async assert methods --- ...licitTypeInterfaceConfigurationTests.swift | 11 ++--- .../IndentationWidthRuleTests.swift | 17 ++++---- ...ultilineParametersConfigurationTests.swift | 30 +++++++------ .../NoEmptyBlockConfigurationTests.swift | 11 ++--- .../RuleConfigurationDescriptionTests.swift | 43 ++++++++++--------- 5 files changed, 59 insertions(+), 53 deletions(-) diff --git a/Tests/BuiltInRulesTests/ExplicitTypeInterfaceConfigurationTests.swift b/Tests/BuiltInRulesTests/ExplicitTypeInterfaceConfigurationTests.swift index 6108180ba8..3fe7ace943 100644 --- a/Tests/BuiltInRulesTests/ExplicitTypeInterfaceConfigurationTests.swift +++ b/Tests/BuiltInRulesTests/ExplicitTypeInterfaceConfigurationTests.swift @@ -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'." ) } diff --git a/Tests/BuiltInRulesTests/IndentationWidthRuleTests.swift b/Tests/BuiltInRulesTests/IndentationWidthRuleTests.swift index 498745be78..936dd77bfc 100644 --- a/Tests/BuiltInRulesTests/IndentationWidthRuleTests.swift +++ b/Tests/BuiltInRulesTests/IndentationWidthRuleTests.swift @@ -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." ) } diff --git a/Tests/BuiltInRulesTests/MultilineParametersConfigurationTests.swift b/Tests/BuiltInRulesTests/MultilineParametersConfigurationTests.swift index 6d19466b94..2915e344d4 100644 --- a/Tests/BuiltInRulesTests/MultilineParametersConfigurationTests.swift +++ b/Tests/BuiltInRulesTests/MultilineParametersConfigurationTests.swift @@ -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. @@ -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. diff --git a/Tests/BuiltInRulesTests/NoEmptyBlockConfigurationTests.swift b/Tests/BuiltInRulesTests/NoEmptyBlockConfigurationTests.swift index f555bbbcb7..737172b732 100644 --- a/Tests/BuiltInRulesTests/NoEmptyBlockConfigurationTests.swift +++ b/Tests/BuiltInRulesTests/NoEmptyBlockConfigurationTests.swift @@ -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'." ) } diff --git a/Tests/FrameworkTests/RuleConfigurationDescriptionTests.swift b/Tests/FrameworkTests/RuleConfigurationDescriptionTests.swift index ddda2f436d..842c2ee3f9 100644 --- a/Tests/FrameworkTests/RuleConfigurationDescriptionTests.swift +++ b/Tests/FrameworkTests/RuleConfigurationDescriptionTests.swift @@ -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'." ) }