Skip to content

Commit

Permalink
context: take network by value in set_network()
Browse files Browse the repository at this point in the history
Avoids a clone() and we don't need the network after setting it on the
caller side.

Change-Id: Id8f44b83b89285c7df2cb7afe1e7a2a31df0d9bd
  • Loading branch information
vmiklos committed Mar 17, 2023
1 parent 8aa433d commit 2ad52e7
Show file tree
Hide file tree
Showing 8 changed files with 33 additions and 33 deletions.
4 changes: 2 additions & 2 deletions src/context.rs
Expand Up @@ -263,8 +263,8 @@ impl Context {
}

/// Sets the network implementation.
pub fn set_network(&mut self, network: &Arc<dyn Network>) {
self.network = network.clone();
pub fn set_network(&mut self, network: Arc<dyn Network>) {
self.network = network;
}

/// Gets the time implementation.
Expand Down
2 changes: 1 addition & 1 deletion src/context/tests.rs
Expand Up @@ -29,7 +29,7 @@ pub fn make_test_context() -> anyhow::Result<Context> {
ctx.set_time(&time_arc);
let network = TestNetwork::new(&[]);
let network_arc: Arc<dyn Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let subprocess = TestSubprocess::new(&HashMap::new());
let subprocess_arc: Arc<dyn Subprocess> = Arc::new(subprocess);
ctx.set_subprocess(&subprocess_arc);
Expand Down
26 changes: 13 additions & 13 deletions src/cron/tests.rs
Expand Up @@ -29,7 +29,7 @@ fn test_overpass_sleep_no_sleep() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);

overpass_sleep(&ctx);

Expand Down Expand Up @@ -59,7 +59,7 @@ fn test_overpass_sleep_need_sleep() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);

overpass_sleep(&ctx);

Expand Down Expand Up @@ -484,7 +484,7 @@ fn test_update_osm_housenumbers() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let mut relations = areas::Relations::new(&ctx).unwrap();
let path = ctx.get_abspath("workdir/street-housenumbers-gazdagret.csv");
let expected = std::fs::read_to_string(&path).unwrap();
Expand Down Expand Up @@ -518,7 +518,7 @@ fn test_update_osm_housenumbers_http_error() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let mut relations = areas::Relations::new(&ctx).unwrap();
let path = ctx.get_abspath("workdir/street-housenumbers-gazdagret.csv");
let expected = String::from_utf8(std::fs::read(&path).unwrap()).unwrap();
Expand Down Expand Up @@ -572,7 +572,7 @@ fn test_update_osm_housenumbers_xml_as_csv() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let mut relations = areas::Relations::new(&ctx).unwrap();
let path = ctx.get_abspath("workdir/street-housenumbers-gazdagret.csv");
let expected = String::from_utf8(std::fs::read(&path).unwrap()).unwrap();
Expand All @@ -599,7 +599,7 @@ fn test_update_osm_streets() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let yamls_cache = serde_json::json!({
"relations.yaml": {
"gazdagret": {
Expand Down Expand Up @@ -667,7 +667,7 @@ fn test_update_osm_streets_http_error() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let mut relations = areas::Relations::new(&ctx).unwrap();
let path = ctx.get_abspath("workdir/streets-gazdagret.csv");
let expected = String::from_utf8(std::fs::read(&path).unwrap()).unwrap();
Expand Down Expand Up @@ -720,7 +720,7 @@ fn test_update_osm_streets_xml_as_csv() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let mut relations = areas::Relations::new(&ctx).unwrap();
let path = ctx.get_abspath("workdir/streets-gazdagret.csv");
let expected = String::from_utf8(std::fs::read(&path).unwrap()).unwrap();
Expand Down Expand Up @@ -749,7 +749,7 @@ fn test_update_stats() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);

let citycount_value = context::tests::TestFileSystem::make_file();
let zipcount_value = context::tests::TestFileSystem::make_file();
Expand Down Expand Up @@ -836,7 +836,7 @@ fn test_update_stats_http_error() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);

let citycount_value = context::tests::TestFileSystem::make_file();
let count_value = context::tests::TestFileSystem::make_file();
Expand Down Expand Up @@ -891,7 +891,7 @@ fn test_update_stats_no_overpass() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);

let citycount_value = context::tests::TestFileSystem::make_file();
let zipcount_value = context::tests::TestFileSystem::make_file();
Expand Down Expand Up @@ -964,7 +964,7 @@ fn test_our_main() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let yamls_cache = serde_json::json!({
"relations.yaml": {
"gazdagret": {
Expand Down Expand Up @@ -1116,7 +1116,7 @@ fn test_our_main_stats() {
];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let mut file_system = context::tests::TestFileSystem::new();
let stats_value = context::tests::TestFileSystem::make_file();
let overpass_template = context::tests::TestFileSystem::make_file();
Expand Down
8 changes: 4 additions & 4 deletions src/overpass_query/tests.rs
Expand Up @@ -24,7 +24,7 @@ fn test_overpass_query_need_sleep() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);

assert_eq!(overpass_query_need_sleep(&ctx), 0);
}
Expand All @@ -40,7 +40,7 @@ fn test_overpass_query_need_sleep_wait() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);

assert_eq!(overpass_query_need_sleep(&ctx), 12);
}
Expand All @@ -56,7 +56,7 @@ fn test_overpass_query_need_sleep_wait_negative() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);

assert_eq!(overpass_query_need_sleep(&ctx), 1);
}
Expand All @@ -72,7 +72,7 @@ fn test_overpass_query() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let query = ctx
.get_file_system()
.read_to_string("src/fixtures/network/overpass-happy.overpassql")
Expand Down
4 changes: 2 additions & 2 deletions src/sync_ref/tests.rs
Expand Up @@ -31,7 +31,7 @@ fn test_main() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let wsgi_ini_template = context::tests::TestFileSystem::make_file();
let files = context::tests::TestFileSystem::make_files(
&ctx,
Expand Down Expand Up @@ -108,7 +108,7 @@ reference_zipcounts = 'workdir/refs/irsz_count_20200717.tsv'
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);

let ret = main(&argv, &mut buf, &mut ctx);

Expand Down
4 changes: 2 additions & 2 deletions src/util/tests.rs
Expand Up @@ -354,7 +354,7 @@ fn test_handle_overpass_error_no_sleep() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let doc = handle_overpass_error(&ctx, error);
let expected = r#"<div id="overpass-error">Overpass error: HTTP Error 404: no such file</div>"#;
assert_eq!(doc.get_value(), expected);
Expand All @@ -372,7 +372,7 @@ fn test_handle_overpass_error_need_sleep() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
ctx.set_network(&network_arc);
ctx.set_network(network_arc);
let doc = handle_overpass_error(&ctx, error);
let expected = r#"<div id="overpass-error">Overpass error: HTTP Error 404: no such file<br />Note: wait for 12 seconds</div>"#;
assert_eq!(doc.get_value(), expected);
Expand Down
10 changes: 5 additions & 5 deletions src/wsgi/tests.rs
Expand Up @@ -243,7 +243,7 @@ fn test_handle_streets_update_result_well_formed() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
test_wsgi.ctx.set_network(&network_arc);
test_wsgi.ctx.set_network(network_arc);
let streets_value = context::tests::TestFileSystem::make_file();
let yamls_cache = serde_json::json!({
"relations.yaml": {
Expand Down Expand Up @@ -288,7 +288,7 @@ fn test_handle_streets_update_result_error_well_formed() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
test_wsgi.ctx.set_network(&network_arc);
test_wsgi.ctx.set_network(network_arc);
let yamls_cache = serde_json::json!({
"relations.yaml": {
"gazdagret": {
Expand Down Expand Up @@ -330,7 +330,7 @@ fn test_handle_streets_update_result_missing_streets_well_formed() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
test_wsgi.ctx.set_network(&network_arc);
test_wsgi.ctx.set_network(network_arc);
let streets_value = context::tests::TestFileSystem::make_file();
let yamls_cache = serde_json::json!({
"relations.yaml": {
Expand Down Expand Up @@ -1097,7 +1097,7 @@ fn test_housenumbers_update_result_well_formed() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
test_wsgi.ctx.set_network(&network_arc);
test_wsgi.ctx.set_network(network_arc);
let streets_value = context::tests::TestFileSystem::make_file();
let yamls_cache = serde_json::json!({
"relations.yaml": {
Expand Down Expand Up @@ -1145,7 +1145,7 @@ fn test_housenumbers_update_result_error_well_formed() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
test_wsgi.ctx.set_network(&network_arc);
test_wsgi.ctx.set_network(network_arc);
let yamls_cache = serde_json::json!({
"relations.yaml": {
"gazdagret": {
Expand Down
8 changes: 4 additions & 4 deletions src/wsgi_json/tests.rs
Expand Up @@ -34,7 +34,7 @@ fn test_json_streets_update_result() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
test_wsgi.get_ctx().set_network(&network_arc);
test_wsgi.get_ctx().set_network(network_arc);
let yamls_cache = serde_json::json!({
"relations.yaml": {
"myrelation": {
Expand Down Expand Up @@ -80,7 +80,7 @@ fn test_json_streets_update_result_error() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
test_wsgi.get_ctx().set_network(&network_arc);
test_wsgi.get_ctx().set_network(network_arc);
let yamls_cache = serde_json::json!({
"relations.yaml": {
"myrelation": {
Expand Down Expand Up @@ -121,7 +121,7 @@ fn test_json_housenumbers_update_result() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
test_wsgi.get_ctx().set_network(&network_arc);
test_wsgi.get_ctx().set_network(network_arc);
let yamls_cache = serde_json::json!({
"relations.yaml": {
"gazdagret": {
Expand Down Expand Up @@ -174,7 +174,7 @@ fn test_json_housenumbers_update_result_error() {
)];
let network = context::tests::TestNetwork::new(&routes);
let network_arc: Arc<dyn context::Network> = Arc::new(network);
test_wsgi.get_ctx().set_network(&network_arc);
test_wsgi.get_ctx().set_network(network_arc);
let yamls_cache = serde_json::json!({
"relations.yaml": {
"gazdagret": {
Expand Down

0 comments on commit 2ad52e7

Please sign in to comment.