[Java] Add a simple read lock call in HumanObjectPeerTest
authorMatt Corallo <git@bluematt.me>
Thu, 28 Jul 2022 05:40:56 +0000 (05:40 +0000)
committerMatt Corallo <git@bluematt.me>
Thu, 28 Jul 2022 05:40:56 +0000 (05:40 +0000)
src/test/java/org/ldk/HumanObjectPeerTest.java

index 751f198fe4fe4c46368a6b8b799342ebecc0a01f..70f57796fa889bee9813dd3088fbeb1a2c3a0e34 100644 (file)
@@ -399,7 +399,11 @@ class HumanObjectPeerTestInstance {
                     this.payer = InvoicePayer.of(this.chan_manager.as_Payer(), Router.new_impl(new Router.RouterInterface() {
                         @Override
                         public Result_RouteLightningErrorZ find_route(byte[] payer, RouteParameters params, byte[] payment_hash, ChannelDetails[] first_hops, Score scorer) {
-                            return UtilMethods.find_route(payer, params, router, first_hops, logger, scorer, new byte[32]);
+                            // Take a read lock on the NetworkGraph just to make sure we even can.
+                            try (ReadOnlyNetworkGraph graph = router.read_only()) {
+                                assert graph.channel(424242) == null;
+                                return UtilMethods.find_route(payer, params, router, first_hops, logger, scorer, new byte[32]);
+                            }
                         }
                     }), MultiThreadedLockableScore.of(Score.new_impl(new Score.ScoreInterface() {
                         @Override public void payment_path_failed(RouteHop[] path, long scid) {}