# Path: eldonationtracker/utils/extralife_io.py
# def validate_url(url: str):
# def get_json(url: str, order_by_donations: bool = False, order_by_amount: bool = False) -> dict:
# def get_donations(donations_or_donors: list, api_url: str, is_donation=True, largest_first=False) -> list:
# def get_badges(api_url: str) -> list[Badge]:
#     def __init__(self):
#     def load_json(self) -> dict:  # pragma: no cover
#     def get_github_config(self):  # pragma: no cover
#     def get_tracker_assets(self, asset: str):  # pragma: no cover
#     def update_fields(self):
#     def write_config(self, config: dict, default: bool):  # pragma: no cover
#     def get_version(self):
#     def reload_json(self):
#     def get_cli_values(self) -> Tuple[Any, Any, Any, Any, Any]:
#     def get_text_folder_only(self) -> str:
#     def get_gui_values(self) -> Tuple[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]:
#     def get_font_info(self):
#     def get_tracker_background_color(self):
#     def get_if_in_team(self) -> bool:
#     def get_version_mismatch(self) -> bool:
#     def get_tracker_image(self) -> str:
#     def get_tracker_sound(self) -> str:
#     def __str__(self):
# def single_format(donor, message: bool, currency_symbol: str) -> str:
# def multiple_format(donors, message: bool, horizontal: bool,
#                     currency_symbol: str, how_many: int) -> str:
# def format_information_for_output(donation_list: list, currency_symbol: str, donors_to_display: str, team: bool,
#                                   donation=True) -> dict:
# def output_badge_data(badge_list: list[Badge], text_folder: str, team=False) -> None:  # pragma: no cover
# def read_in_total_raised(text_folder: str) -> str:
# def write_text_files(dictionary: dict, text_folder: str):
# def write_html_files(data: str, filename: str, text_folder: str):
# class ParticipantConf:
# 
# Path: eldonationtracker/api/donation.py
# class Donation:
#     def __init__(self, json):
#     def name(self) -> str:
#     def message(self) -> str:
#     def amount(self) -> int:
#     def donor_id(self) -> str:
#     def avatar_url(self) -> str:
#     def donation_date(self) -> str:
#     def donation_id(self) -> str:
#     def json_to_attributes(json):
#     def __eq__(self, other):
#     def __str__(self):
# 
# Path: eldonationtracker/api/donor.py
# class Donor:
#     def __init__(self, json):
#     def name(self) -> str:
#     def donor_id(self) -> str:
#     def image_url(self) -> str:
#     def amount(self) -> float:
#     def number_of_donations(self) -> str:
#     def json_to_attributes(json_values):
#     def __lt__(self, other):
#     def __eq__(self, other):
#     def __str__(self):


import json
from unittest import mock
from eldonationtracker.utils import extralife_io
from eldonationtracker.api import donation
from eldonationtracker.api import donor
donation1_json = {"displayName": "donor1", "participantID": '4939d', "amount": 10, "message": "message1",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation2_json = {"displayName": "donor2", "participantID": '4939d', "amount": 20, "message": "message2",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation3_json = {"displayName": "donor3", "participantID": '4939d', "amount": 30, "message": "message3",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation4_json = {"displayName": "donor4", "participantID": '4939d', "amount": 40, "message": "message4",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation5_json = {"displayName": "donor5", "participantID": '4939d', "amount": 50, "message": "message5",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation6_json = {"displayName": "donor6", "participantID": '4939d', "amount": 60, "message": "message6",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}

donor1 = donation.Donation(donation1_json)
donor2 = donation.Donation(donation2_json)
donor3 = donation.Donation(donation3_json)
donor4 = donation.Donation(donation4_json)
donor5 = donation.Donation(donation5_json)

# Path: eldonationtracker/utils/extralife_io.py
# def validate_url(url: str):
# def get_json(url: str, order_by_donations: bool = False, order_by_amount: bool = False) -> dict:
# def get_donations(donations_or_donors: list, api_url: str, is_donation=True, largest_first=False) -> list:
# def get_badges(api_url: str) -> list[Badge]:
#     def __init__(self):
#     def load_json(self) -> dict:  # pragma: no cover
#     def get_github_config(self):  # pragma: no cover
#     def get_tracker_assets(self, asset: str):  # pragma: no cover
#     def update_fields(self):
#     def write_config(self, config: dict, default: bool):  # pragma: no cover
#     def get_version(self):
#     def reload_json(self):
#     def get_cli_values(self) -> Tuple[Any, Any, Any, Any, Any]:
#     def get_text_folder_only(self) -> str:
#     def get_gui_values(self) -> Tuple[Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any, Any]:
#     def get_font_info(self):
#     def get_tracker_background_color(self):
#     def get_if_in_team(self) -> bool:
#     def get_version_mismatch(self) -> bool:
#     def get_tracker_image(self) -> str:
#     def get_tracker_sound(self) -> str:
#     def __str__(self):
# def single_format(donor, message: bool, currency_symbol: str) -> str:
# def multiple_format(donors, message: bool, horizontal: bool,
#                     currency_symbol: str, how_many: int) -> str:
# def format_information_for_output(donation_list: list, currency_symbol: str, donors_to_display: str, team: bool,
#                                   donation=True) -> dict:
# def output_badge_data(badge_list: list[Badge], text_folder: str, team=False) -> None:  # pragma: no cover
# def read_in_total_raised(text_folder: str) -> str:
# def write_text_files(dictionary: dict, text_folder: str):
# def write_html_files(data: str, filename: str, text_folder: str):
# class ParticipantConf:
# 
# Path: eldonationtracker/api/donation.py
# class Donation:
#     def __init__(self, json):
#     def name(self) -> str:
#     def message(self) -> str:
#     def amount(self) -> int:
#     def donor_id(self) -> str:
#     def avatar_url(self) -> str:
#     def donation_date(self) -> str:
#     def donation_id(self) -> str:
#     def json_to_attributes(json):
#     def __eq__(self, other):
#     def __str__(self):
# 
# Path: eldonationtracker/api/donor.py
# class Donor:
#     def __init__(self, json):
#     def name(self) -> str:
#     def donor_id(self) -> str:
#     def image_url(self) -> str:
#     def amount(self) -> float:
#     def number_of_donations(self) -> str:
#     def json_to_attributes(json_values):
#     def __lt__(self, other):
#     def __eq__(self, other):
#     def __str__(self):


# Path: eldonationtracker/utils/tests/test_extralife_io.py
import json
from unittest import mock
from eldonationtracker.utils import extralife_io
from eldonationtracker.api import donation
from eldonationtracker.api import donor

donation1_json = {"displayName": "donor1", "participantID": '4939d', "amount": 10, "message": "message1",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation2_json = {"displayName": "donor2", "participantID": '4939d', "amount": 20, "message": "message2",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation3_json = {"displayName": "donor3", "participantID": '4939d', "amount": 30, "message": "message3",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation4_json = {"displayName": "donor4", "participantID": '4939d', "amount": 40, "message": "message4",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation5_json = {"displayName": "donor5", "participantID": '4939d', "amount": 50, "message": "message5",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}
donation6_json = {"displayName": "donor6", "participantID": '4939d', "amount": 60, "message": "message6",
                               "donorID": "FAKE3C59D235B4DA", "avatarImageURL": "//image.png",
                               "createdDateUTC": "2020-02-11T17:22:23.963+0000", "eventID": 547, "teamID": 50394,
                               "donationID": "861A3C59D235B4DA"}

donor1 = donation.Donation(donation1_json)
donor2 = donation.Donation(donation2_json)
donor3 = donation.Donation(donation3_json)
donor4 = donation.Donation(donation4_json)
donor5 = donation.Donation(donation5_json)

donor6 = donation.Donation(donation6_json)