description: operation update
schemaVersion: '1.27'
createEntities:
  - client:
      id: &client0 client0
      useMultipleMongoses: false
      observeTracingMessages:
        enableCommandPayload: true
  - database:
      id: &database0 database0
      client: *client0
      databaseName: &databaseName0 operation-update
  - collection:
      id: &collection0 collection0
      database: *database0
      collectionName: &collectionName0 test

tests:
  - description: update one element
    operations:
      -
        object: *collection0
        name: updateOne
        arguments:
          filter: { _id: 1 }
          update: { $inc: { x: 1 } }

    expectTracingMessages:
      - client: *client0
        ignoreExtraSpans: false
        spans:
          - name: update operation-update.test
            attributes:
              db.system.name: mongodb
              db.namespace: *databaseName0
              db.collection.name: *collectionName0
              db.operation.name: update
              db.operation.summary: update operation-update.test

            nested:
              - name: update
                attributes:
                  db.system.name: mongodb
                  db.namespace: operation-update
                  db.collection.name: *collectionName0
                  db.command.name: update
                  server.address: { $$type: string }
                  server.port: { $$type: [ long, string ] }
                  db.mongodb.cursor_id: { $$exists: false }
                  db.response.status_code: { $$exists: false }
                  exception.message: { $$exists: false }
                  exception.type: { $$exists: false }
                  exception.stacktrace: { $$exists: false }
                  network.transport: tcp
                  db.mongodb.server_connection_id:
                    $$type: [ int, long ]
                  db.mongodb.driver_connection_id:
                    $$type: [ int, long ]
                  db.query.summary: update operation-update.test
                  db.query.text:
                    $$matchAsDocument:
                      $$matchAsRoot:
                        update: test
                        ordered: true
                        txnNumber: { $$unsetOrMatches: 1 }
                        updates: [ { "q": { "_id": 1 }, "u": { "$inc": { "x": 1 } } } ]
