Uploaded image for project: 'Drivers'
  1. Drivers
  2. DRIVERS-2270

Use $$unsetOrMatches for upsert and multi in update command expectations

    • Type: Icon: Spec Change Spec Change
    • Resolution: Unresolved
    • Priority: Icon: Unknown Unknown
    • None
    • Component/s: CRUD
    • Needed
    • Hide

      Sync unified CRUD spec tests with mongodb/specifications@51ca03b.

      Show
      Sync unified CRUD spec tests with mongodb/specifications@51ca03b .
    • $i18n.getText("admin.common.words.hide")
      Key Status/Resolution FixVersion
      PHPLIB-748 Fixed 1.13.0-beta1, 1.13.0
      CDRIVER-4330 Backlog
      CXX-2486 Fixed 3.7.0
      CSHARP-4134 Fixed 2.16.0
      GODRIVER-2376 Done
      JAVA-4568 Fixed 4.6.0
      NODE-4174 Done
      MOTOR-928 Won't Do
      PYTHON-3219 Duplicate
      RUBY-2950 Fixed 2.18.0
      RUST-1260 Backlog
      SWIFT-1541 Won't Do
      $i18n.getText("admin.common.words.show")
      #scriptField, #scriptField *{ border: 1px solid black; } #scriptField{ border-collapse: collapse; } #scriptField td { text-align: center; /* Center-align text in table cells */ } #scriptField td.key { text-align: left; /* Left-align text in the Key column */ } #scriptField a { text-decoration: none; /* Remove underlines from links */ border: none; /* Remove border from links */ } /* Add green background color to cells with FixVersion */ #scriptField td.hasFixVersion { background-color: #00FF00; /* Green color code */ } /* Center-align the first row headers */ #scriptField th { text-align: center; } Key Status/Resolution FixVersion PHPLIB-748 Fixed 1.13.0-beta1, 1.13.0 CDRIVER-4330 Backlog CXX-2486 Fixed 3.7.0 CSHARP-4134 Fixed 2.16.0 GODRIVER-2376 Done JAVA-4568 Fixed 4.6.0 NODE-4174 Done MOTOR-928 Won't Do PYTHON-3219 Duplicate RUBY-2950 Fixed 2.18.0 RUST-1260 Backlog SWIFT-1541 Won't Do

      Summary

      The update command expectations in various let and comment option tests from DRIVERS-1788 and DRIVERS-742 (and related follow-up tickets) are missing $$unsetOrMatches for the upsert and multi options within expected update statements. Those are necessary since some drivers explicitly send false for these options.

      Ultimately, we can consider requiring drivers to leave these fields unset by default (DRIVERS-2271), but for now spec tests will need to use $$unsetOrMatches for portability.

      Motivation

      Who is the affected end user?

      Drivers that explicitly specify false for upsert and/or multi options in update statements.

      How does this affect the end user?

      APM assertions fail.

      Is this issue urgent?

      This is only urgent for drivers that explicitly send false for upsert and multi options.

      Is this ticket required by a downstream team?

      No.

      Is this ticket only for tests?

      Yes.

            Assignee:
            jmikola@mongodb.com Jeremy Mikola
            Reporter:
            jmikola@mongodb.com Jeremy Mikola
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: