data:
  - { _id: 1, x: 11 }
  - { _id: 2, x: 22 }

collection_name: &collection_name 'FindOneAndReplace_hint'

tests:
  -
    description: "Unacknowledged findOneAndReplace with hint string fails with client-side error"
    operations:
      -
        object: collection
        collectionOptions: &collection_options
          writeConcern: { w: 0 }
        name: findOneAndReplace
        arguments:
          filter: &filter { _id: 1 }
          replacement: &replacement { x: 33 }
          hint: "_id_"
        error: true
    expectations: []
    outcome: &outcome
      collection:
        data:
          - { _id: 1, x: 11 }
          - { _id: 2, x: 22 }
  -
    description: "Unacknowledged findOneAndReplace with hint document fails with client-side error"
    operations:
      -
        object: collection
        collectionOptions: *collection_options
        name: findOneAndReplace
        arguments:
          filter: *filter
          replacement: *replacement
          hint: { _id: 1 }
        error: true
    expectations: []
    outcome: *outcome
