From 0d93effd00217eff67e9e9b1d580c06922086607 Mon Sep 17 00:00:00 2001 From: prashsti29 Date: Sat, 4 Apr 2026 05:39:11 +0530 Subject: [PATCH 1/2] fix negative and asymmetric edge costs in stoer wagner tests --- pgtap/mincut/stoerWagner/compare_components.pg | 2 +- pgtap/mincut/stoerWagner/edge_cases.pg | 2 +- pgtap/mincut/stoerWagner/inner_query.pg | 2 +- pgtap/mincut/stoerWagner/types_check.pg | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pgtap/mincut/stoerWagner/compare_components.pg b/pgtap/mincut/stoerWagner/compare_components.pg index 06c66e7999..0528ff6dd3 100644 --- a/pgtap/mincut/stoerWagner/compare_components.pg +++ b/pgtap/mincut/stoerWagner/compare_components.pg @@ -5,7 +5,7 @@ BEGIN; -UPDATE edges SET cost = sign(cost), reverse_cost = sign(reverse_cost); +UPDATE edges SET cost = abs(sign(cost)), reverse_cost = abs(sign(reverse_cost)); SELECT plan(6); PREPARE stoerWagner1 AS diff --git a/pgtap/mincut/stoerWagner/edge_cases.pg b/pgtap/mincut/stoerWagner/edge_cases.pg index df9cb34f21..d56e19b0f4 100644 --- a/pgtap/mincut/stoerWagner/edge_cases.pg +++ b/pgtap/mincut/stoerWagner/edge_cases.pg @@ -5,7 +5,7 @@ BEGIN; -UPDATE edges SET cost = sign(cost), reverse_cost = sign(reverse_cost); +UPDATE edges SET cost = abs(sign(cost)), reverse_cost = abs(sign(reverse_cost)); SELECT plan(2); SELECT lives_ok( diff --git a/pgtap/mincut/stoerWagner/inner_query.pg b/pgtap/mincut/stoerWagner/inner_query.pg index 7949160b03..c8e354d852 100644 --- a/pgtap/mincut/stoerWagner/inner_query.pg +++ b/pgtap/mincut/stoerWagner/inner_query.pg @@ -5,7 +5,7 @@ BEGIN; -UPDATE edges SET cost = sign(cost), reverse_cost = sign(reverse_cost); +UPDATE edges SET cost = abs(sign(cost)), reverse_cost = abs(sign(reverse_cost)); SELECT plan(54); SELECT style_dijkstra('pgr_stoerwagner(', ')'); diff --git a/pgtap/mincut/stoerWagner/types_check.pg b/pgtap/mincut/stoerWagner/types_check.pg index f7266e4fdd..f54e6f9fab 100644 --- a/pgtap/mincut/stoerWagner/types_check.pg +++ b/pgtap/mincut/stoerWagner/types_check.pg @@ -5,7 +5,7 @@ BEGIN; -UPDATE edges SET cost = sign(cost), reverse_cost = sign(reverse_cost); +UPDATE edges SET cost = abs(sign(cost)), reverse_cost = abs(sign(reverse_cost)); SELECT plan(5); SELECT has_function('pgr_stoerwagner'); From f685c1cb016890a7c15867c58ddc373d5bb1fa5b Mon Sep 17 00:00:00 2001 From: prashsti29 Date: Mon, 6 Apr 2026 03:26:02 +0530 Subject: [PATCH 2/2] fix missing WHERE clause in edge_cases.pg --- pgtap/mincut/stoerWagner/edge_cases.pg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pgtap/mincut/stoerWagner/edge_cases.pg b/pgtap/mincut/stoerWagner/edge_cases.pg index d56e19b0f4..c23f1c17cf 100644 --- a/pgtap/mincut/stoerWagner/edge_cases.pg +++ b/pgtap/mincut/stoerWagner/edge_cases.pg @@ -16,7 +16,7 @@ SELECT lives_ok( SELECT throws_ok( 'SELECT * FROM pgr_stoerWagner( - ''SELECT id, source, target, cost, reverse_cost FROM edges id < 17'', + ''SELECT id, source, target, cost, reverse_cost FROM edges WHERE id < 17'', 3 )','42883','function pgr_stoerwagner(unknown, integer) does not exist', '6: Documentation says it does not work with 1 flags');