コード例 #1
0
ファイル: test_particle.py プロジェクト: marinang/particle
def test_lambda_style_search():
    particles = Particle.from_search_list(lambda p: p.pdgname == 'p')
    assert len(particles) == 2
    assert 2212 in particles
    assert -2212 in particles

    assert Particle.from_search(lambda p: p.pdgname == 'p' and p > 0) == 2212
    assert Particle.from_search(lambda p: p.pdgname == 'p' and p < 0) == -2212
コード例 #2
0
ファイル: test_particle.py プロジェクト: marinang/particle
def test_from_search():
    # 1 match found
    prepr = repr(Particle.from_search(name='gamma'))
    assert prepr == "<Particle: pdgid=22, name='gamma', mass=0.0 MeV>"

    # No match found
    with pytest.raises(ParticleNotFound):
        Particle.from_search(name='NonExistent')

    # Multiple matches found
    with pytest.raises(RuntimeError):
        Particle.from_search(name=lambda x: 'Upsilon' in x)
コード例 #3
0
ファイル: test_particle.py プロジェクト: marinang/particle
def test_keyword_style_search():
    particles = Particle.from_search_list(pdgname='p')
    assert len(particles) == 2
    assert 2212 in particles
    assert -2212 in particles

    particles = Particle.from_search_list(name='p')
    assert len(particles) == 1
    assert 2212 in particles

    assert Particle.from_search(pdgname='p', particle=True) == 2212
    assert Particle.from_search(pdgname='p', particle=False) == -2212

    assert Particle.from_search(name='p', particle=True) == 2212
    assert Particle.from_search(name='p~', particle=False) == -2212
コード例 #4
0
ファイル: test_particle.py プロジェクト: marinang/particle
def test_keyword_lambda_style_search():
    particles = Particle.from_search_list(pdgname=lambda x: 'p' == x)
    assert len(particles) == 2
    assert 2212 in particles
    assert -2212 in particles

    # Fuzzy name
    particles = Particle.from_search_list(name=lambda x: 'p' in x)
    assert len(particles) > 2
    assert 2212 in particles
    assert -2212 in particles

    # Name and particle
    assert Particle.from_search(name=lambda x: x == 'p', particle=True) == 2212

    # Unit based comparison
    assert 2212 in Particle.from_search_list(lifetime=lambda x: x > 1 * second)