From e2e6478b53d9f406425ccd3293b8187c4df53125 Mon Sep 17 00:00:00 2001 From: ASPP Student Date: Tue, 29 Aug 2023 12:13:16 +0300 Subject: [PATCH 1/2] adds generic cases --- logistic.py | 3 ++- test_logistic.py | 11 +++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/logistic.py b/logistic.py index e49d1c2..f7b16a1 100644 --- a/logistic.py +++ b/logistic.py @@ -1 +1,2 @@ -# Your code goes here +def f(x,r): + return r*x* (1-x) diff --git a/test_logistic.py b/test_logistic.py index 9391bee..1b5a83c 100644 --- a/test_logistic.py +++ b/test_logistic.py @@ -14,3 +14,14 @@ def test_f_corner_cases(): for x, r, expected in cases: result = f(x, r) assert_allclose(result, expected) + + +def test_generic(): + cases = [ + (0.1, 2.2, 0.198), + (0.2, 3.4, 0.544), + (0.5, 2, 0.5), + ] + for x, r, expected in cases: + result = f(x, r) + assert_allclose(result, expected) From 017ec3d42bee7c0216b311baf27d2626a2350aa5 Mon Sep 17 00:00:00 2001 From: ASPP Student Date: Tue, 29 Aug 2023 12:28:37 +0300 Subject: [PATCH 2/2] adds paramterize for generic cases --- test_logistic.py | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/test_logistic.py b/test_logistic.py index 1b5a83c..ff2f6fc 100644 --- a/test_logistic.py +++ b/test_logistic.py @@ -1,6 +1,7 @@ from numpy.testing import assert_allclose from logistic import f +import pytest # Add here your test for the logistic map @@ -16,12 +17,21 @@ def test_f_corner_cases(): assert_allclose(result, expected) -def test_generic(): - cases = [ - (0.1, 2.2, 0.198), - (0.2, 3.4, 0.544), - (0.5, 2, 0.5), - ] - for x, r, expected in cases: +#def test_generic(): +# cases = [ +# (0.1, 2.2, 0.198), +# (0.2, 3.4, 0.544), +# (0.5, 2, 0.5), +# ] +# for x, r, expected in cases: +# result = f(x, r) +# assert_allclose(result, expected) +@pytest.mark.parametrize('x,r, expected', [ + (0.1, 2.2, 0.198), + (0.2, 3.4, 0.544), + (0.5, 2, 0.5), + ]) + +def test_generic_vals(x,r, expected): result = f(x, r) assert_allclose(result, expected)