1from openmc.data import endf
2from pytest import approx
3
4
5def test_float_endf():
6    assert endf.float_endf('+3.2146') == approx(3.2146)
7    assert endf.float_endf('.12345') == approx(0.12345)
8    assert endf.float_endf('6.022+23') == approx(6.022e23)
9    assert endf.float_endf('6.022-23') == approx(6.022e-23)
10    assert endf.float_endf(' +1.01+ 2') == approx(101.0)
11    assert endf.float_endf(' -1.01- 2') == approx(-0.0101)
12    assert endf.float_endf('+ 2 . 3+ 1') == approx(23.0)
13    assert endf.float_endf('-7 .8 -1') == approx(-0.78)
14    assert endf.float_endf('3.14e0') == approx(3.14)
15    assert endf.float_endf('3.14E0') == approx(3.14)
16    assert endf.float_endf('3.14e-1') == approx(0.314)
17    assert endf.float_endf('3.14d0') == approx(3.14)
18    assert endf.float_endf('3.14D0') == approx(3.14)
19    assert endf.float_endf('3.14d-1') == approx(0.314)
20    assert endf.float_endf('1+2') == approx(100.0)
21    assert endf.float_endf('-1+2') == approx(-100.0)
22    assert endf.float_endf('1.+2') == approx(100.0)
23    assert endf.float_endf('-1.+2') == approx(-100.0)
24    assert endf.float_endf('        ') == 0.0
25    assert endf.float_endf('9.876540000000000') == approx(9.87654)
26
27
28def test_int_endf():
29    assert endf.int_endf('    ') == 0
30    assert endf.int_endf('+4032') == 4032
31