def METHOD_NAME(seeded):
    """Tests that the seed data functions can create and delete seed data"""
    expected_programs = len(seeded.raw_data["programs"])
    expected_courses = len(seeded.raw_data["courses"])
    expected_course_runs = sum(
        len(course_data.get("course_runs", []))
        for course_data in seeded.raw_data["courses"]
    )
    # Hardcoding this value since it would be annoying to check for it programatically
    expected_products = 12
    expected_resource_pages = len(seeded.raw_data["resource_pages"])
    assert Program.objects.count() == expected_programs
    assert ProgramPage.objects.count() == expected_programs
    assert Course.objects.count() == expected_courses
    assert CoursePage.objects.count() == expected_courses
    assert CourseRun.objects.count() == expected_course_runs
    assert ResourcePage.objects.count() == expected_resource_pages
    assert Product.objects.count() == expected_products
    assert ProductVersion.objects.count() == expected_products
    with unprotect_version_tables():
        seeded.loader.delete_seed_data(seeded.raw_data)
    assert Program.objects.count() == 0
    assert ProgramPage.objects.count() == 0
    assert Course.objects.count() == 0
    assert CoursePage.objects.count() == 0
    assert CourseRun.objects.count() == 0
    assert ResourcePage.objects.count() == 0
    assert Product.objects.count() == 0
    assert ProductVersion.objects.count() == 0