コード例 #1
0
 def test_match_arn_pattern_invalid_resource_valueerror(self):
     with self.assertRaises(ValueError):
         match_arn_pattern(
             "arn:aws:appsync:us-west-2:123123123:bucket_name",
             "a1:b2:c3:d4:e5:f6")
     with self.assertRaises(ValueError):
         match_arn_pattern(
             "arn:aws:appsync:us-west-2:123123123:bucket_name", "arn:")
コード例 #2
0
 def test_match_arn_pattern_literal_nonmatch(self):
     tests = [
         ("arn:${Partition}:s3:${Region}:${Account}:${Bucket}/${Object}",
          "arn:aws:s3:us-east-1:123123123:bucket_name")
     ]
     for a, b in tests:
         match = match_arn_pattern(a, b)
         self.assertFalse(match)
コード例 #3
0
 def test_match_arn_pattern_full_wildcard_match(self):
     match = match_arn_pattern(
         "arn:${Partition}:s3:${Region}:${Account}:${Bucket}", "*")
     self.assertTrue(match)
     self.assertEqual(match.grouplist, [("${Partition}", "*"),
                                        ("${Region}", "*"),
                                        ("${Account}", "*"),
                                        ("${Bucket}", "*")])
コード例 #4
0
 def test_match_arn_pattern_partial_wildcard_match(self):
     match = match_arn_pattern(
         "arn:${Partition}:s3:${Region}:${Account}:${Bucket}",
         "arn:aws:s*:::bucket_name")
     self.assertTrue(match)
     self.assertEqual(match.grouplist, [("${Partition}", "aws"),
                                        ("${Region}", ""),
                                        ("${Account}", ""),
                                        ("${Bucket}", "bucket_name")])
コード例 #5
0
 def test_match_arn_pattern_literal_match(self):
     tests = [
         ("arn:${Partition}:s3:${Region}:${Account}:${Bucket}/${Object}",
          "arn:aws:s3:us-east-1:123123123:bucket_name/resource_name", [
              ("${Partition}", "aws"), ("${Region}", "us-east-1"),
              ("${Account}", "123123123"), ("${Bucket}", "bucket_name"),
              ("${Object}", "resource_name")
          ]),
         ("arn:*:kms:*:*:key/*", "arn:aws:kms:*:693621191777:key/*",
          [("*", "aws"), ("*", "*"), ("*", "693621191777"), ("*", "*")]),
         ("arn:${Partition}:kinesis:${Region}:${Account}:stream/${StreamName}",
          "arn:aws:kinesis:us-east-1:693621191777:*", [
              ("${Partition}", "aws"), ("${Region}", "us-east-1"),
              ("${Account}", "693621191777"), ("${StreamName}", "*")
          ])
     ]
     for a, b, c in tests:
         match = match_arn_pattern(a, b)
         self.assertTrue(match)
         self.assertEqual(match.grouplist, c)
コード例 #6
0
 def test_match_arn_pattern_partial_wildcard_nonmatch(self):
     match = match_arn_pattern(
         "arn:${Partition}:s3:${Region}:${Account}:${Bucket}/${Object}",
         "arn:aws:s3?:us-east-1:123123123:bucket_name")
     self.assertFalse(match)