from pathlib import Path
from typing import List


def get_candidate_paths(parent: Path, name: str) -> List[Path]:
	""" Combines all of the candidate paths for each file for simplicity. The previous method of
		defining candidates individually was getting complicated.
	"""

	candidates = [
		# The usual locations for the index file.
		parent / "breseq" / "output" / name,
		parent / "breseq" / name,
		parent / "breseq_output" / name,
		parent / "breseq_output" / "output" / name,
		parent / "output" / name,
		# The usual locations for the gd file.
		parent / "output" / "evidence" / name,
		parent / "evidence" / name,
		# The VCF and summary.json files
		parent / "breseq_output" / "data" / name,
		parent / "breseq" / "data" / name,
		parent / "data" / name,
		# Other
		parent / name,
		Path(name)
	]
	return candidates