1from ase import Atoms
2from ase.io import Trajectory
3
4
5def test_atoms_info_in_traj():
6    info = dict(creation_date='2011-06-27',
7                chemical_name='Hydrogen',
8                # custom classes also works provided that it is
9                # imported and pickleable...
10                foo={'seven': 7})
11
12    molecule = Atoms('H2', positions=[(0., 0., 0.), (0., 0., 1.1)], info=info)
13    assert molecule.info == info
14
15    atoms = molecule.copy()
16    assert atoms.info == info
17
18    with Trajectory('info.traj', 'w', atoms=molecule) as traj:
19        traj.write()
20
21    with Trajectory('info.traj') as traj:
22        atoms = traj[-1]
23
24    print(atoms.info)
25    assert atoms.info == info
26