<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def parse_sync_points(names, tests):
 """ Slice list of test names on sync points. If test is test file find full path to file. Returns: A list of test file sets and sync point strings. Examples: ['test_hard_reboot'] [set('test1', 'test2')] [set('test1', 'test2'), 'test_soft_reboot'] [set('test1', 'test2'), 'test_soft_reboot', set('test3')] """

    test_files = []
    section = set()

    for name in names:
        if name in SYNC_POINTS:
            if section:
                test_files.append(section)

            test_files.append(name)
            section = set()
        else:
            section.add(find_test_file(name, tests))

    if section:
        test_files.append(section)
    return test_files