def test_send_payload_success_clears_existing_node_failure_count( self, mock_handle_receive, mock_send_document, mock_pod_preferences ): Node.create(host="sub.example.com", last_success=datetime.datetime.now(), failure_count=1) process(Mock()) node = Node.get(Node.host == "sub.example.com") assert node.failure_count == 0
def test_send_payload_stores_unknown_node_into_db(self, mock_handle_receive, mock_send_payload, mock_pod_preferences): process(Mock()) assert Node.select().count() == 1 node = Node.get(Node.host=="sub.example.com") assert node assert node.https
def test_send_payload_failure_updates_existing_node_failure_count( self, mock_handle_receive, mock_send_payload, mock_pod_preferences ): Node.create(host="sub.example.com", last_success=datetime.datetime.now()) mock_send_payload.return_value = {"result": False, "https": False} process(Mock()) node = Node.get(Node.host == "sub.example.com") assert node.failure_count == 1
def test_send_payload_updates_existing_node_in_db( self, mock_handle_receive, mock_send_document, mock_pod_preferences ): Node.create(host="sub.example.com", last_success=datetime.datetime.now()) process(Mock()) node = Node.get(Node.host == "sub.example.com") assert node.total_delivered == 1 assert node.https
def test_send_payload_success_clears_existing_node_failure_count( self, mock_handle_receive, mock_send_document, mock_pod_preferences): Node.create(host="sub.example.com", last_success=datetime.datetime.now(), failure_count=1) process(Mock()) node = Node.get(Node.host == "sub.example.com") assert node.failure_count == 0
def test_send_payload_failure_updates_existing_node_failure_count( self, mock_handle_receive, mock_send_payload, mock_pod_preferences): Node.create(host="sub.example.com", last_success=datetime.datetime.now()) mock_send_payload.return_value = {"result": False, "https": False} process(Mock()) node = Node.get(Node.host == "sub.example.com") assert node.failure_count == 1
def test_send_payload_stores_unknown_node_into_db(self, mock_handle_receive, mock_send_document, mock_pod_preferences): process(Mock()) assert Node.select().count() == 1 node = Node.get(Node.host == "sub.example.com") assert node assert node.https
def test_send_payload_updates_existing_node_in_db(self, mock_handle_receive, mock_send_document, mock_pod_preferences): Node.create(host="sub.example.com", last_success=datetime.datetime.now()) process(Mock()) node = Node.get(Node.host == "sub.example.com") assert node.total_delivered == 1 assert node.https
def save_post_metadata(entity, protocol, hosts): """Save Post metadata to db. :param entity: DiasporaPost entity :param protocol: Protocol identifier :param hosts: List of hostnames that send was done successfully """ try: post, created = Post.get_or_create(guid=entity.guid, protocol=protocol) for host in hosts: post.nodes.add(Node.get(host=host)) except Exception as ex: logging.warning("Exception when trying to save post '{entity}' into database: {exc}".format( entity=entity, exc=ex))