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()
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()
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)
def test_add_resource_type_exception_if_invalid_resource(self): with self.assertRaises(InvalidResourceError): add_resource_type(self.resource_type_name, self.resource_name)
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])
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])
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)
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)