def test_simple():
    lines, all_states = GooFitChain.read_AmpGen(text='''

    # This is a test (should not affect output)

    EventType D0 K- pi+ pi+ pi-

    D0[D]{K*(892)bar0{K-,pi+},rho(770)0{pi+,pi-}} 2 1         0          2 0         0
    ''')

    assert Particle.from_pdg(421) == all_states[0]  # D0
    assert Particle.from_pdg(-321) == all_states[1]  # K-
    assert Particle.from_pdg(211) == all_states[2]  # pi+
    assert Particle.from_pdg(211) == all_states[3]  # pi+
    assert Particle.from_pdg(-211) == all_states[4]  # pi-
def test_prop():
    pi = Particle.from_pdg(211)
    assert pi.name == 'pi'
    assert pi.val == 211
    assert pi.charge == Par.p
def test_rep():
    pi = Particle.from_pdg(211)
    assert 'val=211' in repr(pi)
    assert "name='pi'" in repr(pi)
    assert 'mass=0.13957' in repr(pi)
    assert 'charge=<Par.p: 1>' in repr(pi)
def test_str():
    pi = Particle.from_pdg(211)
    assert str(pi) == 'pi+'
def test_pdg():
    assert Particle.from_pdg(211).val == 211