diff --git a/src/export/html_generator.py b/src/export/html_generator.py index ec9333e..b7f08b0 100644 --- a/src/export/html_generator.py +++ b/src/export/html_generator.py @@ -4,9 +4,16 @@ def generate_html(input_values: list, function: callable) -> str: html_text += "\n\t\t

{}

".format(function_name) html_text += "\n\t\t" html_text += "\n\t\n" return html_text diff --git a/src/function_runner.py b/src/function_runner.py index 4eca582..07d0272 100644 --- a/src/function_runner.py +++ b/src/function_runner.py @@ -1,4 +1,5 @@ from src.calculations.operations import fibonacci +from src.calculations.statistics import event_probability from src.export.html_generator import generate_html @@ -12,3 +13,16 @@ def get_fibonacci_series_html(maximum: int) -> str: input_list = range(0, maximum) html = generate_html(input_list, fibonacci) return html + + +def get_event_probability_series_html(maximum: int) -> str: + """ + Get the html string showing the event probability calculations for the + numbers from zero to the selected maximum value as space size + :param maximum: limit for the series + :return: html string + """ + input_list = [(i, maximum) for i in range(0, maximum)] + html = generate_html(input_list, event_probability) + return html + diff --git a/test/integration/test_function_runner.py b/test/integration/test_function_runner.py index aec99b1..fd6aea3 100644 --- a/test/integration/test_function_runner.py +++ b/test/integration/test_function_runner.py @@ -6,3 +6,13 @@ def test_get_fibonacci_series_html(): assert result == "\n\n\t\n\t\t" \ "

fibonacci

\n\t\t" \ "\n\t\n" + + +def test_get_get_event_probability_series_html(): + result = src.function_runner.get_event_probability_series_html(3) + assert result == "\n\n\t\n\t\t" \ + "

event_probability

\n\t\t\n\t\n" diff --git a/test/unit/export/test_html_generator.py b/test/unit/export/test_html_generator.py index eeb0a75..d4e6f9f 100644 --- a/test/unit/export/test_html_generator.py +++ b/test/unit/export/test_html_generator.py @@ -1,7 +1,7 @@ import src.export.html_generator -def test_generate_html(): +def test_generate_html_single_parameter(): def calculate_square(x): return x * x @@ -15,3 +15,19 @@ def calculate_square(x): "\n\t\t\t
  • calculate_square(3) = 9
  • " \ "\n\t\t" \ "\n\t\n" + + +def test_generate_html_multi_parameter(): + def calculate_sum(x, y): + return x + y + + input_list = [(1, 2), (3, 4)] + result = src.export.html_generator.generate_html(input_list, + calculate_sum) + assert result == "\n\n\t" \ + "\n\t\t

    calculate_sum

    "\ + "\n\t\t" \ + "\n\t\n"