mirror of
https://github.com/bitcoin-s/bitcoin-s.git
synced 2025-03-13 19:37:30 +01:00
(WIP) Createwallet rpc from V17 (#712)
* create wallet rpc * fixed test * change to createwallet test * create wallet test
This commit is contained in:
parent
1619d5d123
commit
a2bbffe3ab
4 changed files with 27 additions and 0 deletions
|
@ -234,4 +234,15 @@ class BitcoindV17RpcClientTest extends BitcoindRpcTest {
|
|||
assert(list.forall(_.label != unusedLabel))
|
||||
}
|
||||
}
|
||||
|
||||
it should "create a wallet" in {
|
||||
for {
|
||||
(client, _) <- clientsF
|
||||
_ <- client.createWallet("suredbits")
|
||||
wallets <- client.listWallets
|
||||
} yield {
|
||||
assert(wallets.exists(_ == "suredbits"))
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,6 +13,7 @@ import org.bitcoins.rpc.client.common.{
|
|||
import org.bitcoins.rpc.config.BitcoindInstance
|
||||
import org.bitcoins.rpc.jsonmodels.{
|
||||
AddressInfoResult,
|
||||
CreateWalletResult,
|
||||
SignRawTransactionResult,
|
||||
TestMempoolAcceptResult
|
||||
}
|
||||
|
@ -93,6 +94,13 @@ class BitcoindV17RpcClient(override val instance: BitcoindInstance)(
|
|||
.map(_.head)
|
||||
}
|
||||
|
||||
def createWallet(
|
||||
walletName: String,
|
||||
disablePrivateKeys: Boolean = false): Future[CreateWalletResult] = {
|
||||
bitcoindCall[CreateWalletResult](
|
||||
"createwallet",
|
||||
List(JsString(walletName), Json.toJson(disablePrivateKeys)))
|
||||
}
|
||||
}
|
||||
|
||||
object BitcoindV17RpcClient {
|
||||
|
|
|
@ -224,3 +224,8 @@ case class EmbeddedResult(
|
|||
extends WalletResult
|
||||
|
||||
case class LabelResult(name: String, purpose: LabelPurpose) extends WalletResult
|
||||
|
||||
final case class CreateWalletResult(
|
||||
name: String,
|
||||
warning: String
|
||||
) extends WalletResult
|
||||
|
|
|
@ -379,6 +379,9 @@ object JsonSerializers {
|
|||
implicit val testMempoolAcceptResultReads: Reads[TestMempoolAcceptResult] =
|
||||
TestMempoolAcceptResultReads
|
||||
|
||||
implicit val createWalletResultReads: Reads[CreateWalletResult] =
|
||||
Json.reads[CreateWalletResult]
|
||||
|
||||
// Map stuff
|
||||
implicit def mapDoubleSha256DigestReads: Reads[
|
||||
Map[DoubleSha256Digest, GetMemPoolResult]] =
|
||||
|
|
Loading…
Add table
Reference in a new issue