trait EclairRpcTestUtil extends Logging
- Alphabetic
- By Inheritance
- EclairRpcTestUtil
- Logging
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- case class EclairNetwork(bitcoind: BitcoindRpcClient, testEclairNode: EclairRpcClient, networkEclairNodes: Vector[EclairRpcClient], channelIds: Vector[FundedChannelId]) extends Product with Serializable
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def awaitChannelOpened(client1: EclairApi, chanId: ChannelId)(implicit system: ActorSystem): Future[Unit]
- def awaitEclairInSync(eclair: EclairRpcClient, bitcoind: BitcoindRpcClient)(implicit system: ActorSystem): Future[Unit]
Returns a
Future
that is completed when both eclair and bitcoind have the same block height Fails the future if they are not sychronized within the given timeout. - def awaitUntilChannelClosing(client: EclairApi, chanId: ChannelId)(implicit system: ActorSystem): Future[Unit]
- def awaitUntilChannelNormal(client: EclairApi, chanId: ChannelId)(implicit system: ActorSystem): Future[Unit]
Doesn't return until the given channelId is in the ChannelState.NORMAL for this EclairRpcClient
- def awaitUntilIncomingPaymentStatus[T <: IncomingPaymentStatus](client: EclairApi, paymentHash: Sha256Digest, interval: FiniteDuration = 1.second, maxTries: Int = 60)(implicit system: ActorSystem, tag: ClassTag[T]): Future[Unit]
- def awaitUntilPaymentFailed(client: EclairApi, paymentId: PaymentId, duration: FiniteDuration = 1.second, maxTries: Int = 60, failFast: Boolean = false)(implicit system: ActorSystem): Future[Unit]
- def awaitUntilPaymentSucceeded(client: EclairApi, paymentId: PaymentId, duration: FiniteDuration = 1.second, maxTries: Int = 60, failFast: Boolean = true)(implicit system: ActorSystem): Future[Unit]
- def bitcoindInstance(port: Int = RpcUtil.randomPort, rpcPort: Int = RpcUtil.randomPort, zmqConfig: ZmqConfig = RpcUtil.zmqConfig, bitcoindV: BitcoindVersion = EclairRpcClient.bitcoindV)(implicit system: ActorSystem): BitcoindInstanceLocal
Creates a bitcoind instance with the given parameters
- def cannonicalDatadir: File
- def cannonicalEclairClient(eclairVersionOpt: Option[String] = None, eclairCommitOpt: Option[String] = None, binaryDirectory: Path = EclairRpcTestClient.sbtBinaryDirectory)(implicit system: ActorSystem): EclairRpcClient
- def cannonicalEclairInstance(logbackXml: Option[String] = None): EclairInstanceLocal
Assumes bitcoind is running already and you have specified correct bindings in eclair.conf
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def connectLNNodes(client: EclairApi, otherClient: EclairApi)(implicit system: ActorSystem): Future[Unit]
- def createNodeLink(channelAmount: MilliSatoshis)(implicit actorSystem: ActorSystem): Future[EclairNodes4]
Creates four Eclair nodes that are connected in the following manner:
Creates four Eclair nodes that are connected in the following manner:
node1 <-> node2 <-> node3 <-> node4
Each double sided arrow represents a P2P connection as well as a funded channel
- returns
A 4-tuple of the created nodes' respective EclairRpcClient
- Note
Blocks the current thread
- def createNodeLink()(implicit actorSystem: ActorSystem): Future[EclairNodes4]
Creates four Eclair nodes that are connected in the following manner:
Creates four Eclair nodes that are connected in the following manner:
node1 <-> node2 <-> node3 <-> node4
Each double sided arrow represents a P2P connection as well as a funded channel
- returns
A 4-tuple of the created nodes' respective EclairRpcClient
- Note
Blocks the current thread
- def createNodeLink(bitcoindRpcClient: BitcoindRpcClient, channelAmount: MilliSatoshis)(implicit actorSystem: ActorSystem): Future[EclairNodes4]
Creates four Eclair nodes that are connected in the following manner:
Creates four Eclair nodes that are connected in the following manner:
node1 <-> node2 <-> node3 <-> node4
Each double sided arrow represents a P2P connection as well as a funded channel
- returns
A 4-tuple of the created nodes' respective EclairRpcClient
- Note
Blocks the current thread
- def createNodeLink(bitcoindRpcClient: BitcoindRpcClient)(implicit actorSystem: ActorSystem): Future[EclairNodes4]
Creates four Eclair nodes that are connected in the following manner:
Creates four Eclair nodes that are connected in the following manner:
node1 <-> node2 <-> node3 <-> node4
Each double sided arrow represents a P2P connection as well as a funded channel
- returns
A 4-tuple of the created nodes' respective EclairRpcClient
- Note
Blocks the current thread
- def createNodePair(bitcoindRpcClientOpt: Option[BitcoindRpcClient], eclairVersionOpt1: Option[String] = None, eclairCommitOpt1: Option[String] = None, eclairVersionOpt2: Option[String] = None, eclairCommitOpt2: Option[String] = None, binaryDirectory: Path = EclairRpcTestClient.sbtBinaryDirectory)(implicit system: ActorSystem): Future[(EclairRpcClient, EclairRpcClient)]
Creates two Eclair nodes that are connected together and returns their respective EclairRpcClients
- def debug(mkr: Marker, msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def debug(msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def debug(msg: => Any): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def eclairDataDir(bitcoindRpcClient: BitcoindRpcClient, isCannonical: Boolean): File
- def eclairInstance(bitcoindRpc: BitcoindRpcClient, logbackXml: Option[String] = None): EclairInstanceLocal
Starts the given bitcoind instance and then starts the eclair instance
- def eclairInstance(datadir: File, logbackXml: Option[String]): EclairInstanceLocal
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def error(mkr: Marker, msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def error(msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def error(msg: => Any): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def getBitcoindRpc(eclairRpcClient: EclairRpcClient, bitcoindVersion: BitcoindVersion = EclairRpcClient.bitcoindV)(implicit system: ActorSystem): BitcoindRpcClient
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def info(mkr: Marker, msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def info(msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def info(msg: => Any): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def isDebugEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
- def isErrorEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
- def isInfoEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isTraceEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
- def isWarnEnabled: Boolean
- Attributes
- protected
- Definition Classes
- Logging
- def logger: Logger
- Attributes
- protected
- Definition Classes
- Logging
- def loggerName: String
- Attributes
- protected
- Definition Classes
- Logging
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def openAndConfirmChannel(client1F: Future[EclairRpcClient], client2F: Future[EclairRpcClient], amount: CurrencyUnit = Satoshis(1000000))(implicit system: ActorSystem): Future[ChannelId]
- def openChannel(n1: EclairRpcClient, n2: EclairRpcClient, amt: CurrencyUnit = DEFAULT_CHANNEL_MSAT_AMT.toSatoshis, pushMSat: MilliSatoshis = MilliSatoshis(
DEFAULT_CHANNEL_MSAT_AMT.toLong / 2))(implicit system: ActorSystem): Future[FundedChannelId]
Opens a channel from n1 -> n2
- def randomEclairClient(bitcoindRpcOpt: Option[BitcoindRpcClient] = None, eclairVersionOpt: Option[String] = None, eclairCommitOpt: Option[String] = None)(implicit system: ActorSystem): Future[EclairRpcClient]
- def randomEclairDatadir(): File
- def randomEclairInstance(bitcoindRpc: BitcoindRpcClient, logbackXml: Option[String] = None): EclairInstanceLocal
- def sendPayments(c1: EclairApi, c2: EclairApi, numPayments: Int = 5)(implicit ec: ExecutionContext): Future[Vector[PaymentId]]
Sends
numPayments
betweenc1
andc2
.Sends
numPayments
betweenc1
andc2
. No aspect of the payment (size, description, etc) should be assumed to have a certain value, this method is just for populating channel update history with something. - def shutdown(eclairRpcClient: EclairRpcClient)(implicit system: ActorSystem): Future[Unit]
Shuts down an eclair daemon and the bitcoind daemon it is associated with
- def startedBitcoindRpcClient(instanceOpt: Option[BitcoindInstanceLocal] = None)(implicit actorSystem: ActorSystem): Future[BitcoindRpcClient]
Makes a best effort to get a 0.16 bitcoind instance
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def trace(mkr: Marker, msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def trace(msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def trace(msg: => Any): Unit
- Attributes
- protected
- Definition Classes
- Logging
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def warn(mkr: Marker, msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def warn(msg: => Any, t: => Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def warn(msg: => Any): Unit
- Attributes
- protected
- Definition Classes
- Logging
- object EclairNetwork extends Serializable