Skip to content

Commit 50a75a1

Browse files
committed
Replace Arc.clone()s with Arc::clone() in remaining tests
`arc.clone()` leaves the code somewhat ambiguous to whether we're doing an expensive deep-clone operation or if we're doing a (relatively) cheap pointer-copy-and-atomic-increment operation. More importantly, it leaves entirely unclear what the semantics of the object we just created are - does updating it update the original or leave it be? Thus, here, we replace `arc.clone()` calls with `Arc::clone()` in remaining tests.
1 parent 6ff262f commit 50a75a1

File tree

10 files changed

+56
-54
lines changed

10 files changed

+56
-54
lines changed

lightning-liquidity/src/lsps0/service.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,8 @@ mod tests {
9393
let protocols: Vec<u16> = vec![];
9494
let pending_messages = Arc::new(MessageQueue::new());
9595

96-
let lsps0_handler = Arc::new(LSPS0ServiceHandler::new(protocols, pending_messages.clone()));
96+
let lsps0_handler =
97+
Arc::new(LSPS0ServiceHandler::new(protocols, Arc::clone(&pending_messages)));
9798

9899
let list_protocols_request = LSPS0Message::Request(
99100
LSPSRequestId("xyz123".to_string()),

lightning-liquidity/tests/common/mod.rs

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -408,16 +408,16 @@ pub(crate) fn create_liquidity_node(
408408
let fee_estimator = Arc::new(test_utils::TestFeeEstimator::new(253));
409409
let logger = Arc::new(test_utils::TestLogger::with_id(format!("node {}", i)));
410410
let genesis_block = genesis_block(network);
411-
let network_graph = Arc::new(NetworkGraph::new(network, logger.clone()));
411+
let network_graph = Arc::new(NetworkGraph::new(network, Arc::clone(&logger)));
412412
let scorer = Arc::new(LockingWrapper::new(TestScorer::new()));
413413
let now = Duration::from_secs(genesis_block.header.time as u64);
414414
let seed = [i as u8; 32];
415415
let keys_manager = Arc::new(KeysManager::new(&seed, now.as_secs(), now.subsec_nanos()));
416416
let router = Arc::new(DefaultRouter::new(
417417
Arc::clone(&network_graph),
418-
logger.clone(),
419-
keys_manager.clone(),
420-
scorer.clone(),
418+
Arc::clone(&logger),
419+
Arc::clone(&keys_manager),
420+
Arc::clone(&scorer),
421421
Default::default(),
422422
));
423423
let msg_router =
@@ -426,34 +426,34 @@ pub(crate) fn create_liquidity_node(
426426
let kv_store =
427427
Arc::new(FilesystemStore::new(format!("{}_persister_{}", &persist_dir, i).into()));
428428
let chain_monitor = Arc::new(chainmonitor::ChainMonitor::new(
429-
Some(chain_source.clone()),
430-
tx_broadcaster.clone(),
431-
logger.clone(),
432-
fee_estimator.clone(),
433-
kv_store.clone(),
434-
keys_manager.clone(),
429+
Some(Arc::clone(&chain_source)),
430+
Arc::clone(&tx_broadcaster),
431+
Arc::clone(&logger),
432+
Arc::clone(&fee_estimator),
433+
Arc::clone(&kv_store),
434+
Arc::clone(&keys_manager),
435435
keys_manager.get_peer_storage_key(),
436436
));
437437
let best_block = BestBlock::from_network(network);
438438
let chain_params = ChainParameters { network, best_block };
439439
let channel_manager = Arc::new(ChannelManager::new(
440-
fee_estimator.clone(),
441-
chain_monitor.clone(),
442-
tx_broadcaster.clone(),
443-
router.clone(),
444-
msg_router.clone(),
445-
logger.clone(),
446-
keys_manager.clone(),
447-
keys_manager.clone(),
448-
keys_manager.clone(),
440+
Arc::clone(&fee_estimator),
441+
Arc::clone(&chain_monitor),
442+
Arc::clone(&tx_broadcaster),
443+
Arc::clone(&router),
444+
Arc::clone(&msg_router),
445+
Arc::clone(&logger),
446+
Arc::clone(&keys_manager),
447+
Arc::clone(&keys_manager),
448+
Arc::clone(&keys_manager),
449449
UserConfig::default(),
450450
chain_params,
451451
genesis_block.header.time,
452452
));
453453
let p2p_gossip_sync = Arc::new(P2PGossipSync::new(
454-
network_graph.clone(),
455-
Some(chain_source.clone()),
456-
logger.clone(),
454+
Arc::clone(&network_graph),
455+
Some(Arc::clone(&chain_source)),
456+
Arc::clone(&logger),
457457
));
458458

459459
let liquidity_manager = Arc::new(LiquidityManager::new(
@@ -474,13 +474,13 @@ pub(crate) fn create_liquidity_node(
474474
send_only_message_handler: Arc::clone(&chain_monitor),
475475
};
476476
let peer_manager =
477-
Arc::new(PeerManager::new(msg_handler, 0, &seed, logger.clone(), keys_manager.clone()));
477+
PeerManager::new(msg_handler, 0, &seed, Arc::clone(&logger), Arc::clone(&keys_manager));
478478

479479
Node {
480480
channel_manager,
481481
keys_manager,
482482
p2p_gossip_sync,
483-
peer_manager,
483+
peer_manager: Arc::new(peer_manager),
484484
liquidity_manager,
485485
chain_monitor,
486486
kv_store,

lightning/src/ln/functional_test_utils.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3355,8 +3355,8 @@ pub fn create_node_cfgs_with_persisters<'a>(node_count: usize, chanmon_cfgs: &'a
33553355
logger: &chanmon_cfgs[i].logger,
33563356
tx_broadcaster: &chanmon_cfgs[i].tx_broadcaster,
33573357
fee_estimator: &chanmon_cfgs[i].fee_estimator,
3358-
router: test_utils::TestRouter::new(network_graph.clone(), &chanmon_cfgs[i].logger, &chanmon_cfgs[i].scorer),
3359-
message_router: test_utils::TestMessageRouter::new(network_graph.clone(), &chanmon_cfgs[i].keys_manager),
3358+
router: test_utils::TestRouter::new(Arc::clone(&network_graph), &chanmon_cfgs[i].logger, &chanmon_cfgs[i].scorer),
3359+
message_router: test_utils::TestMessageRouter::new(Arc::clone(&network_graph), &chanmon_cfgs[i].keys_manager),
33603360
chain_monitor,
33613361
keys_manager: &chanmon_cfgs[i].keys_manager,
33623362
node_seed: seed,
@@ -3425,19 +3425,19 @@ pub fn create_network<'a, 'b: 'a, 'c: 'b>(node_count: usize, cfgs: &'b Vec<NodeC
34253425
);
34263426
let gossip_sync = P2PGossipSync::new(cfgs[i].network_graph.as_ref(), None, cfgs[i].logger);
34273427
let wallet_source = Arc::new(test_utils::TestWalletSource::new(SecretKey::from_slice(&[i as u8 + 1; 32]).unwrap()));
3428-
let wallet = Arc::new(WalletSync::new(wallet_source.clone(), cfgs[i].logger));
3428+
let wallet = Arc::new(WalletSync::new(Arc::clone(&wallet_source), cfgs[i].logger));
34293429
nodes.push(Node{
34303430
chain_source: cfgs[i].chain_source, tx_broadcaster: cfgs[i].tx_broadcaster,
34313431
fee_estimator: cfgs[i].fee_estimator, router: &cfgs[i].router,
34323432
message_router: &cfgs[i].message_router, chain_monitor: &cfgs[i].chain_monitor,
34333433
keys_manager: &cfgs[i].keys_manager, node: &chan_mgrs[i],
34343434
network_graph: cfgs[i].network_graph.as_ref(), gossip_sync,
3435-
node_seed: cfgs[i].node_seed, onion_messenger, network_chan_count: chan_count.clone(),
3436-
network_payment_count: payment_count.clone(), logger: cfgs[i].logger,
3435+
node_seed: cfgs[i].node_seed, onion_messenger, network_chan_count: Rc::clone(&chan_count),
3436+
network_payment_count: Rc::clone(&payment_count), logger: cfgs[i].logger,
34373437
blocks: Arc::clone(&cfgs[i].tx_broadcaster.blocks),
34383438
connect_style: Rc::clone(&connect_style),
34393439
override_init_features: Rc::clone(&cfgs[i].override_init_features),
3440-
wallet_source: wallet_source.clone(),
3440+
wallet_source: Arc::clone(&wallet_source),
34413441
bump_tx_handler: BumpTransactionEventHandlerSync::new(
34423442
cfgs[i].tx_broadcaster, wallet,
34433443
&cfgs[i].keys_manager, cfgs[i].logger,

lightning/src/ln/functional_tests.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5173,8 +5173,9 @@ pub fn test_key_derivation_params() {
51735173
let network_graph = Arc::new(NetworkGraph::new(Network::Testnet, &chanmon_cfgs[0].logger));
51745174
let scorer = RwLock::new(test_utils::TestScorer::new());
51755175
let router =
5176-
test_utils::TestRouter::new(network_graph.clone(), &chanmon_cfgs[0].logger, &scorer);
5177-
let message_router = test_utils::TestMessageRouter::new(network_graph.clone(), &keys_manager);
5176+
test_utils::TestRouter::new(Arc::clone(&network_graph), &chanmon_cfgs[0].logger, &scorer);
5177+
let message_router =
5178+
test_utils::TestMessageRouter::new(Arc::clone(&network_graph), &keys_manager);
51785179
let node = NodeCfg {
51795180
chain_source: &chanmon_cfgs[0].chain_source,
51805181
logger: &chanmon_cfgs[0].logger,

lightning/src/onion_message/functional_tests.rs

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -266,8 +266,8 @@ impl MessengerCfg {
266266

267267
fn create_nodes_using_cfgs(cfgs: Vec<MessengerCfg>) -> Vec<MessengerNode> {
268268
let gossip_logger = Arc::new(TestLogger::with_id("gossip".to_string()));
269-
let network_graph = Arc::new(NetworkGraph::new(Network::Testnet, gossip_logger.clone()));
270-
let gossip_sync = Arc::new(P2PGossipSync::new(network_graph.clone(), None, gossip_logger));
269+
let network_graph = Arc::new(NetworkGraph::new(Network::Testnet, Arc::clone(&gossip_logger)));
270+
let gossip_sync = Arc::new(P2PGossipSync::new(Arc::clone(&network_graph), None, gossip_logger));
271271

272272
let mut nodes = Vec::new();
273273
for (i, cfg) in cfgs.into_iter().enumerate() {
@@ -280,34 +280,34 @@ fn create_nodes_using_cfgs(cfgs: Vec<MessengerCfg>) -> Vec<MessengerNode> {
280280

281281
let node_id_lookup = Arc::new(EmptyNodeIdLookUp {});
282282
let message_router =
283-
Arc::new(DefaultMessageRouter::new(network_graph.clone(), entropy_source.clone()));
283+
DefaultMessageRouter::new(Arc::clone(&network_graph), Arc::clone(&entropy_source));
284284
let offers_message_handler = Arc::new(TestOffersMessageHandler {});
285285
let async_payments_message_handler = Arc::new(TestAsyncPaymentsMessageHandler {});
286286
let dns_resolver_message_handler = Arc::new(TestDNSResolverMessageHandler {});
287287
let custom_message_handler = Arc::new(TestCustomMessageHandler::new());
288288
let messenger = if cfg.intercept_offline_peer_oms {
289289
OnionMessenger::new_with_offline_peer_interception(
290-
entropy_source.clone(),
291-
node_signer.clone(),
292-
logger.clone(),
290+
Arc::clone(&entropy_source),
291+
Arc::clone(&node_signer),
292+
logger,
293293
node_id_lookup,
294-
message_router,
294+
Arc::new(message_router),
295295
offers_message_handler,
296296
async_payments_message_handler,
297297
dns_resolver_message_handler,
298-
custom_message_handler.clone(),
298+
Arc::clone(&custom_message_handler),
299299
)
300300
} else {
301301
OnionMessenger::new(
302-
entropy_source.clone(),
303-
node_signer.clone(),
304-
logger.clone(),
302+
Arc::clone(&entropy_source),
303+
Arc::clone(&node_signer),
304+
logger,
305305
node_id_lookup,
306-
message_router,
306+
Arc::new(message_router),
307307
offers_message_handler,
308308
async_payments_message_handler,
309309
dns_resolver_message_handler,
310-
custom_message_handler.clone(),
310+
Arc::clone(&custom_message_handler),
311311
)
312312
};
313313
nodes.push(MessengerNode {
@@ -316,7 +316,7 @@ fn create_nodes_using_cfgs(cfgs: Vec<MessengerCfg>) -> Vec<MessengerNode> {
316316
entropy_source,
317317
messenger,
318318
custom_message_handler,
319-
gossip_sync: gossip_sync.clone(),
319+
gossip_sync: Arc::clone(&gossip_sync),
320320
});
321321
}
322322
for i in 0..nodes.len() - 1 {

lightning/src/routing/router.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8414,8 +8414,8 @@ mod tests {
84148414
let secp_ctx = Secp256k1::new();
84158415
let logger = Arc::new(ln_test_utils::TestLogger::new());
84168416
let network_graph = Arc::new(NetworkGraph::new(Network::Testnet, Arc::clone(&logger)));
8417-
let gossip_sync = P2PGossipSync::new(network_graph.clone(), None, logger.clone());
8418-
let scorer = ProbabilisticScorer::new(ProbabilisticScoringDecayParameters::default(), network_graph.clone(), logger.clone());
8417+
let gossip_sync = P2PGossipSync::new(Arc::clone(&network_graph), None, Arc::clone(&logger));
8418+
let scorer = ProbabilisticScorer::new(ProbabilisticScoringDecayParameters::default(), Arc::clone(&network_graph), Arc::clone(&logger));
84198419
let random_seed_bytes = [42; 32];
84208420
let config = UserConfig::default();
84218421

@@ -8478,7 +8478,7 @@ mod tests {
84788478
let secp_ctx = Secp256k1::new();
84798479
let logger = Arc::new(ln_test_utils::TestLogger::new());
84808480
let network_graph = Arc::new(NetworkGraph::new(Network::Testnet, Arc::clone(&logger)));
8481-
let scorer = ProbabilisticScorer::new(ProbabilisticScoringDecayParameters::default(), network_graph.clone(), logger.clone());
8481+
let scorer = ProbabilisticScorer::new(ProbabilisticScoringDecayParameters::default(), Arc::clone(&network_graph), Arc::clone(&logger));
84828482
let random_seed_bytes = [42; 32];
84838483
let config = UserConfig::default();
84848484

lightning/src/util/persist.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1462,6 +1462,6 @@ mod tests {
14621462
#[test]
14631463
fn kvstore_trait_object_usage() {
14641464
let store: Arc<dyn KVStore + Send + Sync> = Arc::new(TestStore::new(false));
1465-
assert!(persist_fn::<_, TestChannelSigner>(store.clone()));
1465+
assert!(persist_fn::<_, TestChannelSigner>(Arc::clone(&store)));
14661466
}
14671467
}

lightning/src/util/sweep.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -992,7 +992,7 @@ where
992992
pub fn sweeper_async(
993993
&self,
994994
) -> Arc<OutputSweeper<B, Arc<ChangeDestinationSourceSyncWrapper<D>>, E, F, K, L, O>> {
995-
self.sweeper.clone()
995+
Arc::clone(&self.sweeper)
996996
}
997997
}
998998

lightning/src/util/test_utils.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ impl<'a> TestRouter<'a> {
157157
let next_blinded_payment_paths = Mutex::new(Vec::new());
158158
Self {
159159
router: DefaultRouter::new(
160-
network_graph.clone(),
160+
Arc::clone(&network_graph),
161161
logger,
162162
entropy_source,
163163
scorer,

lightning/src/util/wakers.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,7 @@ mod tests {
449449
let thread_notifier = Arc::clone(&persistence_notifier);
450450

451451
let exit_thread = Arc::new(AtomicBool::new(false));
452-
let exit_thread_clone = exit_thread.clone();
452+
let exit_thread_clone = Arc::clone(&exit_thread);
453453
thread::spawn(move || loop {
454454
thread_notifier.notify();
455455
if exit_thread_clone.load(Ordering::SeqCst) {

0 commit comments

Comments
 (0)