summaryrefslogtreecommitdiff
path: root/test.py
blob: 2bd7af35abd81ac539169c3b64c078f267a54399 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# test.py
from date_calculator import DateCalculator
from calendar_manager import CalendarManager
from prediction_controller import PredictionController
		

        
def test_calculate_prediction():
    # Input event dates as strings
    event1_str = ["2023-01-01", "2023-01-10"]
    event2_str = ["2023-01-05", "2023-01-15"]

    # Input full project dates as strings
    project1_str = ["2025-01-02", "2025-02-11"]

    # Input half project dates as strings
    project2_str = ["2025-02-01", "2025-06-30"]
    project3_str = ["2024-05-05", "2024-06-07"]

    date_calculator = DateCalculator()
    calendar_manager = CalendarManager()
    prediction_controller = PredictionController(calendar_manager, date_calculator, ["EZ 100%", "EZ 50%", "EZ pauschal", "Sonstige"])
    
    calendar_manager.add_entry(event1_str[0], event1_str[1], "Sonstige")
    calendar_manager.add_entry(event2_str[0], event2_str[1], "Sonstige")
    calendar_manager.add_entry(project1_str[0], project1_str[1], "EZ 100%")
    calendar_manager.add_entry(project2_str[0], project2_str[1], "EZ 50%")
    calendar_manager.add_entry(project3_str[0], project3_str[1], "EZ 50%")

    # Set launch date and duration
    prediction_controller.make_prediction("2023-01-01", 2)

    prediction = prediction_controller.get_prediction()

    # Output the result
    print(f"Predicted completion date: {prediction}")
    print(calendar_manager.list_entries())


# Run the test
test_calculate_prediction()