示例#1
0
文件: triggers.py 项目: srenatus/st2
 def __get_by_id(trigger_id):
     try:
         return Trigger.get_by_id(trigger_id)
     except (ValueError, ValidationError):
         LOG.exception('Database lookup for id="%s" resulted in exception.',
                       trigger_id)
         abort(http_client.NOT_FOUND)
示例#2
0
 def test_trigger_crud(self):
     triggertype = ReactorModelTest._create_save_triggertype()
     saved = ReactorModelTest._create_save_trigger(triggertype)
     retrieved = Trigger.get_by_id(saved.id)
     self.assertEqual(saved.name, retrieved.name,
                      'Same trigger was not returned.')
     # test update
     self.assertEqual(retrieved.description, '')
     retrieved.description = DUMMY_DESCRIPTION
     saved = Trigger.add_or_update(retrieved)
     retrieved = Trigger.get_by_id(saved.id)
     self.assertEqual(retrieved.description, DUMMY_DESCRIPTION, 'Update to trigger failed.')
     # cleanup
     ReactorModelTest._delete([retrieved, triggertype])
     try:
         retrieved = Trigger.get_by_id(saved.id)
     except ValueError:
         retrieved = None
     self.assertIsNone(retrieved, 'managed to retrieve after failure.')
示例#3
0
文件: test_db.py 项目: srenatus/st2
 def test_trigger_crud(self):
     triggertype = ReactorModelTest._create_save_triggertype()
     saved = ReactorModelTest._create_save_trigger(triggertype)
     retrieved = Trigger.get_by_id(saved.id)
     self.assertEqual(saved.name, retrieved.name,
                      'Same trigger was not returned.')
     # test update
     self.assertEqual(retrieved.description, '')
     retrieved.description = DUMMY_DESCRIPTION
     saved = Trigger.add_or_update(retrieved)
     retrieved = Trigger.get_by_id(saved.id)
     self.assertEqual(retrieved.description, DUMMY_DESCRIPTION, 'Update to trigger failed.')
     # cleanup
     ReactorModelTest._delete([retrieved, triggertype])
     try:
         retrieved = Trigger.get_by_id(saved.id)
     except ValueError:
         retrieved = None
     self.assertIsNone(retrieved, 'managed to retrieve after failure.')
    def test_create_trigger_db_from_rule_duplicate(self):
        test_fixtures = {
            'rules': ['cron_timer_rule_1.json', 'cron_timer_rule_2.json']
        }
        loader = FixturesLoader()
        fixtures = loader.load_fixtures(fixtures_pack='generic', fixtures_dict=test_fixtures)
        rules = fixtures['rules']

        trigger_db_ret_1 = trigger_service.create_trigger_db_from_rule(
            RuleAPI(**rules['cron_timer_rule_1.json']))
        self.assertTrue(trigger_db_ret_1 is not None)
        trigger_db_ret_2 = trigger_service.create_trigger_db_from_rule(
            RuleAPI(**rules['cron_timer_rule_2.json']))
        self.assertTrue(trigger_db_ret_2 is not None)
        self.assertEqual(trigger_db_ret_1, trigger_db_ret_2, 'Should reuse same trigger.')
        trigger_db = Trigger.get_by_id(trigger_db_ret_1.id)
        self.assertDictEqual(trigger_db.parameters,
                             rules['cron_timer_rule_1.json']['trigger']['parameters'])
示例#5
0
    def test_create_trigger_db_from_rule_duplicate(self):
        test_fixtures = {
            'rules': ['cron_timer_rule_1.json', 'cron_timer_rule_2.json']
        }
        loader = FixturesLoader()
        fixtures = loader.load_fixtures(fixtures_pack='generic',
                                        fixtures_dict=test_fixtures)
        rules = fixtures['rules']

        trigger_db_ret_1 = trigger_service.create_trigger_db_from_rule(
            RuleAPI(**rules['cron_timer_rule_1.json']))
        self.assertTrue(trigger_db_ret_1 is not None)
        trigger_db_ret_2 = trigger_service.create_trigger_db_from_rule(
            RuleAPI(**rules['cron_timer_rule_2.json']))
        self.assertTrue(trigger_db_ret_2 is not None)
        self.assertEqual(trigger_db_ret_1, trigger_db_ret_2,
                         'Should reuse same trigger.')
        trigger_db = Trigger.get_by_id(trigger_db_ret_1.id)
        self.assertDictEqual(
            trigger_db.parameters,
            rules['cron_timer_rule_1.json']['trigger']['parameters'])
示例#6
0
 def __get_by_id(trigger_id):
     try:
         return Trigger.get_by_id(trigger_id)
     except (ValueError, ValidationError):
         LOG.exception('Database lookup for id="%s" resulted in exception.', trigger_id)
         abort(http_client.NOT_FOUND)