From 206ca859de895a4fe372befd00525d40c49178d2 Mon Sep 17 00:00:00 2001 From: "G. D. McBain" Date: Mon, 13 May 2024 11:42:01 +1000 Subject: [PATCH 1/2] process legacy keyword k->gains #999 --- control/rlocus.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/control/rlocus.py b/control/rlocus.py index 281fed082..dab21f4ac 100644 --- a/control/rlocus.py +++ b/control/rlocus.py @@ -160,7 +160,8 @@ def root_locus_plot( from .pzmap import pole_zero_plot # Legacy parameters - gains = config._process_legacy_keyword(kwargs, 'kvect', 'gains', gains) + for oldkey in ['kvect', 'k']: + gains = config._process_legacy_keyword(kwargs, oldkey, 'gains', gains) # Set default parameters grid = config._get_param('rlocus', 'grid', grid, _rlocus_defaults) From b58f4353047523802f42b1f783fb77eddfd3d455 Mon Sep 17 00:00:00 2001 From: "G. D. McBain" Date: Wed, 22 May 2024 16:47:24 +1000 Subject: [PATCH 2/2] test deprecated 'k' keyword for rlocus --- control/tests/rlocus_test.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/control/tests/rlocus_test.py b/control/tests/rlocus_test.py index 0b3e868e9..15eb67d97 100644 --- a/control/tests/rlocus_test.py +++ b/control/tests/rlocus_test.py @@ -181,10 +181,11 @@ def test_root_locus_plots(sys, grid, xlim, ylim, interactive): # Test deprecated keywords -def test_root_locus_legacy(): +@pytest.mark.parametrize("keyword", ["kvect", "k"]) +def test_root_locus_legacy(keyword): sys = ct.rss(2, 1, 1) - with pytest.warns(DeprecationWarning, match="'kvect' is deprecated"): - ct.root_locus_plot(sys, kvect=[0, 1, 2]) + with pytest.warns(DeprecationWarning, match=f"'{keyword}' is deprecated"): + ct.root_locus_plot(sys, **{keyword: [0, 1, 2]}) # Generate plots used in documentation