[PM-21726] Move OmitFromCoverage to annotation module (#5214)

This commit is contained in:
Patrick Honkonen 2025-05-19 09:19:16 -04:00 committed by GitHub
parent 4d142a6a5c
commit 07e4e6a806
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
85 changed files with 130 additions and 75 deletions

1
annotation/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/build

View File

@ -0,0 +1,42 @@
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
}
android {
namespace = "com.bitwarden.annotation"
compileSdk = libs.versions.compileSdk.get().toInt()
defaultConfig {
minSdk = libs.versions.minSdkBwa.get().toInt()
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro",
)
}
}
compileOptions {
sourceCompatibility(libs.versions.jvmTarget.get())
targetCompatibility(libs.versions.jvmTarget.get())
}
@Suppress("UnstableApiUsage")
testFixtures {
enable = true
}
}
kotlin {
compilerOptions {
jvmTarget.set(JvmTarget.fromTarget(libs.versions.jvmTarget.get()))
}
}

View File

@ -1,4 +1,4 @@
package com.bitwarden.core.annotation
package com.bitwarden.annotation
/**
* Used to omit the annotated class from test coverage reporting. This should be used sparingly and

View File

@ -213,6 +213,7 @@ dependencies {
implementation(files("libs/authenticatorbridge-1.0.0-release.aar"))
implementation(project(":annotation"))
implementation(project(":core"))
implementation(project(":data"))
implementation(project(":network"))

View File

@ -2,7 +2,7 @@ package com.x8bit.bitwarden
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* An activity to be launched and then immediately closed so that the OS Shade can be collapsed

View File

@ -4,7 +4,7 @@ import android.content.Intent
import android.os.Bundle
import androidx.activity.viewModels
import androidx.appcompat.app.AppCompatActivity
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import dagger.hilt.android.AndroidEntryPoint
/**

View File

@ -4,7 +4,7 @@ import android.os.Bundle
import androidx.activity.viewModels
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.lifecycleScope
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.autofill.manager.AutofillCompletionManager
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.launchIn

View File

@ -5,7 +5,7 @@ import android.content.Intent
import android.os.Build
import androidx.annotation.Keep
import androidx.core.app.AppComponentFactory
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.autofill.BitwardenAutofillService
import com.x8bit.bitwarden.data.autofill.accessibility.BitwardenAccessibilityService
import com.x8bit.bitwarden.data.credentials.BitwardenCredentialProviderService

View File

@ -1,7 +1,7 @@
package com.x8bit.bitwarden
import android.app.Application
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.auth.manager.AuthRequestNotificationManager
import com.x8bit.bitwarden.data.platform.manager.LogsManager
import com.x8bit.bitwarden.data.platform.manager.event.OrganizationEventManager

View File

@ -17,7 +17,7 @@ import androidx.core.os.LocaleListCompat
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
import androidx.lifecycle.compose.collectAsStateWithLifecycle
import androidx.navigation.compose.NavHost
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.ui.platform.base.util.EventsEffect
import com.bitwarden.ui.platform.theme.BitwardenTheme
import com.x8bit.bitwarden.data.autofill.accessibility.manager.AccessibilityCompletionManager

View File

@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.Color
import androidx.core.app.NotificationChannelCompat
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.data.manager.DispatcherManager
import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.data.auth.datasource.disk.AuthDiskSource

View File

@ -1,6 +1,6 @@
package com.x8bit.bitwarden.data.auth.util
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.crypto.Kdf
/**

View File

@ -8,7 +8,7 @@ import android.service.autofill.FillRequest
import android.service.autofill.SaveCallback
import android.service.autofill.SaveRequest
import androidx.annotation.Keep
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.autofill.model.AutofillAppInfo
import com.x8bit.bitwarden.data.autofill.processor.AutofillProcessor
import dagger.hilt.android.AndroidEntryPoint

View File

@ -4,7 +4,7 @@ import android.accessibilityservice.AccessibilityService
import android.content.Intent
import android.view.accessibility.AccessibilityEvent
import androidx.annotation.Keep
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.autofill.accessibility.manager.AccessibilityEnabledManager
import com.x8bit.bitwarden.data.autofill.accessibility.processor.BitwardenAccessibilityProcessor
import com.x8bit.bitwarden.data.tiles.BitwardenAutofillTileService

View File

@ -3,7 +3,7 @@ package com.x8bit.bitwarden.data.autofill.accessibility.util
import android.view.accessibility.AccessibilityNodeInfo
import android.widget.EditText
import androidx.core.os.bundleOf
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.autofill.accessibility.model.KnownUsernameField
private const val PACKAGE_NAME_BITWARDEN_PREFIX: String = "com.x8bit.bitwarden"

View File

@ -1,7 +1,7 @@
package com.x8bit.bitwarden.data.autofill.accessibility.util
import android.net.Uri
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import java.net.URISyntaxException
/**

View File

@ -3,7 +3,7 @@ package com.x8bit.bitwarden.data.autofill.manager.chrome
import android.content.ContentResolver
import android.content.Context
import android.net.Uri
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.autofill.model.chrome.ChromeReleaseChannel
import com.x8bit.bitwarden.data.autofill.model.chrome.ChromeThirdPartyAutoFillData

View File

@ -4,7 +4,7 @@ package com.x8bit.bitwarden.data.autofill.util
import android.app.Activity
import android.os.Build
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.autofill.model.AutofillAppInfo
/**

View File

@ -11,7 +11,7 @@ import android.content.IntentSender
import android.service.autofill.Dataset
import android.view.autofill.AutofillManager
import androidx.core.os.bundleOf
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.AutofillTotpCopyActivity
import com.x8bit.bitwarden.MainActivity
import com.x8bit.bitwarden.data.autofill.model.AutofillAppInfo

View File

@ -1,7 +1,7 @@
package com.x8bit.bitwarden.data.autofill.util
import android.view.ViewStructure.HtmlInfo
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* Whether this [HtmlInfo] represents a password field.

View File

@ -3,7 +3,7 @@ package com.x8bit.bitwarden.data.autofill.util
import android.app.PendingIntent
import android.os.Build
import android.text.InputType
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* Whether this [Int] is a password [InputType].

View File

@ -14,7 +14,7 @@ import androidx.credentials.provider.BeginGetCredentialRequest
import androidx.credentials.provider.BeginGetCredentialResponse
import androidx.credentials.provider.CredentialProviderService
import androidx.credentials.provider.ProviderClearCredentialStateRequest
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.credentials.processor.CredentialProviderProcessor
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject

View File

@ -7,7 +7,7 @@ import androidx.annotation.RequiresApi
import androidx.biometric.BiometricManager
import androidx.biometric.BiometricPrompt
import androidx.credentials.provider.BiometricPromptData
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import javax.crypto.Cipher
/**

View File

@ -4,7 +4,7 @@ package com.x8bit.bitwarden.data.credentials.util
import android.os.Build
import androidx.credentials.provider.PublicKeyCredentialEntry
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.platform.util.isBuildVersionBelow
import javax.crypto.Cipher

View File

@ -4,7 +4,7 @@ import android.content.ContentProvider
import android.content.ContentValues
import android.database.Cursor
import android.net.Uri
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import timber.log.Timber
/**

View File

@ -10,7 +10,7 @@ import android.security.keystore.KeyGenParameterSpec
import android.security.keystore.KeyProperties
import android.util.Base64
import androidx.core.content.edit
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import java.math.BigInteger
import java.nio.charset.StandardCharsets
import java.security.InvalidAlgorithmParameterException

View File

@ -1,7 +1,7 @@
package com.x8bit.bitwarden.data.platform.manager
import android.content.Context
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.data.manager.DispatcherManager
import kotlinx.coroutines.withContext

View File

@ -3,7 +3,7 @@ package com.x8bit.bitwarden.data.platform.manager
import android.security.keystore.KeyGenParameterSpec
import android.security.keystore.KeyPermanentlyInvalidatedException
import android.security.keystore.KeyProperties
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.BuildConfig
import com.x8bit.bitwarden.data.auth.datasource.disk.AuthDiskSource
import com.x8bit.bitwarden.data.platform.datasource.disk.SettingsDiskSource

View File

@ -1,6 +1,6 @@
package com.x8bit.bitwarden.data.platform.manager
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import timber.log.Timber
/**

View File

@ -11,7 +11,7 @@ import androidx.core.os.persistableBundleOf
import androidx.work.ExistingWorkPolicy
import androidx.work.OneTimeWorkRequest
import androidx.work.WorkManager
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.ui.platform.base.util.toAnnotatedString
import com.bitwarden.ui.util.Text
import com.x8bit.bitwarden.R

View File

@ -5,7 +5,7 @@ import android.content.Context
import android.content.Context.CLIPBOARD_SERVICE
import androidx.work.Worker
import androidx.work.WorkerParameters
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* A worker to clear the clipboard manager.

View File

@ -2,7 +2,7 @@ package com.x8bit.bitwarden.data.platform.manager.flightrecorder
import android.os.Build
import android.util.Log
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.data.manager.DispatcherManager
import com.x8bit.bitwarden.BuildConfig
import com.x8bit.bitwarden.data.platform.datasource.disk.model.FlightRecorderDataSet

View File

@ -2,7 +2,7 @@ package com.x8bit.bitwarden.data.platform.service
import android.app.Service
import android.content.Intent
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.platform.processor.AuthenticatorBridgeProcessor
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject

View File

@ -7,7 +7,7 @@ import android.content.Intent
import android.content.Intent.FLAG_ACTIVITY_NEW_TASK
import android.content.Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED
import android.content.Intent.FLAG_ACTIVITY_SINGLE_TOP
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.MainActivity
import com.x8bit.bitwarden.data.auth.manager.AddTotpItemFromAuthenticatorManager

View File

@ -3,7 +3,7 @@
package com.x8bit.bitwarden.data.platform.util
import android.os.Build
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* Returns true if the current OS build version is below the provided [version].

View File

@ -1,6 +1,6 @@
package com.x8bit.bitwarden.data.platform.util
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import java.io.File
/**

View File

@ -1,7 +1,7 @@
package com.x8bit.bitwarden.data.platform.util
import android.os.Build
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import java.io.IOException
import java.io.InputStream
import java.io.OutputStream

View File

@ -7,7 +7,7 @@ import android.os.Bundle
import android.os.Parcelable
import androidx.core.content.IntentCompat
import androidx.core.os.BundleCompat
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* A means of retrieving a [Parcelable] from an [Intent] using the given [name] in a manner that

View File

@ -1,6 +1,6 @@
package com.x8bit.bitwarden.data.platform.util
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.platform.manager.ResourceCacheManager
import java.net.URI
import java.net.URISyntaxException

View File

@ -8,7 +8,7 @@ import android.content.Intent
import android.os.Build
import android.service.quicksettings.TileService
import androidx.annotation.Keep
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.AccessibilityActivity
import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.data.autofill.accessibility.manager.AccessibilityAutofillManager

View File

@ -4,7 +4,7 @@ import android.annotation.SuppressLint
import android.os.Build
import android.service.quicksettings.TileService
import androidx.annotation.Keep
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.platform.util.isBuildVersionBelow
import com.x8bit.bitwarden.ui.platform.manager.intent.IntentManager
import dagger.hilt.android.AndroidEntryPoint

View File

@ -4,7 +4,7 @@ import android.annotation.SuppressLint
import android.os.Build
import android.service.quicksettings.TileService
import androidx.annotation.Keep
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.platform.util.isBuildVersionBelow
import com.x8bit.bitwarden.ui.platform.manager.intent.IntentManager
import dagger.hilt.android.AndroidEntryPoint

View File

@ -1,6 +1,6 @@
package com.x8bit.bitwarden.data.vault.datasource.sdk.model
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.fido.CheckUserOptions
import com.bitwarden.sdk.CheckUserAndPickCredentialForCreationResult
import com.bitwarden.sdk.CheckUserResult

View File

@ -1,6 +1,6 @@
package com.x8bit.bitwarden.data.vault.datasource.sdk.model
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.fido.CheckUserOptions
import com.bitwarden.sdk.CheckUserAndPickCredentialForCreationResult
import com.bitwarden.sdk.CheckUserResult

View File

@ -1,6 +1,6 @@
package com.x8bit.bitwarden.data.vault.datasource.sdk.model
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.fido.Fido2CredentialAutofillView
import com.bitwarden.sdk.Fido2CredentialStore
import com.bitwarden.vault.Cipher

View File

@ -1,7 +1,7 @@
package com.x8bit.bitwarden.data.vault.manager
import android.net.Uri
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.vault.manager.model.DownloadResult
import com.x8bit.bitwarden.data.vault.manager.model.ZipFileResult
import java.io.File

View File

@ -4,7 +4,7 @@ package com.x8bit.bitwarden.data.vault.manager
import android.content.Context
import android.net.Uri
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.data.manager.DispatcherManager
import com.bitwarden.network.service.DownloadService
import com.x8bit.bitwarden.data.platform.util.sdkAgnosticTransferTo

View File

@ -1,7 +1,7 @@
package com.x8bit.bitwarden.ui.credentials.manager
import androidx.credentials.CredentialProvider
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.ui.credentials.manager.model.AssertFido2CredentialResult
import com.x8bit.bitwarden.ui.credentials.manager.model.GetCredentialsResult
import com.x8bit.bitwarden.ui.credentials.manager.model.RegisterFido2CredentialResult

View File

@ -46,7 +46,7 @@ import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.constrainWidth
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.offset
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.ui.platform.base.util.toScrolledContainerColor
import com.bitwarden.ui.platform.base.util.toScrolledContainerDividerAlpha
import com.bitwarden.ui.platform.components.model.CardStyle

View File

@ -9,7 +9,7 @@ import androidx.compose.ui.platform.TextToolbarStatus
import androidx.compose.ui.text.input.TextFieldValue
import androidx.compose.ui.text.input.getSelectedText
import androidx.core.os.persistableBundleOf
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* A custom [TextToolbar] that is obfuscates the copied or cut text.

View File

@ -3,7 +3,7 @@ package com.x8bit.bitwarden.ui.platform.components.field.toolbar
import androidx.compose.ui.geometry.Rect
import androidx.compose.ui.platform.TextToolbar
import androidx.compose.ui.platform.TextToolbarStatus
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* A custom [TextToolbar] that is completely empty.

View File

@ -10,7 +10,7 @@ import androidx.compose.runtime.CompositionLocal
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.runtime.ProvidableCompositionLocal
import androidx.compose.runtime.compositionLocalOf
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManager
import com.x8bit.bitwarden.data.platform.manager.util.AppResumeStateManagerImpl
import com.x8bit.bitwarden.data.platform.util.isBuildVersionBelow

View File

@ -3,7 +3,7 @@ package com.x8bit.bitwarden.ui.platform.feature.search
import android.os.Parcelable
import androidx.lifecycle.SavedStateHandle
import androidx.lifecycle.viewModelScope
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.core.data.repository.model.DataState
import com.bitwarden.data.repository.util.baseIconUrl
import com.bitwarden.data.repository.util.baseWebSendUrl

View File

@ -4,7 +4,7 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* Splash screen with empty composable content so that the Activity window background is shown.

View File

@ -6,7 +6,7 @@ import androidx.biometric.BiometricManager.Authenticators
import androidx.biometric.BiometricPrompt
import androidx.core.content.ContextCompat
import androidx.fragment.app.FragmentActivity
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.R
import javax.crypto.Cipher

View File

@ -1,7 +1,7 @@
package com.x8bit.bitwarden.ui.platform.manager.exit
import android.app.Activity
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* The default implementation of the [ExitManager] for managing the various ways to exit the app.

View File

@ -23,7 +23,7 @@ import androidx.core.content.ContextCompat
import androidx.core.content.FileProvider
import androidx.core.net.toUri
import androidx.credentials.CredentialManager
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.BuildConfig
import com.x8bit.bitwarden.MainActivity
import com.x8bit.bitwarden.R

View File

@ -7,7 +7,7 @@ import android.content.Intent
import android.content.IntentFilter
import android.nfc.NfcAdapter
import android.os.Build
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.x8bit.bitwarden.AuthCallbackActivity
import com.x8bit.bitwarden.data.autofill.util.toPendingIntentMutabilityFlag
import kotlin.random.Random

View File

@ -7,7 +7,7 @@ import androidx.activity.compose.rememberLauncherForActivityResult
import androidx.activity.result.contract.ActivityResultContracts
import androidx.compose.runtime.Composable
import androidx.core.content.ContextCompat
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* Primary implementation of [PermissionsManager].

View File

@ -2,7 +2,7 @@ package com.x8bit.bitwarden.ui.platform.manager.resource
import android.content.Context
import androidx.annotation.StringRes
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* Primary implementation of [ResourceManager].

View File

@ -37,7 +37,7 @@ import androidx.compose.ui.unit.dp
import androidx.core.net.toUri
import androidx.hilt.navigation.compose.hiltViewModel
import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.ui.platform.base.util.EventsEffect
import com.bitwarden.ui.platform.base.util.toAnnotatedString
import com.bitwarden.ui.platform.theme.BitwardenTheme

View File

@ -1,7 +1,7 @@
package com.x8bit.bitwarden.ui.vault.feature.qrcodescan.util
import androidx.camera.core.ImageProxy
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.google.zxing.BarcodeFormat
import com.google.zxing.BinaryBitmap
import com.google.zxing.DecodeHintType

View File

@ -1,6 +1,6 @@
package com.x8bit.bitwarden.data.platform.manager
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.data.repository.model.Environment
import com.google.firebase.crashlytics.ktx.crashlytics
import com.google.firebase.ktx.Firebase

View File

@ -1,6 +1,6 @@
package com.x8bit.bitwarden.data.push
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.google.firebase.messaging.FirebaseMessagingService
import com.google.firebase.messaging.RemoteMessage
import com.x8bit.bitwarden.data.platform.manager.PushManager

View File

@ -2,7 +2,7 @@ package com.x8bit.bitwarden.ui.platform.manager.review
import android.app.Activity
import android.widget.Toast
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.google.android.play.core.review.ReviewManagerFactory
import com.x8bit.bitwarden.BuildConfig
import com.x8bit.bitwarden.R

View File

@ -151,6 +151,7 @@ dependencies {
implementation(files("libs/authenticatorbridge-1.0.0-release.aar"))
implementation(project(":annotation"))
implementation(project(":core"))
implementation(project(":data"))
implementation(project(":network"))

View File

@ -1,6 +1,6 @@
package com.bitwarden.authenticator.data.platform.provider
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.data.repository.model.Environment
import com.bitwarden.data.repository.util.baseApiUrl
import com.bitwarden.data.repository.util.baseEventsUrl

View File

@ -14,8 +14,8 @@ import androidx.compose.ui.platform.LocalLayoutDirection
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.authenticator.ui.platform.util.isPortrait
import com.bitwarden.core.annotation.OmitFromCoverage
/**
* This is a [Modifier] extension for drawing a divider at the bottom of the composable.

View File

@ -9,6 +9,7 @@ import androidx.compose.runtime.CompositionLocal
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.runtime.ProvidableCompositionLocal
import androidx.compose.runtime.compositionLocalOf
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.authenticator.ui.platform.manager.biometrics.BiometricsManager
import com.bitwarden.authenticator.ui.platform.manager.biometrics.BiometricsManagerImpl
import com.bitwarden.authenticator.ui.platform.manager.exit.ExitManager
@ -17,7 +18,6 @@ import com.bitwarden.authenticator.ui.platform.manager.intent.IntentManager
import com.bitwarden.authenticator.ui.platform.manager.intent.IntentManagerImpl
import com.bitwarden.authenticator.ui.platform.manager.permissions.PermissionsManager
import com.bitwarden.authenticator.ui.platform.manager.permissions.PermissionsManagerImpl
import com.bitwarden.core.annotation.OmitFromCoverage
/**
* Helper [Composable] that wraps a [content] and provides manager classes via [CompositionLocal].

View File

@ -15,8 +15,8 @@ import androidx.activity.result.contract.ActivityResultContracts
import androidx.compose.runtime.Composable
import androidx.core.content.ContextCompat
import androidx.core.net.toUri
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.authenticator.R
import com.bitwarden.core.annotation.OmitFromCoverage
/**
* The default implementation of the [IntentManager] for simplifying the handling of Android

View File

@ -3,7 +3,7 @@
package com.bitwarden.authenticator.ui.platform.util
import android.content.res.Configuration
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* A helper method to indicate if the current UI configuration is portrait or not.

View File

@ -60,6 +60,7 @@ kotlin {
dependencies {
// SDK dependencies:
implementation(project(":annotation"))
implementation(libs.androidx.appcompat)
implementation(libs.androidx.lifecycle.process)
implementation(libs.kotlinx.serialization)

View File

@ -16,6 +16,7 @@ dependencies {
detektPlugins(libs.detekt.detekt.formatting)
detektPlugins(libs.detekt.detekt.rules)
kover(project(":annotation"))
kover(project(":app"))
kover(project(":authenticator"))
kover(project(":authenticatorbridge"))
@ -29,6 +30,7 @@ detekt {
autoCorrect = true
config.from(files("detekt-config.yml"))
source.from(
"annotation/src",
"app/src",
"authenticator/src",
"authenticatorbridge/src",
@ -64,7 +66,7 @@ kover {
"androidx.compose.ui.tooling.preview.Preview",
"androidx.compose.ui.tooling.preview.PreviewScreenSizes",
// Manually excluded classes/files/etc.
"com.bitwarden.core.annotation.OmitFromCoverage",
"com.bitwarden.annotation.OmitFromCoverage",
// Dagger modules
"dagger.Module",
)

View File

@ -38,6 +38,8 @@ android {
}
dependencies {
implementation(project(":annotation"))
implementation(libs.google.hilt.android)
ksp(libs.google.hilt.compiler)
implementation(libs.kotlinx.coroutines.android)

View File

@ -1,6 +1,6 @@
package com.bitwarden.core.data.repository.util
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.core.data.repository.model.DataState
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow

View File

@ -2,7 +2,7 @@
package com.bitwarden.core.data.util
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import java.util.concurrent.ConcurrentHashMap
/**

View File

@ -45,6 +45,7 @@ kotlin {
}
dependencies {
implementation(project(":annotation"))
implementation(project(":core"))
implementation(project(":network"))

View File

@ -44,6 +44,7 @@ kotlin {
}
dependencies {
implementation(project(":annotation"))
implementation(project(":core"))
implementation(libs.androidx.core.ktx)

View File

@ -2,7 +2,7 @@
package com.bitwarden.network
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.network.model.BitwardenServiceClientConfig
import com.bitwarden.network.provider.RefreshTokenProvider
import com.bitwarden.network.service.AccountsService

View File

@ -1,6 +1,6 @@
package com.bitwarden.network
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import com.bitwarden.core.data.serializer.ZonedDateTimeSerializer
import com.bitwarden.network.authenticator.RefreshAuthenticator
import com.bitwarden.network.interceptor.AuthTokenInterceptor

View File

@ -1,6 +1,6 @@
package com.bitwarden.network.interceptor
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* An overall container for various [BaseUrlInterceptor] implementations for different API groups.

View File

@ -1,6 +1,6 @@
package com.bitwarden.network.ssl
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
import java.net.Socket
import java.security.Principal
import java.security.PrivateKey

View File

@ -1,7 +1,7 @@
package com.bitwarden.network.util
import android.os.Build
import com.bitwarden.core.annotation.OmitFromCoverage
import com.bitwarden.annotation.OmitFromCoverage
/**
* Provides device model string. Useful for mocking static [Build.MODEL] call tests.

View File

@ -49,6 +49,7 @@ buildCache {
rootProject.name = "Bitwarden"
include(
":annotation",
":app",
":authenticator",
":authenticatorbridge",

View File

@ -40,6 +40,8 @@ android {
}
dependencies {
implementation(project(":annotation"))
implementation(libs.androidx.appcompat)
implementation(platform(libs.androidx.compose.bom))
implementation(libs.androidx.compose.animation)