示例#1
0
  def test_add(self):
    interface.add(simple, lambda arg1: arg1, dict(name='added'), [dict(name='arg1', type=int)])

    assert(interface.call('added arg1=1') == 1)

    assert(expect_exception(lambda: interface.call('added arg1=a'), HandledException))

    del simple.__ec_member__.Members['added'] # remove the added member
示例#2
0
def inject(sharedBase=None, **Settings):

  import sys
  from json import dumps
  from urllib import quote

  from ec import interface
  from ec.ec import settings

  import delegator # #Note: An ec module is used, instead of making the call directly, so to utilize ec's features like debugging etc.

  if sharedBase:
    delegator.setSharedBase(sharedBase)

  if Settings:
    settings(**Settings)

  Args = sys.argv[1:]

  interface.setBase(delegator)
  interface.call('makeCall %s %s' % (Args[0], quote(dumps(Args[1:]))), silent=False)
示例#3
0
  def test_call_with_input(self):
    from support.helpers import RawInputHook as RIH
    RIH.values(2, 3)

    assert(interface.call('task1 arg1=1', True) == (1, 2))
示例#4
0
 def test_unhandled_exception(self):
   assert(expect_exception(lambda: interface.call('ex'), ZeroDivisionError))
示例#5
0
 def test_handled_exception(self):
   assert(expect_exception(lambda: interface.call('task2'), HandledException))
示例#6
0
 def test_mixed_args(self):
   assert(interface.call('task1 1 arg2=1') == (1, 1))
示例#7
0
 def test_positional_args(self):
   assert(interface.call('task1 1') == (1, 2))
示例#8
0
 def test_call(self):
   assert(interface.call('task1 arg1=1') == (1, 2))
示例#9
0
文件: wrapping.py 项目: Laufire/ec
"""
An example for wrapping ec based modules.
"""

from ec import interface

import simple # the ec-ed script

interface.setBase(simple)

interface.call('task1 arg2=1', True)