mirror of
https://github.com/realm/SwiftLint.git
synced 2026-05-07 20:12:49 +00:00
15b285527a
* Short names for test modules * Lint plugins and `Package.swift` in integration tests * Simplify and merge file groups in Bazel * Move common functions to `TestHelpers`
40 lines
1.3 KiB
Swift
40 lines
1.3 KiB
Swift
@testable import SwiftLintBuiltInRules
|
|
import TestHelpers
|
|
import XCTest
|
|
|
|
final class ImplicitReturnConfigurationTests: SwiftLintTestCase {
|
|
func testImplicitReturnConfigurationFromDictionary() throws {
|
|
var configuration = ImplicitReturnConfiguration(includedKinds: Set<ImplicitReturnConfiguration.ReturnKind>())
|
|
let config: [String: Any] = [
|
|
"severity": "error",
|
|
"included": [
|
|
"closure",
|
|
"function",
|
|
"getter",
|
|
"initializer",
|
|
"subscript",
|
|
],
|
|
]
|
|
|
|
try configuration.apply(configuration: config)
|
|
let expectedKinds: Set<ImplicitReturnConfiguration.ReturnKind> = Set([
|
|
.closure,
|
|
.function,
|
|
.getter,
|
|
.initializer,
|
|
.subscript,
|
|
])
|
|
XCTAssertEqual(configuration.severityConfiguration.severity, .error)
|
|
XCTAssertEqual(configuration.includedKinds, expectedKinds)
|
|
}
|
|
|
|
func testImplicitReturnConfigurationThrowsOnUnrecognizedModifierGroup() {
|
|
var configuration = ImplicitReturnConfiguration()
|
|
let config = ["included": ["foreach"]] as [String: any Sendable]
|
|
|
|
checkError(Issue.invalidConfiguration(ruleID: ImplicitReturnRule.identifier)) {
|
|
try configuration.apply(configuration: config)
|
|
}
|
|
}
|
|
}
|