示例#1
0
文件: zaffy.py 项目: bigwheel/zaffy
def init(formatter):
  try:
    action_loader.load_actions()
  except LoadError as e:
    print_error_list(formatter, "action import: ", e)

  try:
    template.load_customtests()
  except LoadError as e:
    print_error_list(formatter, "customtests import: ", e)

  try:
    template.load_customfilters()
  except LoadError as e:
    print_error_list(formatter, "customfilters import: ", e)

  if option.config_file:
    formatter.debug("config file: " + option.config_file)

  config_loader = ConfigLoader(option.config_file)
  config_loader.setup_klass(action_loader.get_all_action_map())

  env = {"formatter": formatter}
  env.update(action_loader.get_all_action_map())
  return env
示例#2
0
文件: zaffy.py 项目: deflis/zaffy
def init(formatter):
  action_loader.load_actions()
  for error in action_loader.load_error_list:
    formatter.debug("action import: " + unicode(error))

  if option.config_file:
    formatter.debug("config file: " + option.config_file)

  config_loader = ConfigLoader(option.config_file)
  config_loader.apply_config_to_klass(action_loader.get_all_action_map())

  env = {"formatter": formatter}
  env.update(action_loader.get_all_action_map())
  return env
示例#3
0
文件: console.py 项目: tkzwtks/zaffy
  def __init__(self, global_env):
    cmd.Cmd.__init__(self)
    self.global_env = global_env
    self.scenario = None

    # cmd.Cmd クラスで do_hogehoge 関数を定義すると、
    # hogehoge コマンドを補完してくれる
    # 合わせて complete_hogehoge 関数を定義すると
    # hogehoge fuga と入力中に fuga の部分を補完してくれる
    setattr(CUI, "do_action: ", self._do_action)
    setattr(CUI, "complete_action:", self._complete_action)
    CUI.identchars += ':'
    self.action_complete = []
    self.action_param_complete = {}
    for action_name, action_klass in action_loader.get_all_action_map().items():
      for method in dir(action_klass):
        method_obj = getattr(action_klass, method)
        if method.startswith('do_') and callable(method_obj):
          args = inspect.getargspec(method_obj).args
          args = self.remove_item(args, ['self', 'scenario', 'global_env'])
          args.extend(["assert", "assertex"])
          method = method.replace('do_', '')

          if method == action_name:
            action_key = action_name
          else:
            action_key = action_name + '.' + method
          self.action_complete.append(action_key)
          self.action_param_complete[action_key] = args
示例#4
0
文件: zaffy.py 项目: maxwellzdm/zaffy
def main():
  action_loader.load_actions()
  global_env = {}
  global_env.update(action_loader.get_all_action_map())

  if option.config_file:
    print("using config file: " + option.config_file)
  config_loader = ConfigLoader(option.config_file)
  config_loader.apply_config_to_klass(action_loader.get_all_action_map())
  for target in option.targets:
    try:
      print ""
      print "[running]", target
      scenario = scenario_loader.load_file(target)
      scenario.run(global_env)
    except ActionException as e:
      print "--------------------------"
      print(e.stack_trace)
      print(e.original)
      print "--------------------------"
示例#5
0
文件: zaffy.py 项目: bigwheel/zaffy
def teardown():
  for action_klass in action_loader.get_all_action_map().values():
    teardown_method = type.__getattribute__(action_klass, 'teardown')
    teardown_method()