def METHOD_NAME(test_dir, object_name, task_name):
    from monty.json import MontyDecoder, jsanitize
    from emmet.core.vasp.calculation import Calculation
    test_object = get_test_object(object_name)
    dir_name = test_dir / "vasp" / test_object.folder
    files = test_object.task_files[task_name]
    test_doc, objects = Calculation.from_vasp_files(dir_name, task_name, **files)
    valid_doc = test_object.task_doc["calcs_reversed"][0]
    assert_schemas_equal(test_doc, valid_doc)
    assert set(objects.keys()) == set(test_object.objects[task_name])
    # test document can be jsanitized
    d = jsanitize(test_doc, strict=True, enum_values=True, allow_bson=True)
    # and decoded
    MontyDecoder().process_decoded(d)