コード例 #1
0
ファイル: test_worker.py プロジェクト: srenatus/st2
 def test_succeeded_execution_handling(self):
     testworker = worker.Worker(None)
     live_action_db = self._get_execution_db_model()
     testworker.execute_action(live_action_db)
     updated_live_action_db = get_liveaction_by_id(live_action_db.id)
     self.assertEqual(updated_live_action_db.status,
                      action_constants.LIVEACTION_STATUS_RUNNING)
コード例 #2
0
ファイル: test_worker.py プロジェクト: srenatus/st2
 def test_runner_info(self):
     testworker = worker.Worker(None)
     live_action_db = self._get_execution_db_model()
     testworker.execute_action(live_action_db)
     updated_live_action_db = get_liveaction_by_id(live_action_db.id)
     self.assertEqual(updated_live_action_db.status,
                      action_constants.LIVEACTION_STATUS_RUNNING)
     self.assertTrue(updated_live_action_db.runner_info, 'runner_info should have value.')
コード例 #3
0
ファイル: test_worker.py プロジェクト: srenatus/st2
 def test_basic_execution_fail(self):
     testworker = worker.Worker(None)
     live_action_db = self._get_execution_db_model(
         status=action_constants.LIVEACTION_STATUS_FAILED)
     testworker.execute_action(live_action_db)
     updated_live_action_db = get_liveaction_by_id(live_action_db.id)
     self.assertEqual(updated_live_action_db.status,
                      action_constants.LIVEACTION_STATUS_FAILED)
コード例 #4
0
ファイル: test_worker.py プロジェクト: srenatus/st2
 def test_failed_execution_handling(self):
     testworker = worker.Worker(None)
     live_action_db = self._get_execution_db_model()
     try:
         testworker.execute_action(live_action_db)
         self.assertTrue(False, 'Exception expected.')
     except Exception:
         self.assertTrue(True)
     updated_live_action_db = get_liveaction_by_id(live_action_db.id)
     self.assertEqual(updated_live_action_db.status,
                      action_constants.LIVEACTION_STATUS_FAILED)
コード例 #5
0
ファイル: test_worker.py プロジェクト: rgaertner/st2
 def test_basic_execution_canceled(self):
     testworker = worker.Worker(None)
     live_action_db = self._get_execution_db_model(
         status=action_constants.LIVEACTION_STATUS_CANCELED)
     result = getattr(live_action_db, 'result', None)
     self.assertTrue(result == {}, getattr(live_action_db, 'result', None))
     testworker.execute_action(live_action_db)
     updated_live_action_db = get_liveaction_by_id(live_action_db.id)
     self.assertEqual(updated_live_action_db.status,
                      action_constants.LIVEACTION_STATUS_CANCELED)
     result = getattr(updated_live_action_db, 'result', None)
     self.assertTrue(result['message'] is not None)
コード例 #6
0
ファイル: test_history.py プロジェクト: gitter-badger/st2
from st2reactor.rules.enforcer import RuleEnforcer
from st2common.util import reference
from st2common.transport.publishers import CUDPublisher
from st2common.services import action as action_service
from st2common.models.system.common import ResourceReference
from st2common.models.db.action import ActionExecutionDB
from st2common.models.api.reactor import TriggerTypeAPI, TriggerAPI, TriggerInstanceAPI
from st2common.models.api.rule import RuleAPI
from st2common.models.api.action import RunnerTypeAPI, ActionAPI, ActionExecutionAPI
import st2common.util.action_db as action_utils
from st2common.constants.action import ACTIONEXEC_STATUS_SUCCEEDED
from st2common.persistence.reactor import TriggerType, Trigger, TriggerInstance, Rule
from st2common.persistence.action import RunnerType, Action, ActionExecution
from st2common.persistence.history import ActionExecutionHistory

CHAMPION = worker.Worker(None)
HISTORIAN = history.Historian(None, timeout=1, wait=1)
MOCK_FAIL_HISTORY_CREATE = False


def process_create(payload):
    try:
        if isinstance(payload, ActionExecutionDB):
            if not MOCK_FAIL_HISTORY_CREATE:
                HISTORIAN.record_action_execution(payload)
            CHAMPION.execute_action(payload)
    except Exception as e:
        print(e)


def process_update(payload):