From f969822730488ba506ba99c27faac1a59dd9c0b7 Mon Sep 17 00:00:00 2001 From: Travis Miehm Date: Thu, 14 Dec 2023 10:14:14 -0500 Subject: [PATCH] Add RuleSetProvider necessary to get rules executed (#4) --- .../com/faire/detekt/FaireRulesProvider.kt | 59 +++++++++++++++++++ ...tlab.arturbosch.detekt.api.RuleSetProvider | 1 + 2 files changed, 60 insertions(+) create mode 100644 src/main/kotlin/com/faire/detekt/FaireRulesProvider.kt create mode 100644 src/main/resources/META-INF/services/io.gitlab.arturbosch.detekt.api.RuleSetProvider diff --git a/src/main/kotlin/com/faire/detekt/FaireRulesProvider.kt b/src/main/kotlin/com/faire/detekt/FaireRulesProvider.kt new file mode 100644 index 0000000..e9a9511 --- /dev/null +++ b/src/main/kotlin/com/faire/detekt/FaireRulesProvider.kt @@ -0,0 +1,59 @@ +package com.faire.detekt + +import com.faire.detekt.rules.AlwaysUseIsTrueOrIsFalse +import com.faire.detekt.rules.DoNotAccessVisibleForTesting +import com.faire.detekt.rules.DoNotSplitByRegex +import com.faire.detekt.rules.DoNotUseDirectReceiverReferenceInsideWith +import com.faire.detekt.rules.DoNotUseHasSizeForEmptyListInAssert +import com.faire.detekt.rules.DoNotUseIsEqualToWhenArgumentIsOne +import com.faire.detekt.rules.DoNotUseIsEqualToWhenArgumentIsZero +import com.faire.detekt.rules.DoNotUsePropertyAccessInAssert +import com.faire.detekt.rules.DoNotUseSingleOnFilter +import com.faire.detekt.rules.DoNotUseSizePropertyInAssert +import com.faire.detekt.rules.GetOrDefaultShouldBeReplacedWithGetOrElse +import com.faire.detekt.rules.NoNonPrivateGlobalVariables +import com.faire.detekt.rules.NoNullableLambdaWithDefaultNull +import com.faire.detekt.rules.NoPairWithAmbiguousTypes +import com.faire.detekt.rules.PreferIgnoreCase +import com.faire.detekt.rules.PreventBannedImports +import com.faire.detekt.rules.ReturnValueOfLetMustBeUsed +import com.faire.detekt.rules.UseEntriesInsteadOfValuesOnEnum +import com.faire.detekt.rules.UseFirstOrNullInsteadOfFind +import com.faire.detekt.rules.UseMapNotNullInsteadOfFilterNotNull +import com.faire.detekt.rules.UseOfCollectionInsteadOfEmptyCollection +import com.faire.detekt.rules.UseSetInsteadOfListToSet +import io.gitlab.arturbosch.detekt.api.Config +import io.gitlab.arturbosch.detekt.api.RuleSet +import io.gitlab.arturbosch.detekt.api.RuleSetProvider + +internal class FaireRulesProvider : RuleSetProvider { + override val ruleSetId = "FaireRuleSet" + + override fun instance(config: Config): RuleSet = RuleSet( + ruleSetId, + listOf( + AlwaysUseIsTrueOrIsFalse(config), + DoNotAccessVisibleForTesting(config), + DoNotSplitByRegex(config), + DoNotUseDirectReceiverReferenceInsideWith(config), + DoNotUsePropertyAccessInAssert(config), + DoNotUseHasSizeForEmptyListInAssert(config), + DoNotUseIsEqualToWhenArgumentIsOne(config), + DoNotUseIsEqualToWhenArgumentIsZero(config), + DoNotUseSingleOnFilter(config), + DoNotUseSizePropertyInAssert(config), + GetOrDefaultShouldBeReplacedWithGetOrElse(config), + NoNonPrivateGlobalVariables(config), + NoNullableLambdaWithDefaultNull(config), + NoPairWithAmbiguousTypes(config), + PreferIgnoreCase(config), + PreventBannedImports(config), + ReturnValueOfLetMustBeUsed(config), + UseEntriesInsteadOfValuesOnEnum(config), + UseFirstOrNullInsteadOfFind(config), + UseMapNotNullInsteadOfFilterNotNull(config), + UseOfCollectionInsteadOfEmptyCollection(config), + UseSetInsteadOfListToSet(config), + ) + ) +} \ No newline at end of file diff --git a/src/main/resources/META-INF/services/io.gitlab.arturbosch.detekt.api.RuleSetProvider b/src/main/resources/META-INF/services/io.gitlab.arturbosch.detekt.api.RuleSetProvider new file mode 100644 index 0000000..0b83b0d --- /dev/null +++ b/src/main/resources/META-INF/services/io.gitlab.arturbosch.detekt.api.RuleSetProvider @@ -0,0 +1 @@ +com.faire.detekt.FaireRulesProvider