Moving the EmptyOTS resolver to Quartz for test cases

This commit is contained in:
Vitor Pamplona
2025-10-17 14:29:46 -04:00
parent 563e985a2b
commit 990cca3d64
5 changed files with 32 additions and 40 deletions

View File

@@ -28,7 +28,6 @@ import com.vitorpamplona.amethyst.model.LocalCache
import com.vitorpamplona.amethyst.service.location.LocationState
import com.vitorpamplona.amethyst.service.okhttp.OkHttpWebSocket
import com.vitorpamplona.amethyst.service.relayClient.reqCommand.nwc.NWCPaymentFilterAssembler
import com.vitorpamplona.amethyst.ui.screen.loggedIn.EmptyOtsResolverBuilder
import com.vitorpamplona.amethyst.ui.screen.loggedIn.threadview.dal.ThreadFeedFilter
import com.vitorpamplona.quartz.nip01Core.core.Event
import com.vitorpamplona.quartz.nip01Core.crypto.KeyPair
@@ -37,6 +36,7 @@ import com.vitorpamplona.quartz.nip01Core.jackson.JacksonMapper
import com.vitorpamplona.quartz.nip01Core.relay.client.NostrClient
import com.vitorpamplona.quartz.nip01Core.signers.NostrSignerInternal
import com.vitorpamplona.quartz.nip01Core.tags.aTag.ATag
import com.vitorpamplona.quartz.nip03Timestamp.EmptyOtsResolverBuilder
import junit.framework.TestCase
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers

View File

@@ -104,12 +104,7 @@ import com.vitorpamplona.quartz.nip01Core.signers.NostrSignerInternal
import com.vitorpamplona.quartz.nip01Core.signers.SignerExceptions
import com.vitorpamplona.quartz.nip01Core.tags.people.PubKeyReferenceTag
import com.vitorpamplona.quartz.nip01Core.tags.people.isTaggedUser
import com.vitorpamplona.quartz.nip03Timestamp.OtsResolver
import com.vitorpamplona.quartz.nip03Timestamp.OtsResolverBuilder
import com.vitorpamplona.quartz.nip03Timestamp.ots.BitcoinExplorer
import com.vitorpamplona.quartz.nip03Timestamp.ots.BlockHeader
import com.vitorpamplona.quartz.nip03Timestamp.ots.RemoteCalendar
import com.vitorpamplona.quartz.nip03Timestamp.ots.Timestamp
import com.vitorpamplona.quartz.nip03Timestamp.EmptyOtsResolverBuilder
import com.vitorpamplona.quartz.nip17Dm.base.ChatroomKeyable
import com.vitorpamplona.quartz.nip18Reposts.GenericRepostEvent
import com.vitorpamplona.quartz.nip18Reposts.RepostEvent
@@ -1735,36 +1730,3 @@ fun mockVitorAccountViewModel(): AccountViewModel {
vitorCache = it
}
}
val EmptyOtsResolverBuilder =
object : OtsResolverBuilder {
override fun build(): OtsResolver =
OtsResolver(
explorer =
object : BitcoinExplorer {
override suspend fun block(hash: String): BlockHeader {
TODO("Not yet implemented")
}
override suspend fun blockHash(height: Int): String {
TODO("Not yet implemented")
}
},
calendar =
object : RemoteCalendar {
override suspend fun submit(
url: String,
digest: ByteArray,
): Timestamp {
TODO("Not yet implemented")
}
override suspend fun getTimestamp(
url: String,
commitment: ByteArray,
): Timestamp {
TODO("Not yet implemented")
}
},
)
}

View File

@@ -20,6 +20,18 @@
*/
package com.vitorpamplona.quartz.nip03Timestamp
import com.vitorpamplona.quartz.nip03Timestamp.ots.EmptyBitcoinExplorer
import com.vitorpamplona.quartz.nip03Timestamp.ots.EmptyRemoteCalendar
interface OtsResolverBuilder {
fun build(): OtsResolver
}
val EmptyOtsResolverBuilder =
object : OtsResolverBuilder {
override fun build(): OtsResolver =
OtsResolver(
explorer = EmptyBitcoinExplorer,
calendar = EmptyRemoteCalendar,
)
}

View File

@@ -39,3 +39,9 @@ interface BitcoinExplorer {
*/
suspend fun blockHash(height: Int): String
}
object EmptyBitcoinExplorer : BitcoinExplorer {
override suspend fun block(hash: String) = TODO("Not yet implemented")
override suspend fun blockHash(height: Int) = TODO("Not yet implemented")
}

View File

@@ -55,3 +55,15 @@ interface RemoteCalendar {
commitment: ByteArray,
): Timestamp
}
object EmptyRemoteCalendar : RemoteCalendar {
override suspend fun submit(
url: String,
digest: ByteArray,
) = TODO("Not yet implemented")
override suspend fun getTimestamp(
url: String,
commitment: ByteArray,
) = TODO("Not yet implemented")
}