1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
import unittest
import xraylib
class TestAugerRate(unittest.TestCase):
def test_Pb_K_L3M5(self):
rate = xraylib.AugerRate(82, xraylib.K_L3M5_AUGER)
self.assertAlmostEqual(rate, 0.004573193387)
def test_Pb_L3_M4N7(self):
rate = xraylib.AugerRate(82, xraylib.L3_M4N7_AUGER)
self.assertAlmostEqual(rate, 0.0024327572005)
def test_bad_Z(self):
with self.assertRaises(ValueError):
rate = xraylib.AugerRate(-35, xraylib.L3_M4N7_AUGER)
def test_bad_trans(self):
with self.assertRaises(ValueError):
rate = xraylib.AugerRate(82, xraylib.M4_M5Q3_AUGER + 1)
def test_invalid_trans(self):
with self.assertRaises(ValueError):
rate = xraylib.AugerRate(62, xraylib.L3_M4N7_AUGER)
class TestAugerYield(unittest.TestCase):
def test_Pb_K(self):
ayield = xraylib.AugerYield(82, xraylib.K_SHELL)
self.assertAlmostEqual(ayield, 1.0 - xraylib.FluorYield(82, xraylib.K_SHELL))
def test_Pb_M3(self):
ayield = xraylib.AugerYield(82, xraylib.M3_SHELL)
self.assertAlmostEqual(ayield, 0.1719525)
def test_bad_Z(self):
with self.assertRaises(ValueError):
ayield = xraylib.AugerYield(-35, xraylib.K_SHELL)
def test_bad_shell(self):
with self.assertRaises(ValueError):
ayield = xraylib.AugerYield(82, xraylib.N2_SHELL)
if __name__ == '__main__':
unittest.main(verbosity=2)
|