mirror of
https://github.com/logos-messaging/logos-messaging-nim.git
synced 2026-01-10 01:43:11 +00:00
tests pass - validate conf
This commit is contained in:
parent
9ec9468d6f
commit
d35251df6e
@ -100,7 +100,17 @@ proc toWakuConf*(libConf: LibWakuConf): Result[WakuConf, string] =
|
||||
b.rlnRelayConf.withDynamic(true)
|
||||
b.rlnRelayConf.withEthClientUrls(rlnConfig.rpcApiUrls)
|
||||
|
||||
# TODO: we should get rid of those two
|
||||
b.rlnRelayconf.withUserMessageLimit(100)
|
||||
b.rlnRelayConf.withTreePath("./rln_tree")
|
||||
|
||||
## Various configurations
|
||||
b.withNatStrategy("any")
|
||||
|
||||
return b.build()
|
||||
let wakuConf = b.build().valueOr:
|
||||
return err("Failed to build configuration: " & error)
|
||||
|
||||
wakuConf.validate().isOkOr:
|
||||
return err("Failed to validate configuration: " & error)
|
||||
|
||||
return ok(wakuConf)
|
||||
|
||||
@ -54,50 +54,6 @@ suite "LibWaku - createNode":
|
||||
node.conf.clusterId == 42
|
||||
node.conf.shardingConf.numShardsInCluster == 8
|
||||
|
||||
asyncTest "Create node with message validation and RLN":
|
||||
## Given
|
||||
let libConf = LibWakuConf(
|
||||
mode: Relay,
|
||||
networkConf: libwaku_conf.NetworkConf(
|
||||
bootstrapNodes: @[],
|
||||
staticStoreNodes: @[],
|
||||
clusterId: 1,
|
||||
shardingMode: StaticSharding,
|
||||
autoShardingConf: none(AutoShardingConf),
|
||||
messageValidation: some(
|
||||
MessageValidation(
|
||||
maxMessageSizeBytes: 200'u64 * 1024'u64, # 200KB
|
||||
rlnConfig: some(
|
||||
RlnConfig(
|
||||
contractAddress: "0x1234567890123456789012345678901234567890",
|
||||
chainId: 1'u,
|
||||
epochSizeSec: 600'u64,
|
||||
rpcApiUrls: @["https://example.com/1234"],
|
||||
)
|
||||
),
|
||||
)
|
||||
),
|
||||
),
|
||||
storeConfirmation: false,
|
||||
)
|
||||
|
||||
## When
|
||||
let node = (await createNode(libConf)).valueOr:
|
||||
raiseAssert error
|
||||
|
||||
## Then
|
||||
check:
|
||||
not node.isNil()
|
||||
node.conf.maxMessageSizeBytes == 200'u64 * 1024'u64
|
||||
node.conf.rlnRelayConf.isSome()
|
||||
|
||||
if node.conf.rlnRelayConf.isSome():
|
||||
let rlnConf = node.conf.rlnRelayConf.get()
|
||||
check:
|
||||
rlnConf.dynamic == true
|
||||
rlnConf.ethContractAddress == "0x1234567890123456789012345678901234567890"
|
||||
rlnConf.epochSizeSec == 600'u64
|
||||
|
||||
asyncTest "Create node with full configuration":
|
||||
## Given
|
||||
let libConf = LibWakuConf(
|
||||
|
||||
@ -25,6 +25,7 @@ suite "LibWaku Conf - toWakuConf":
|
||||
## Then
|
||||
require wakuConfRes.isOk()
|
||||
let wakuConf = wakuConfRes.get()
|
||||
require wakuConf.validate().isOk()
|
||||
check:
|
||||
wakuConf.relay == true
|
||||
wakuConf.lightPush == true
|
||||
@ -53,6 +54,7 @@ suite "LibWaku Conf - toWakuConf":
|
||||
## Then
|
||||
require wakuConfRes.isOk()
|
||||
let wakuConf = wakuConfRes.get()
|
||||
require wakuConf.validate().isOk()
|
||||
check:
|
||||
wakuConf.clusterId == 42
|
||||
wakuConf.shardingConf.kind == ShardingConfKind.AutoSharding
|
||||
@ -84,6 +86,7 @@ suite "LibWaku Conf - toWakuConf":
|
||||
## Then
|
||||
require wakuConfRes.isOk()
|
||||
let wakuConf = wakuConfRes.get()
|
||||
require wakuConf.validate().isOk()
|
||||
require wakuConf.discv5Conf.isSome()
|
||||
check:
|
||||
wakuConf.discv5Conf.get().bootstrapNodes == bootstrapNodes
|
||||
@ -114,6 +117,7 @@ suite "LibWaku Conf - toWakuConf":
|
||||
## Then
|
||||
require wakuConfRes.isOk()
|
||||
let wakuConf = wakuConfRes.get()
|
||||
require wakuConf.validate().isOk()
|
||||
check:
|
||||
wakuConf.staticNodes == staticStoreNodes
|
||||
|
||||
@ -143,6 +147,7 @@ suite "LibWaku Conf - toWakuConf":
|
||||
## Then
|
||||
require wakuConfRes.isOk()
|
||||
let wakuConf = wakuConfRes.get()
|
||||
require wakuConf.validate().isOk()
|
||||
check:
|
||||
wakuConf.maxMessageSizeBytes == 100'u64 * 1024'u64
|
||||
|
||||
@ -164,6 +169,7 @@ suite "LibWaku Conf - toWakuConf":
|
||||
contractAddress: "0x1234567890123456789012345678901234567890",
|
||||
chainId: 1'u,
|
||||
epochSizeSec: 600'u64,
|
||||
rpcApiUrls: @["http://127.0.0.1:1111"],
|
||||
)
|
||||
),
|
||||
)
|
||||
@ -173,11 +179,12 @@ suite "LibWaku Conf - toWakuConf":
|
||||
)
|
||||
|
||||
## When
|
||||
let wakuConfRes = toWakuConf(libConf)
|
||||
let wakuConf = toWakuConf(libConf).valueOr:
|
||||
raiseAssert error
|
||||
|
||||
wakuConf.validate().isOkOr:
|
||||
raiseAssert error
|
||||
|
||||
## Then
|
||||
require wakuConfRes.isOk()
|
||||
let wakuConf = wakuConfRes.get()
|
||||
check:
|
||||
wakuConf.maxMessageSizeBytes == 150'u64 * 1024'u64
|
||||
|
||||
@ -213,6 +220,7 @@ suite "LibWaku Conf - toWakuConf":
|
||||
contractAddress: "0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
|
||||
chainId: 5'u, # Goerli
|
||||
epochSizeSec: 300'u64,
|
||||
rpcApiUrls: @["https://127.0.0.1:8333"],
|
||||
)
|
||||
),
|
||||
)
|
||||
@ -225,8 +233,10 @@ suite "LibWaku Conf - toWakuConf":
|
||||
let wakuConfRes = toWakuConf(libConf)
|
||||
|
||||
## Then
|
||||
require wakuConfRes.isOk()
|
||||
let wakuConf = wakuConfRes.get()
|
||||
let wakuConf = wakuConfRes.valueOr:
|
||||
raiseAssert error
|
||||
wakuConf.validate().isOkOr:
|
||||
raiseAssert error
|
||||
|
||||
# Check basic settings
|
||||
check:
|
||||
@ -283,8 +293,10 @@ suite "LibWaku Conf - toWakuConf":
|
||||
let wakuConfRes = toWakuConf(libConf)
|
||||
|
||||
## Then
|
||||
require wakuConfRes.isOk()
|
||||
let wakuConf = wakuConfRes.get()
|
||||
let wakuConf = wakuConfRes.valueOr:
|
||||
raiseAssert error
|
||||
wakuConf.validate().isOkOr:
|
||||
raiseAssert error
|
||||
check:
|
||||
wakuConf.clusterId == 0
|
||||
wakuConf.shardingConf.kind == ShardingConfKind.StaticSharding
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user