def METHOD_NAME():
    initial_sop_instance_uids = _generate_uids(4)
    final_sop_instance_uids = _generate_uids(7)
    initial_series_uid = _uid.generate_uid()
    final_series_uid = _uid.generate_uid()
    number_of_slices_to_add = 3
    initial_slice_locations = [7, 3, 1, 5]
    expected_slice_locations = [-5, -3, -1, 1, 3, 5, 7]
    initial_datasets = _make_datasets(
        initial_series_uid, initial_sop_instance_uids, initial_slice_locations
    )
    expected_datasets = _make_datasets(
        final_series_uid, final_sop_instance_uids, expected_slice_locations
    )
    resulting_datasets = deepcopy(initial_datasets)
    _extend_datasets(
        resulting_datasets,
        0,
        number_of_slices_to_add,
        series_instance_uid=final_series_uid,
        sop_instance_uids=final_sop_instance_uids,
    )
    assert resulting_datasets != initial_datasets
    sorted_expected_slice_locations = sorted(expected_slice_locations)
    for eval_ds, ref_ds, slice_loc in zip(
        resulting_datasets, expected_datasets, sorted_expected_slice_locations
    ):
        assert eval_ds.ImagePositionPatient == ref_ds.ImagePositionPatient
        assert eval_ds.ImagePositionPatient[-1] == slice_loc
    assert resulting_datasets == expected_datasets