# Path: molml/io.py
# def read_file_data(path):
#     """
#     Determine the file type and call the correct parser.
# 
#     The accepted file types are .out and .xyz files.
# 
#     Parameters
#     ----------
#     path : str
#         A path to a file to read
# 
#     Returns
#     -------
#     elements : list
#         All the elements in the molecule.
# 
#     numbers : list
#         All the atomic numbers in the molecule.
# 
#     coords : numpy.array, shape=(n_atoms, 3)
#         The atomic coordinates of the molecule.
#     """
#     end = path.split('.')[-1]
#     mapping = {
#         'out': read_out_data,
#         'xyz': read_xyz_data,
#         'mol2': read_mol2_data,
#         'cry': read_cry_data,
#     }
#     if end in mapping:
#         return mapping[end](path)
#     else:
#         raise ValueError("Unknown file type")


import os
from molml.io import read_file_data



DATA_PATH = os.path.join(os.path.dirname(__file__), "data")

METHANE_PATH = os.path.join(DATA_PATH, "methane.out")
METHANE_VALS = read_file_data(METHANE_PATH)
METHANE_ELEMENTS = METHANE_VALS.elements.tolist()
METHANE_NUMBERS = METHANE_VALS.numbers.tolist()
METHANE_COORDS = METHANE_VALS.coords
METHANE = (METHANE_ELEMENTS, METHANE_COORDS)
METHANE_CONNECTIONS = {
    0: {1: "1", 2: "1", 3: "1", 4: "1"},
    1: {0: "1"},
    2: {0: "1"},
    3: {0: "1"},
    4: {0: "1"},
}

BIG_PATH = os.path.join(DATA_PATH, "big.out")
BIG_VALS = read_file_data(BIG_PATH)
BIG_ELEMENTS = BIG_VALS.elements.tolist()
BIG_NUMBERS = BIG_VALS.numbers.tolist()
BIG_COORDS = BIG_VALS.coords
BIG = (BIG_ELEMENTS, BIG_COORDS)

MID_PATH = os.path.join(DATA_PATH, "mid.out")

# Path: molml/io.py
# def read_file_data(path):
#     """
#     Determine the file type and call the correct parser.
# 
#     The accepted file types are .out and .xyz files.
# 
#     Parameters
#     ----------
#     path : str
#         A path to a file to read
# 
#     Returns
#     -------
#     elements : list
#         All the elements in the molecule.
# 
#     numbers : list
#         All the atomic numbers in the molecule.
# 
#     coords : numpy.array, shape=(n_atoms, 3)
#         The atomic coordinates of the molecule.
#     """
#     end = path.split('.')[-1]
#     mapping = {
#         'out': read_out_data,
#         'xyz': read_xyz_data,
#         'mol2': read_mol2_data,
#         'cry': read_cry_data,
#     }
#     if end in mapping:
#         return mapping[end](path)
#     else:
#         raise ValueError("Unknown file type")


# Path: tests/constants.py
import os
from molml.io import read_file_data




DATA_PATH = os.path.join(os.path.dirname(__file__), "data")

METHANE_PATH = os.path.join(DATA_PATH, "methane.out")
METHANE_VALS = read_file_data(METHANE_PATH)
METHANE_ELEMENTS = METHANE_VALS.elements.tolist()
METHANE_NUMBERS = METHANE_VALS.numbers.tolist()
METHANE_COORDS = METHANE_VALS.coords
METHANE = (METHANE_ELEMENTS, METHANE_COORDS)
METHANE_CONNECTIONS = {
    0: {1: "1", 2: "1", 3: "1", 4: "1"},
    1: {0: "1"},
    2: {0: "1"},
    3: {0: "1"},
    4: {0: "1"},
}

BIG_PATH = os.path.join(DATA_PATH, "big.out")
BIG_VALS = read_file_data(BIG_PATH)
BIG_ELEMENTS = BIG_VALS.elements.tolist()
BIG_NUMBERS = BIG_VALS.numbers.tolist()
BIG_COORDS = BIG_VALS.coords
BIG = (BIG_ELEMENTS, BIG_COORDS)

MID_PATH = os.path.join(DATA_PATH, "mid.out")

MID_VALS = read_file_data(MID_PATH)