def test_can_jp_search(self):
     self.execute([
         StoreValue(name='searchval', value={'foo': {
             'bar': 'baz'
         }}),
         JPSearch('foo.bar', input_var='searchval', output_var='result'),
     ])
     assert self.executor.variables['result'] == 'baz'
 def test_can_call_builtin_function(self):
     self.execute([
         StoreValue(name='my_arn',
                    value='arn:aws:lambda:us-west-2:123:function:name'),
         BuiltinFunction(
             function_name='parse_arn',
             args=[Variable('my_arn')],
             output_var='result',
         )
     ])
     assert self.executor.variables['result'] == {
         'account_id': '123',
         'region': 'us-west-2',
         'service': 'lambda'
     }
 def test_can_copy_variable(self):
     self.execute([
         StoreValue(name='foo', value='bar'),
         CopyVariable(from_var='foo', to_var='baz'),
     ])
     assert self.executor.variables['baz'] == 'bar'