def test_format_var_for_export_strip_large_data():
    orig_var = {
        "a": {
            "y": ("a" * 1024 * 1024) + "a"
        },
    }

    var = copy.deepcopy(orig_var)
    formated = crash_reporting.format_var_for_export(var)

    # Stripped?
    assert formated["a"]["y"].endswith("(1 bytes stripped)")

    # Not modified original data
    assert orig_var == var
def test_format_var_for_export_strip_nested_dict_with_list():
    orig_var = {
        "a": {
            "b": {
                "c": [
                    {}
                ],
            },
        },
    }

    var = copy.deepcopy(orig_var)
    formated = crash_reporting.format_var_for_export(var)

    # Stripped?
    assert formated["a"]["b"]["c"][0] == "Max recursion depth reached"

    # Not modified original data
    assert orig_var == var