def test_filter_tag(self):
        i = instance(Tags=[{"Key": "ASV", "Value": "abcd"}])
        self.assertFilter({"tag:ASV": "def"}, i, False)
        self.assertEqual(annotation(i, base_filters.ANNOTATION_KEY), ())

        i = instance(Tags=[{"Key": "CMDB", "Value": "abcd"}])
        self.assertFilter({"tag:ASV": "absent"}, i, True)
        self.assertEqual(annotation(i, base_filters.ANNOTATION_KEY), ["tag:ASV"])
    def test_filter_tag(self):
        i = instance(Tags=[{"Key": "ASV", "Value": "abcd"}])
        self.assertFilter({"tag:ASV": "def"}, i, False)
        self.assertEqual(annotation(i, base_filters.ANNOTATION_KEY), ())

        i = instance(Tags=[{"Key": "CMDB", "Value": "abcd"}])
        self.assertFilter({"tag:ASV": "absent"}, i, True)
        self.assertEqual(annotation(i, base_filters.ANNOTATION_KEY), ["tag:ASV"])
    def test_filter_tag(self):
        i = instance(Tags=[{'Key': 'ASV', 'Value': 'abcd'}])
        self.assertFilter({'tag:ASV': 'def'}, i, False)
        self.assertEqual(annotation(i, base_filters.ANNOTATION_KEY), ())

        i = instance(Tags=[{'Key': 'CMDB', 'Value': 'abcd'}])
        self.assertFilter({'tag:ASV': 'absent'}, i, True)
        self.assertEqual(annotation(i, base_filters.ANNOTATION_KEY),
                         ['tag:ASV'])
    def test_filter_tag(self):
        i = instance(Tags=[
            {'Key': 'ASV', 'Value': 'abcd'}])
        self.assertFilter(
            {'tag:ASV': 'def'}, i, False)
        self.assertEqual(
            annotation(i, base_filters.ANNOTATION_KEY), ())

        i = instance(Tags=[
            {'Key': 'CMDB', 'Value': 'abcd'}])
        self.assertFilter(
            {'tag:ASV': 'absent'}, i, True)
        self.assertEqual(
            annotation(i, base_filters.ANNOTATION_KEY), ['tag:ASV'])
 def test_connection_status_filter(self):
     session_factory = self.replay_flight_data("test_workspaces_connection_status")
     p = self.load_policy(
         {
             "name": "workspaces-connection-status",
             "resource": "workspaces",
             "filters": [{
                 "type": "connection-status",
                 "value_type": "age",
                 "key": "LastKnownUserConnectionTimestamp",
                 "op": "ge",
                 "value": 30
             }]
         }, session_factory=session_factory
     )
     with mock_datetime_now(parser.parse("2019-04-13T00:00:00+00:00"), datetime):
         resources = p.run()
     self.assertEqual(len(resources), 1)
     self.assertIn('LastKnownUserConnectionTimestamp',
         annotation(resources[0], filters.ANNOTATION_KEY))
 def test_connection_status_filter(self):
     session_factory = self.replay_flight_data("test_workspaces_connection_status")
     p = self.load_policy(
         {
             "name": "workspaces-connection-status",
             "resource": "workspaces",
             "filters": [{
                 "type": "connection-status",
                 "value_type": "age",
                 "key": "LastKnownUserConnectionTimestamp",
                 "op": "ge",
                 "value": 30
             }]
         }, session_factory=session_factory
     )
     with mock_datetime_now(parser.parse("2019-04-13T00:00:00+00:00"), datetime):
         resources = p.run()
     self.assertEqual(len(resources), 1)
     self.assertIn('LastKnownUserConnectionTimestamp',
         annotation(resources[0], filters.ANNOTATION_KEY))