Skip to content

Commit

Permalink
Merge pull request #102 from atlassian/noissue/removing-coroutines
Browse files Browse the repository at this point in the history
  • Loading branch information
diegoocampoh authored May 24, 2023
2 parents 59ec7e2 + 4d9bd99 commit e1b24a6
Show file tree
Hide file tree
Showing 6 changed files with 12 additions and 13 deletions.
1 change: 0 additions & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@ tasks.withType<KotlinCompile> {
"-progressive",
"-java-parameters",
"-opt-in=kotlin.time.ExperimentalTime",
"-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
"-opt-in=kotlin.RequiresOptIn"
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import com.atlassian.onetime.model.TOTPSecret
import java.security.SecureRandom

fun interface SecretProvider {
suspend fun generateSecret(): TOTPSecret
fun generateSecret(): TOTPSecret
}

class AsciiRangeSecretProvider : SecretProvider {
Expand All @@ -13,14 +13,14 @@ class AsciiRangeSecretProvider : SecretProvider {
val ASCII_RANGE: CharRange = (' '..'z')
}

override suspend fun generateSecret() = TOTPSecret(
override fun generateSecret() = TOTPSecret(
(1..20).map { ASCII_RANGE.random() }.joinToString("").toByteArray()
)
}

class RandomSecretProvider : SecretProvider {

override suspend fun generateSecret() =
override fun generateSecret() =
SecureRandom().let {
val byteArray = ByteArray(20)
it.nextBytes(byteArray)
Expand Down
12 changes: 6 additions & 6 deletions src/main/kotlin/com/atlassian/onetime/service/TOTPService.kt
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,15 @@ import java.net.URLEncoder

interface TOTPService {

suspend fun generateTotpSecret(): TOTPSecret
fun generateTotpSecret(): TOTPSecret

suspend fun generateTOTPUrl(
fun generateTOTPUrl(
totpSecret: TOTPSecret,
emailAddress: EmailAddress,
issuer: Issuer
): URI

suspend fun verify(
fun verify(
code: TOTP,
totpSecret: TOTPSecret
): TOTPVerificationResult
Expand Down Expand Up @@ -49,9 +49,9 @@ class DefaultTOTPService(
private const val DIGITS_QUERY_PARAM = "digits"
private const val PERIOD_QUERY_PARAM = "period"
}
override suspend fun generateTotpSecret(): TOTPSecret = totpConfiguration.secretProvider.generateSecret()
override fun generateTotpSecret(): TOTPSecret = totpConfiguration.secretProvider.generateSecret()

override suspend fun generateTOTPUrl(
override fun generateTOTPUrl(
totpSecret: TOTPSecret,
emailAddress: EmailAddress,
issuer: Issuer
Expand All @@ -67,7 +67,7 @@ class DefaultTOTPService(
return URI(template)
}

override suspend fun verify(
override fun verify(
code: TOTP,
totpSecret: TOTPSecret
): TOTPVerificationResult {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ class HOTPGeneratorTest : FunSpec() {
}
}

private suspend fun given(state: TestState = TestState(), test: suspend TestState.(HOTPGenerator) -> Unit) {
private fun given(state: TestState = TestState(), test: TestState.(HOTPGenerator) -> Unit) {
with(state) {
test(state.hotpGenerator)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ class TOTPGeneratorTest : FunSpec() {
}
}

private suspend fun given(state: TestState = TestState(), test: suspend TestState.(TOTPGenerator) -> Unit) {
private fun given(state: TestState = TestState(), test: TestState.(TOTPGenerator) -> Unit) {
with(state) {
test(state.totpGenerator)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,7 @@ class DefaultTOTPServiceTest : FunSpec({
}
})

private suspend fun given(state: TestState = TestState(), test: suspend TestState.(DefaultTOTPService) -> Unit) {
private fun given(state: TestState = TestState(), test: TestState.(DefaultTOTPService) -> Unit) {
with(state) {
test(state.defaultTOTPService)
}
Expand Down

0 comments on commit e1b24a6

Please sign in to comment.