import pytest
import os
import sys
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
import materials_for_mc as m4mc
def test_element_class():
h = m4mc.Element("H")
fe = m4mc.Element("Fe")
u = m4mc.Element("U")
assert h.name == "H"
assert fe.name == "Fe"
assert u.name == "U"
h_nuclides = h.get_nuclides()
fe_nuclides = fe.get_nuclides()
u_nuclides = u.get_nuclides()
assert len(h_nuclides) >= 2
assert "H1" in h_nuclides
assert "H2" in h_nuclides
assert len(fe_nuclides) >= 4 assert "Fe54" in fe_nuclides
assert "Fe56" in fe_nuclides
assert "Fe57" in fe_nuclides
assert "Fe58" in fe_nuclides
assert len(u_nuclides) >= 2
assert "U235" in u_nuclides
assert "U238" in u_nuclides
def test_get_nuclides():
al_isotopes = m4mc.Element('Al').get_nuclides()
assert isinstance(al_isotopes, list)
assert all(iso.startswith('Al') for iso in al_isotopes)
assert len(al_isotopes) > 0
def test_nonexistent_element():
fake_element = m4mc.Element("Zz")
assert fake_element.get_nuclides() == []
if __name__ == "__main__":
pytest.main(["-v", __file__])