示例#1
0
    def test_add_resource_type_exception_if_duplicate_lock_check(self):
        def func():
            pss.RESOURCE_TYPE_MAP[self.resource_type_name] = set()

        t = Thread(target=hold_lock, args=(_resource_type_lock, 0.1, func))
        t.start()

        with self.assertRaises(ResourceTypeAlreadyDefinedError):
            add_resource_type(self.resource_type_name)

        t.join()
示例#2
0
    def test_add_resource_type_exception_if_duplicate_lock_check(self):
        # Intermittent failure in Python 2.7
        if sys.version_info.major < 3:
            return

        def func():
            pss.RESOURCE_TYPE_MAP[self.resource_type_name] = set()

        t = Thread(target=hold_lock, args=(_resource_type_lock, 0.1, func))
        t.start()

        with self.assertRaises(ResourceTypeAlreadyDefinedError):
            add_resource_type(self.resource_type_name)

        t.join()
示例#3
0
 def test_get_resource_types_returns_correct(self):
     expected = set(pss.RESOURCE_TYPE_MAP.keys()).union(
         {self.resource_type_name})
     add_resource_type(self.resource_type_name)
     actual = set(get_resource_types())
     self.assertSetEqual(expected, actual)
示例#4
0
 def test_add_resource_type_exception_if_invalid_resource(self):
     with self.assertRaises(InvalidResourceError):
         add_resource_type(self.resource_type_name, self.resource_name)
示例#5
0
 def test_add_resource_type_multiple_resources(self):
     add_resource_type(self.resource_type_name, ('us-proxy', 'uk-proxy'))
     self.assertIn(self.resource_type_name, pss.RESOURCE_TYPE_MAP)
     self.assertSetEqual({'us-proxy', 'uk-proxy'},
                         pss.RESOURCE_TYPE_MAP[self.resource_type_name])
示例#6
0
 def test_add_resource_single_resource(self):
     add_resource_type(self.resource_type_name, 'us-proxy')
     self.assertIn(self.resource_type_name, pss.RESOURCE_TYPE_MAP)
     self.assertSetEqual({'us-proxy'},
                         pss.RESOURCE_TYPE_MAP[self.resource_type_name])
示例#7
0
 def test_add_resource_type_adds_if_new(self):
     add_resource_type(self.resource_type_name)
     self.assertIn(self.resource_type_name, pss.RESOURCE_TYPE_MAP)
示例#8
0
    def test_add_resource_type_exception_if_duplicate(self):
        add_resource_type(self.resource_type_name)

        with self.assertRaises(ResourceTypeAlreadyDefinedError):
            add_resource_type(self.resource_type_name)