{
  "runOn": [
    {
      "minServerVersion": "4.1.10"
    }
  ],
  "database_name": "default",
  "collection_name": "default",
  "data": [],
  "json_schema": {
    "properties": {
      "encrypted_string_aws": {
        "encrypt": {
          "keyId": [
            {
              "$binary": {
                "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
                "subType": "04"
              }
            }
          ],
          "bsonType": "string",
          "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
        }
      },
      "encrypted_string_azure": {
        "encrypt": {
          "keyId": [
            {
              "$binary": {
                "base64": "AZURE+AAAAAAAAAAAAAAAA==",
                "subType": "04"
              }
            }
          ],
          "bsonType": "string",
          "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
        }
      },
      "encrypted_string_gcp": {
        "encrypt": {
          "keyId": [
            {
              "$binary": {
                "base64": "GCP+AAAAAAAAAAAAAAAAAA==",
                "subType": "04"
              }
            }
          ],
          "bsonType": "string",
          "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
        }
      },
      "encrypted_string_local": {
        "encrypt": {
          "keyId": [
            {
              "$binary": {
                "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
                "subType": "04"
              }
            }
          ],
          "bsonType": "string",
          "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
        }
      }
    },
    "bsonType": "object"
  },
  "key_vault_data": [
    {
      "_id": {
        "$binary": {
          "base64": "AZURE+AAAAAAAAAAAAAAAA==",
          "subType": "04"
        }
      },
      "keyMaterial": {
        "$binary": {
          "base64": "n+HWZ0ZSVOYA3cvQgP7inN4JSXfOH85IngmeQxRpQHjCCcqT3IFqEWNlrsVHiz3AELimHhX4HKqOLWMUeSIT6emUDDoQX9BAv8DR1+E1w4nGs/NyEneac78EYFkK3JysrFDOgl2ypCCTKAypkn9CkAx1if4cfgQE93LW4kczcyHdGiH36CIxrCDGv1UzAvERN5Qa47DVwsM6a+hWsF2AAAJVnF0wYLLJU07TuRHdMrrphPWXZsFgyV+lRqJ7DDpReKNO8nMPLV/mHqHBHGPGQiRdb9NoJo8CvokGz4+KE8oLwzKf6V24dtwZmRkrsDV4iOhvROAzz+Euo1ypSkL3mw==",
          "subType": "00"
        }
      },
      "creationDate": {
        "$date": {
          "$numberLong": "1601573901680"
        }
      },
      "updateDate": {
        "$date": {
          "$numberLong": "1601573901680"
        }
      },
      "status": {
        "$numberInt": "0"
      },
      "masterKey": {
        "provider": "azure",
        "keyVaultEndpoint": "key-vault-csfle.vault.azure.net",
        "keyName": "key-name-csfle"
      },
      "keyAltNames": [
        "altname",
        "azure_altname"
      ]
    }
  ],
  "tests": [
    {
      "description": "Insert a document with auto encryption using Azure KMS provider",
      "clientOptions": {
        "autoEncryptOpts": {
          "kmsProviders": {
            "azure": {}
          }
        }
      },
      "operations": [
        {
          "name": "insertOne",
          "arguments": {
            "document": {
              "_id": 1,
              "encrypted_string_azure": "string0"
            }
          }
        }
      ],
      "expectations": [
        {
          "command_started_event": {
            "command": {
              "listCollections": 1,
              "filter": {
                "name": "default"
              }
            },
            "command_name": "listCollections"
          }
        },
        {
          "command_started_event": {
            "command": {
              "listCollections": 1,
              "filter": {
                "name": "datakeys"
              },
              "$db": "keyvault"
            },
            "command_name": "listCollections"
          }
        },
        {
          "command_started_event": {
            "command": {
              "find": "datakeys",
              "filter": {
                "$or": [
                  {
                    "_id": {
                      "$in": [
                        {
                          "$binary": {
                            "base64": "AZURE+AAAAAAAAAAAAAAAA==",
                            "subType": "04"
                          }
                        }
                      ]
                    }
                  },
                  {
                    "keyAltNames": {
                      "$in": []
                    }
                  }
                ]
              },
              "$db": "keyvault"
            },
            "command_name": "find"
          }
        },
        {
          "command_started_event": {
            "command": {
              "insert": "default",
              "documents": [
                {
                  "_id": 1,
                  "encrypted_string_azure": {
                    "$binary": {
                      "base64": "AQGVERPgAAAAAAAAAAAAAAAC5DbBSwPwfSlBrDtRuglvNvCXD1KzDuCKY2P+4bRFtHDjpTOE2XuytPAUaAbXf1orsPq59PVZmsbTZbt2CB8qaQ==",
                      "subType": "06"
                    }
                  }
                }
              ],
              "ordered": true
            },
            "command_name": "insert"
          }
        }
      ],
      "outcome": {
        "collection": {
          "data": [
            {
              "_id": 1,
              "encrypted_string_azure": {
                "$binary": {
                  "base64": "AQGVERPgAAAAAAAAAAAAAAAC5DbBSwPwfSlBrDtRuglvNvCXD1KzDuCKY2P+4bRFtHDjpTOE2XuytPAUaAbXf1orsPq59PVZmsbTZbt2CB8qaQ==",
                  "subType": "06"
                }
              }
            }
          ]
        }
      }
    }
  ]
}
