Ejemplo n.º 1
0
 def test_let_let_let_mask(self):
     activation = invoke(
         composer.let({'x': 42},
                      composer.let({'x': 69},
                                   composer.let({'x': -1},
                                                composer.mask(get_x)))))
     assert activation['response']['result'] == {'value': 69}
Ejemplo n.º 2
0
 def test_failure(self):
     try:
         invoke(composer.let({'x': 2}, composer.retry(1, retry_test)))
         assert False
     except Exception as err:
         assert err.error['response']['result'] == {'error': 'foo'}
Ejemplo n.º 3
0
 def test_success(self):
     activation = invoke(
         composer.let({'x': 2}, composer.retry(2, retry_test)))
     assert activation['response']['result'] == {'value': 42}
Ejemplo n.º 4
0
 def test_scoping(self):
     activation = invoke(
         composer.let({'x': 42}, composer.let({'x': 69}, get_x),
                      get_value_plus_x), {})
     assert activation['response']['result'] == {'value': 111}
Ejemplo n.º 5
0
 def test_invalid_argument(self):
     try:
         invoke(composer.let(invoke))
         assert False
     except composer.ComposerError as error:
         assert error.message.startswith('Invalid argument')
Ejemplo n.º 6
0
 def test_two_variables_combined(self):
     activation = invoke(composer.let({'x': 42, 'y': 69}, get_x_plus_y), {})
     assert activation['response']['result'] == {'value': 111}
Ejemplo n.º 7
0
 def test_masking(self):
     activation = invoke(
         composer.let({'x': 42}, composer.let({'x': 69}, get_x)), {})
     assert activation['response']['result'] == {'value': 69}
Ejemplo n.º 8
0
 def test_one_variable(self):
     activation = invoke(composer.let({'x': 42}, get_x), {})
     assert activation['response']['result'] == {'value': 42}
 def test_combinator_type(self):
     assert composer.let({}).type == 'let'
 def test_variable_argument_count(self):
     composer.let({})
     composer.let({}, 'foo')
     composer.let({}, 'foo', 'foo')