def handle_mock_and_library_type(mock_type="features", library="pandas"):
    """Handles the mock_type and library passed to standardize them.

    :param mock_type: The name of the type of mock data. Defaults to returning Features data.
    :type mock_type: str, optional
    :param library: The name of the library to which the returned data should belong. Defaults to pandas.
    :type library: str, optional
    :return: formatted mock type and library
    :rtype tuple: (str, str)
    """
    if mock_type.lower() in ["df", "dataframe", "features", "x"]:
        mock_type_ = "features"
    elif mock_type.lower() in ["dates", "date"]:
        mock_type_ = "dates"
    elif mock_type.lower() in ["waves", "wave", "sine", "sin", "cosine", "cos"]:
        mock_type_ = "wave"
    else:
        mock_type_ = "features"

    if library.lower() in ["pd", "pandas", "df", "dataframe", "series"]:
        library_ = "pandas"
    elif library.lower() in ["np", "numpy", "array", "ndarray"]:
        library_ = "numpy"
    else:
        library_ = "pandas"

    return mock_type_, library_