Ejemplo n.º 1
0
    def test_raise(self):
        obj = LambdaStr(lambda_str = 'ev: aaa', name = 'test_true')

        event = MockEvent()
        obj.begin(event)

        event = MockEvent()
        self.assertRaises(ValueError, obj, event)

        obj.end()
Ejemplo n.º 2
0
    def test_standard(self):
        obj = LambdaStr(lambda_str = 'ev : True', name = 'test_true')

        event = MockEvent()
        obj.begin(event)
        self.assertTrue(callable(obj.func))

        event = MockEvent()
        self.assertTrue(obj(event))

        event = MockEvent()
        self.assertTrue(obj.event(event))

        obj.end()
        self.assertIsNone(obj.func)
         dict(Not=dict(
             Any=(
                 'ev : ev.z[0] == 0',
                 'ev : ev.w[0] >= 300',
                 'alias5',
                 'alias6',
             ),
         )),
     )),
     dict(
         AllClass=All, AnyClass=Any, NotClass=Not,
         LambdaStrClass=LambdaStr, aliasDict=alias_dict,
         n=5242,
     ),
     Any(selections=[
         LambdaStr('ev : ev.x[0] == 0'),
         All(selections=[
             LambdaStr('ev : ev.x[0] >= 1'),
             LambdaStr('ev : ev.y[0] >= 100'),
             LambdaStr(name='alias4', lambda_str='ev : ev.var1[0] >= 10'),
         ]),
         Not(selection=Any(selections=[
             LambdaStr('ev : ev.z[0] == 0'),
             LambdaStr('ev : ev.w[0] >= 300'),
             LambdaStr(name='alias5', lambda_str='ev : ev.var4[0] == 5242'),
             LambdaStr(name='alias6', lambda_str='ev : 11 <= ev.var5[0] < 20'),
         ]),
         ),
     ]),
     id='example'
 ),
from alphatwirl.selection.factories.factory import FactoryDispatcher
from alphatwirl.selection.modules.LambdaStr import LambdaStr
from alphatwirl.selection.modules import All, Any, Not

##__________________________________________________________________||
# path_cfg, expanded, obj
params = [
    pytest.param('ev : ev.nJets[0] >= 2',
                 dict(
                     components=(),
                     factory='LambdaStrFactory',
                     lambda_str='ev : ev.nJets[0] >= 2',
                 ),
                 LambdaStr(
                     name='ev : ev.nJets[0] >= 2',
                     lambda_str='ev : ev.nJets[0] >= 2',
                 ),
                 id='string:lambda_str'),
    pytest.param('ev : ev.nJets[0] >= {n}',
                 dict(
                     components=(),
                     factory='LambdaStrFactory',
                     lambda_str='ev : ev.nJets[0] >= {n}',
                 ),
                 LambdaStr(
                     name='ev : ev.nJets[0] >= 5242',
                     lambda_str='ev : ev.nJets[0] >= 5242',
                 ),
                 id='string:lambda_str-not-formatted'),
    pytest.param(dict(All=()), {
        'factory': 'AllFactory',
        'alias6': ('ev : {low} <= ev.var5[0] < {high}', dict(low=11, high=20))
    }

##__________________________________________________________________||
# path_cfg, expanded, obj
params = [
    pytest.param(
        'alias1',
        dict(
            factory='LambdaStrFactory',
            components=(),
            lambda_str='ev : ev.var1[0] >= 10',
            name='alias1'
        ),
        LambdaStr(
            name='alias1',
            lambda_str='ev : ev.var1[0] >= 10'
        ),
        id='alias1'
    ),
    pytest.param(
        ('alias1', dict(name='name1')),
        dict(
            factory='LambdaStrFactory',
            components=(),
            lambda_str='ev : ev.var1[0] >= 10',
            name='name1'
        ),
        LambdaStr(name='name1', lambda_str='ev : ev.var1[0] >= 10'),
        id='alias1:with-name'
    ),
    pytest.param(