def test_node_clear(self): r = get_router_table() router = Router(r, SinkMetrics()) # Register a node user router.register_user( dict(uaid=dummy_uaid, node_id="asdf", connected_at=1234, router_key="webpush")) # Verify user = router.get_uaid(dummy_uaid) eq_(user["node_id"], "asdf") eq_(user["connected_at"], 1234) eq_(user["router_key"], "webpush") # Clear router.clear_node(user) # Verify user = router.get_uaid(dummy_uaid) eq_(user.get("node_id"), None) eq_(user["connected_at"], 1234) eq_(user["router_key"], "webpush")
def test_clear_node_provision_failed(self): r = get_router_table() router = Router(r, SinkMetrics()) router.table.connection.put_item = Mock() def raise_error(*args, **kwargs): raise ProvisionedThroughputExceededException(None, None) router.table.connection.put_item.side_effect = raise_error with self.assertRaises(ProvisionedThroughputExceededException): router.clear_node(Item(r, dict(uaid="asdf", connected_at="1234", node_id="asdf")))
def test_clear_node_provision_failed(self): r = get_router_table() router = Router(r, SinkMetrics()) router.table.connection.put_item = Mock() def raise_error(*args, **kwargs): raise ProvisionedThroughputExceededException(None, None) router.table.connection.put_item.side_effect = raise_error with self.assertRaises(ProvisionedThroughputExceededException): router.clear_node( Item(r, dict(uaid="asdf", connected_at="1234", node_id="asdf")))
def test_node_clear(self): r = get_router_table() router = Router(r, SinkMetrics()) # Register a node user router.register_user(dict(uaid="asdf", node_id="asdf", connected_at=1234)) # Verify user = router.get_uaid("asdf") eq_(user["node_id"], "asdf") # Clear router.clear_node(user) # Verify user = router.get_uaid("asdf") eq_(user.get("node_id"), None)
def test_node_clear(self): r = get_router_table() router = Router(r, SinkMetrics()) # Register a node user router.register_user( dict(uaid="asdf", node_id="asdf", connected_at=1234)) # Verify user = router.get_uaid("asdf") eq_(user["node_id"], "asdf") # Clear router.clear_node(user) # Verify user = router.get_uaid("asdf") eq_(user.get("node_id"), None)
def test_clear_node_provision_failed(self): router = Router(self.table_conf, SinkMetrics(), resource=self.resource) def raise_condition(*args, **kwargs): raise ClientError( {'Error': { 'Code': 'ProvisionedThroughputExceededException' }}, 'mock_update_item') mm = Mock() mm.put_item = Mock(side_effect=raise_condition) router.table = mm with pytest.raises(ClientError) as ex: router.clear_node( dict(uaid=dummy_uaid, connected_at="1234", node_id="asdf", router_type="webpush")) assert (ex.value.response['Error']['Code'] == "ProvisionedThroughputExceededException")
def test_clear_node_provision_failed(self): r = get_router_table() router = Router(r, SinkMetrics()) def raise_condition(*args, **kwargs): import autopush.db raise autopush.db.g_client.exceptions.ClientError( {'Error': { 'Code': 'ProvisionedThroughputExceededException' }}, 'mock_update_item') router.table.put_item = Mock(side_effect=raise_condition) with pytest.raises(ClientError) as ex: router.clear_node( dict(uaid=dummy_uaid, connected_at="1234", node_id="asdf", router_type="webpush")) assert (ex.value.response['Error']['Code'] == "ProvisionedThroughputExceededException")
def test_preflight_check_fail(self): router = Router(get_router_table(), SinkMetrics()) message = Message(get_rotating_message_table(), SinkMetrics()) def raise_exc(*args, **kwargs): # pragma: no cover raise Exception("Oops") router.clear_node = Mock() router.clear_node.side_effect = raise_exc with pytest.raises(Exception): preflight_check(message, router)
def test_preflight_check_fail(self): router = Router(get_router_table(), SinkMetrics()) storage = Storage(get_storage_table(), SinkMetrics()) def raise_exc(*args, **kwargs): # pragma: no cover raise Exception("Oops") router.clear_node = Mock() router.clear_node.side_effect = raise_exc with self.assertRaises(Exception): preflight_check(storage, router)
def test_node_clear_fail(self): r = get_router_table() router = Router(r, SinkMetrics()) def raise_condition(*args, **kwargs): raise ConditionalCheckFailedException(None, None) router.table.connection.put_item = Mock() router.table.connection.put_item.side_effect = raise_condition data = dict(uaid="asdf", node_id="asdf", connected_at=1234) result = router.clear_node(Item(r, data)) eq_(result, False)
def test_node_clear_fail(self): r = get_router_table() router = Router(r, SinkMetrics()) def raise_condition(*args, **kwargs): raise ConditionalCheckFailedException(None, None) router.table.connection.put_item = Mock() router.table.connection.put_item.side_effect = raise_condition data = dict(uaid=dummy_uaid, node_id="asdf", connected_at=1234) result = router.clear_node(Item(r, data)) eq_(result, False)
def test_node_clear(self): router = Router(self.table_conf, SinkMetrics(), resource=self.resource) # Register a node user router.register_user(dict(uaid=dummy_uaid, node_id="asdf", connected_at=1234, router_type="webpush")) # Verify user = router.get_uaid(dummy_uaid) assert user["node_id"] == "asdf" assert user["connected_at"] == 1234 assert user["router_type"] == "webpush" # Clear router.clear_node(user) # Verify user = router.get_uaid(dummy_uaid) assert user.get("node_id") is None assert user["connected_at"] == 1234 assert user["router_type"] == "webpush"
def test_node_clear_fail(self): r = get_router_table() router = Router(r, SinkMetrics()) def raise_condition(*args, **kwargs): raise ClientError( {'Error': { 'Code': 'ConditionalCheckFailedException' }}, 'mock_update_item') router.table.put_item = Mock(side_effect=raise_condition) data = dict(uaid=dummy_uaid, node_id="asdf", connected_at=1234) result = router.clear_node(data) assert result is False
def test_node_clear(self): r = get_router_table() router = Router(r, SinkMetrics()) # Register a node user router.register_user(dict(uaid=dummy_uaid, node_id="asdf", connected_at=1234, router_key="webpush")) # Verify user = router.get_uaid(dummy_uaid) eq_(user["node_id"], "asdf") eq_(user["connected_at"], 1234) eq_(user["router_key"], "webpush") # Clear router.clear_node(user) # Verify user = router.get_uaid(dummy_uaid) eq_(user.get("node_id"), None) eq_(user["connected_at"], 1234) eq_(user["router_key"], "webpush")
def test_preflight_check_fail(self): router = Router(self.table_conf, SinkMetrics(), resource=self.resource) message = Message( get_rotating_message_tablename(boto_resource=self.resource), boto_resource=self.resource) def raise_exc(*args, **kwargs): # pragma: no cover raise Exception("Oops") router.clear_node = Mock() router.clear_node.side_effect = raise_exc with pytest.raises(Exception): preflight_check(message, router, self.resource)
def test_clear_node_condition_failed(self): r = get_router_table() router = Router(r, SinkMetrics()) def raise_error(*args, **kwargs): import autopush.db raise autopush.db.g_client.exceptions.ClientError( {'Error': { 'Code': 'ConditionalCheckFailedException' }}, 'mock_put_item') router.table.put_item = Mock(side_effect=raise_error) res = router.clear_node( dict(uaid=dummy_uaid, connected_at="1234", node_id="asdf", router_type="webpush")) assert res is False
def test_clear_node_condition_failed(self): router = Router(self.table_conf, SinkMetrics(), resource=self.resource) def raise_error(*args, **kwargs): raise ClientError( {'Error': { 'Code': 'ConditionalCheckFailedException' }}, 'mock_put_item') mock_put = Mock() mock_put.put_item = Mock(side_effect=raise_error) router.table = mock_put res = router.clear_node( dict(uaid=dummy_uaid, connected_at="1234", node_id="asdf", router_type="webpush")) assert res is False