'Insert a single document.
>>> db.test.count({\'x\': 1})
0
>>> result = db.test.insert_one({\'x\': 1})
>>> result.inserted_id
ObjectId(\'54f112defba522406c9cc208\')
>>> db.test.find_one({\'x\': 1})
{u\'x\': 1, u\'_id\': ObjectId(\'54f112defba522406c9cc208\')}
:Parameters:
- `document`: The document to insert. Must be a mutable mapping
type. If the document does not have an _id field one will be
added automatically.
- `bypass_document_validation`: (optional) If ``True``, allows the
write to opt-out of document level validation. Default is
``False``.
:Returns:
- An instance of :class:`~pymongo.results.InsertOneResult`.
.. seealso:: :ref:`writes-and-ids`
.. note:: `bypass_document_validation` requires server version
**>= 3.2**
.. versionchanged:: 3.2
Added bypass_document_validation support
.. versionadded:: 3.0'

def insert_one(self, document, bypass_document_validation=False):

    common.validate_is_document_type('document', document)
    if (not (isinstance(document, RawBSONDocument) or ('_id' in document))):
        document['_id'] = ObjectId()
    with self._socket_for_writes() as sock_info:
        return InsertOneResult(self._insert(sock_info, document, bypass_doc_val=bypass_document_validation), self.write_concern.acknowledged)
