Ejemplo n.º 1
0
 def test_token_model(self):
     dt = isotime.add_utc_tz(datetime.datetime.utcnow())
     tk1 = TokenAPI(user='******', token=uuid.uuid4().hex,
                    expiry=isotime.format(dt, offset=False))
     tkdb1 = TokenAPI.to_model(tk1)
     self.assertIsNotNone(tkdb1)
     self.assertIsInstance(tkdb1, TokenDB)
     self.assertEqual(tkdb1.user, tk1.user)
     self.assertEqual(tkdb1.token, tk1.token)
     self.assertEqual(tkdb1.expiry, isotime.parse(tk1.expiry))
     tkdb2 = Token.add_or_update(tkdb1)
     self.assertEqual(tkdb1, tkdb2)
     self.assertIsNotNone(tkdb2.id)
     tk2 = TokenAPI.from_model(tkdb2)
     self.assertEqual(tk2.user, tk1.user)
     self.assertEqual(tk2.token, tk1.token)
     self.assertEqual(tk2.expiry, tk1.expiry)
Ejemplo n.º 2
0
WF2_SPEC = FIXTURES['workflows'][WF2_YAML_FILE_NAME]
WF2_YAML = yaml.safe_dump(WF2_SPEC, default_flow_style=False)
WF2_NAME = '%s.%s' % (PACK, WF2_YAML_FILE_NAME.replace('.yaml', ''))
WF2 = workflows.Workflow(None, {'name': WF2_NAME, 'definition': WF2_YAML})
WF2_EXEC = copy.deepcopy(MISTRAL_EXECUTION)
WF2_EXEC['workflow_name'] = WF2_NAME

# Action executions requirements
ACTION_CONTEXT = {'user': '******'}
ACTION_PARAMS = {'friend': 'Rocky'}

# Token for auth test cases
TOKEN_API = TokenAPI(
    user=ACTION_CONTEXT['user'], token=uuid.uuid4().hex,
    expiry=isotime.format(date_utils.get_datetime_utc_now(), offset=False))
TOKEN_DB = TokenAPI.to_model(TOKEN_API)

NON_EMPTY_RESULT = 'non-empty'


@mock.patch.object(LocalShellRunner, 'run', mock.
                   MagicMock(return_value=(action_constants.LIVEACTION_STATUS_SUCCEEDED,
                                           NON_EMPTY_RESULT, None)))
@mock.patch.object(CUDPublisher, 'publish_update', mock.MagicMock(return_value=None))
@mock.patch.object(CUDPublisher, 'publish_create',
                   mock.MagicMock(side_effect=MockLiveActionPublisher.publish_create))
@mock.patch.object(LiveActionPublisher, 'publish_state',
                   mock.MagicMock(side_effect=MockLiveActionPublisher.publish_state))
class TestMistralRunner(DbTestCase):

    @classmethod
Ejemplo n.º 3
0
 def test_token_model_null_expiry(self):
     tk = TokenAPI(user='******', token=uuid.uuid4().hex, expiry=None)
     self.assertRaises(ValueError, Token.add_or_update, TokenAPI.to_model(tk))
Ejemplo n.º 4
0
 def test_token_model_null_user(self):
     dt = isotime.add_utc_tz(datetime.datetime.utcnow())
     tk = TokenAPI(user=None, token=uuid.uuid4().hex, expiry=isotime.format(dt))
     self.assertRaises(ValueError, Token.add_or_update, TokenAPI.to_model(tk))
Ejemplo n.º 5
0
 def test_token_model_null_token(self):
     dt = date_utils.get_datetime_utc_now()
     tk = TokenAPI(user='******', token=None, expiry=isotime.format(dt))
     self.assertRaises(ValueError, Token.add_or_update, TokenAPI.to_model(tk))
Ejemplo n.º 6
0
 def test_token_model_null_token(self):
     dt = date_utils.get_datetime_utc_now()
     tk = TokenAPI(user='******', token=None, expiry=isotime.format(dt))
     self.assertRaises(ValueError, Token.add_or_update, TokenAPI.to_model(tk))
Ejemplo n.º 7
0
 def test_token_model_null_expiry(self):
     tk = TokenAPI(user='******', token=uuid.uuid4().hex, expiry=None)
     self.assertRaises(ValueError, Token.add_or_update,
                       TokenAPI.to_model(tk))
Ejemplo n.º 8
0
WF1_NAME = '%s.%s' % (PACK, WF1_YAML_FILE_NAME.replace('.yaml', ''))
WF1 = workflows.Workflow(None, {'name': WF1_NAME, 'definition': WF1_YAML})
WF1_OLD = workflows.Workflow(None, {'name': WF1_NAME, 'definition': ''})
WF1_EXEC = copy.deepcopy(MISTRAL_EXECUTION)
WF1_EXEC['workflow_name'] = WF1_NAME

# Action executions requirements
ACTION_CONTEXT = {'user': '******'}
ACTION_PARAMS = {'friend': 'Rocky'}

# Token for auth test cases
TOKEN_API = TokenAPI(user=ACTION_CONTEXT['user'],
                     token=uuid.uuid4().hex,
                     expiry=isotime.format(date_utils.get_datetime_utc_now(),
                                           offset=False))
TOKEN_DB = TokenAPI.to_model(TOKEN_API)

NON_EMPTY_RESULT = 'non-empty'


@mock.patch.object(
    LocalShellRunner, 'run',
    mock.MagicMock(return_value=(action_constants.LIVEACTION_STATUS_SUCCEEDED,
                                 NON_EMPTY_RESULT, None)))
@mock.patch.object(CUDPublisher, 'publish_update',
                   mock.MagicMock(return_value=None))
@mock.patch.object(
    CUDPublisher, 'publish_create',
    mock.MagicMock(side_effect=MockLiveActionPublisher.publish_create))
@mock.patch.object(
    LiveActionPublisher, 'publish_state',