Skip to content

DRIVERS-2017 Add clientEncryption entity to unified test format #1188

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 36 commits into from
Apr 26, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
47e4a6e
Add schema-1.8.json
eramongodb Apr 18, 2022
ac1740d
Add schema for encryptedClient entity
eramongodb Apr 20, 2022
1a309a9
Add unified test format tests for clientEncryptionOpts
eramongodb Apr 18, 2022
5f551d1
Add unified test format spec wording for encryptedClient entity
eramongodb Apr 19, 2022
8c65df2
Update and move some valid-fail clientEncryptionOpts tests to valid-pass
eramongodb Apr 20, 2022
637960e
Rename valid-fail clientEncryptionOpts tests for consistency
eramongodb Apr 20, 2022
ddbb517
Fix length of local key material
eramongodb Apr 22, 2022
58d2750
Revert automated formatting of schema-1.8.json
eramongodb Apr 22, 2022
5b31d3a
Refer to MongoClient entity as "client" rather than "MongoClient"
eramongodb Apr 22, 2022
c449055
Split missing KMS credential fields test by provider
eramongodb Apr 22, 2022
5f7fed3
Use "$$placeholder" instead of an empty document for placeholder values
eramongodb Apr 22, 2022
79eb724
Fix "keyvault" -> "key vault"
eramongodb Apr 22, 2022
64dddde
Rename "encryptedClient" entity to "clientEncryption"
eramongodb Apr 22, 2022
b2d7890
Rename "mixed-kms-credentials" -> "mixed-kms-credential-fields" for c…
eramongodb Apr 22, 2022
8b3dd10
Add descriptive comments to clientEncryptionOpts test files
eramongodb Apr 22, 2022
85f7f3b
Rename tests with mixed casing
eramongodb Apr 22, 2022
0074399
Remove "tlsOptions" from document structure in favor of a note
eramongodb Apr 22, 2022
aeabb28
Add invalid tests for new unified test format
eramongodb Apr 22, 2022
5f8b403
Fix spec and tests so keyVaultClient is optional
eramongodb Apr 22, 2022
d103a58
More invalid tests for unified test format
eramongodb Apr 22, 2022
927ec8f
Rename clientEncryptionOpts -> kmsProviders for kmsProviders schema t…
eramongodb Apr 22, 2022
55deb64
Fix title level for new "$$placeholder" section
eramongodb Apr 25, 2022
17e1a48
Fix inconsistent description of new placeholder value
eramongodb Apr 25, 2022
c2c2fb5
Fix KMS provider in kmsProviders-invalid_kmip_property.yml
eramongodb Apr 25, 2022
9ab7159
Revert removal of required field ClientEncryptionOpts.keyVaultClient
eramongodb Apr 26, 2022
7fa4bcc
Fix id for clientEncryption entities
eramongodb Apr 26, 2022
85bee86
Revert modification of CSE spec
eramongodb Apr 26, 2022
885aab1
Update version and change log for unified test format spec
eramongodb Apr 26, 2022
f10bf89
Merge branch 'master' into client-encryption-entity
eramongodb Apr 26, 2022
41ad053
Include replacement failure among error conditions for placeholder value
eramongodb Apr 26, 2022
176f0c3
Permit flexible values for "$$placeholder"
eramongodb Apr 26, 2022
f2c9353
Add "$$placeholder" to changelog
eramongodb Apr 26, 2022
706e577
Rename invalid format tests for consistency
eramongodb Apr 26, 2022
0fd74eb
Remove inapplicable invalid tests due to revision of "client" -> "key…
eramongodb Apr 26, 2022
3a94297
Add entity-clientEncryption-clientEncryptionOpts-required invalid test
eramongodb Apr 26, 2022
c8edfde
Add context note to clientEncryptionOpts-tlsOptions_not_supported inv…
eramongodb Apr 26, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
554 changes: 554 additions & 0 deletions source/unified-test-format/schema-1.8.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion source/unified-test-format/tests/Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
SCHEMA=../schema-1.7.json
SCHEMA=../schema-1.8.json

.PHONY: all invalid valid-fail valid-pass versioned-api load-balancers gridfs transactions crud collection-management sessions command-monitoring HAS_AJV

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"description": "clientEncryptionOpts-additionalProperties",
"schemaVersion": "1.8",
"createEntities": [
{
"client": {
"id": "client0"
}
},
{
"clientEncryption": {
"id": "clientEncryption0",
"clientEncryptionOpts": {
"keyVaultClient": "client0",
"keyVaultNamespace": "keyvault.datakeys",
"kmsProviders": {
"aws": {}
},
"invalid": {}
}
}
}
],
"tests": [
{
"description": "",
"operations": []
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
description: clientEncryptionOpts-additionalProperties

schemaVersion: "1.8"

createEntities:
- client:
id: &client0 client0
- clientEncryption:
id: &clientEncryption0 clientEncryption0
clientEncryptionOpts:
keyVaultClient: *client0
keyVaultNamespace: keyvault.datakeys
kmsProviders:
aws: {}
invalid: {}

tests:
- description: ""
operations: []
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"description": "clientEncryptionOpts-keyVaultClient-required",
"schemaVersion": "1.8",
"createEntities": [
{
"clientEncryption": {
"id": "clientEncryption0",
"clientEncryptionOpts": {
"keyVaultNamespace": "keyvault.datakeys",
"kmsProviders": {
"aws": {}
}
}
}
}
],
"tests": [
{
"description": "",
"operations": []
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
description: clientEncryptionOpts-keyVaultClient-required

schemaVersion: "1.8"

createEntities:
- clientEncryption:
id: &clientEncryption0 clientEncryption0
clientEncryptionOpts:
keyVaultNamespace: keyvault.datakeys
kmsProviders:
aws: {}

tests:
- description: ""
operations: []
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"description": "clientEncryptionOpts-keyVaultClient-type",
"schemaVersion": "1.8",
"createEntities": [
{
"client": {
"id": "client0"
}
},
{
"clientEncryption": {
"id": "clientEncryption0",
"clientEncryptionOpts": {
"keyVaultClient": 0,
"keyVaultNamespace": "keyvault.datakeys",
"kmsProviders": {
"aws": {}
}
}
}
}
],
"tests": [
{
"description": "",
"operations": []
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
description: clientEncryptionOpts-keyVaultClient-type

schemaVersion: "1.8"

createEntities:
- client:
id: &client0 client0
- clientEncryption:
id: &clientEncryption0 clientEncryption0
clientEncryptionOpts:
keyVaultClient: 0
keyVaultNamespace: keyvault.datakeys
kmsProviders:
aws: {}

tests:
- description: ""
operations: []
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"description": "clientEncryptionOpts-keyVaultNamespace-required",
"schemaVersion": "1.8",
"createEntities": [
{
"client": {
"id": "client0"
}
},
{
"clientEncryption": {
"id": "clientEncryption0",
"clientEncryptionOpts": {
"keyVaultClient": "client0",
"kmsProviders": {
"aws": {}
}
}
}
}
],
"tests": [
{
"description": "",
"operations": []
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
description: clientEncryptionOpts-keyVaultNamespace-required

schemaVersion: "1.8"

createEntities:
- client:
id: &client0 client0
- clientEncryption:
id: &clientEncryption0 clientEncryption0
clientEncryptionOpts:
keyVaultClient: *client0
kmsProviders:
aws: {}

tests:
- description: ""
operations: []
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"description": "clientEncryptionOpts-keyVaultNamespace-type",
"schemaVersion": "1.8",
"createEntities": [
{
"client": {
"id": "client0"
}
},
{
"clientEncryption": {
"id": "clientEncryption0",
"clientEncryptionOpts": {
"keyVaultClient": "client0",
"keyVaultNamespace": 0,
"kmsProviders": {
"aws": {}
}
}
}
}
],
"tests": [
{
"description": "",
"operations": []
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
description: clientEncryptionOpts-keyVaultNamespace-type

schemaVersion: "1.8"

createEntities:
- client:
id: &client0 client0
- clientEncryption:
id: &clientEncryption0 clientEncryption0
clientEncryptionOpts:
keyVaultClient: *client0
keyVaultNamespace: 0
kmsProviders:
aws: {}

tests:
- description: ""
operations: []
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"description": "clientEncryptionOpts-kmsProviders-additionalProperties",
"schemaVersion": "1.8",
"createEntities": [
{
"client": {
"id": "client0"
}
},
{
"clientEncryption": {
"id": "clientEncryption0",
"clientEncryptionOpts": {
"keyVaultClient": "client0",
"keyVaultNamespace": "keyvault.datakeys",
"kmsProviders": {
"invalid": {}
}
}
}
}
],
"tests": [
{
"description": "",
"operations": []
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
description: clientEncryptionOpts-kmsProviders-additionalProperties

schemaVersion: "1.8"

createEntities:
- client:
id: &client0 client0
- clientEncryption:
id: &clientEncryption0 clientEncryption0
clientEncryptionOpts:
keyVaultClient: *client0
keyVaultNamespace: keyvault.datakeys
kmsProviders:
invalid: {}

tests:
- description: ""
operations: []
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"description": "clientEncryptionOpts-kmsProviders-aws-additionalProperties",
"schemaVersion": "1.8",
"createEntities": [
{
"client": {
"id": "client0"
}
},
{
"clientEncryption": {
"id": "clientEncryption0",
"clientEncryptionOpts": {
"keyVaultClient": "client0",
"keyVaultNamespace": "keyvault.datakeys",
"kmsProviders": {
"aws": {
"invalid": {}
}
}
}
}
}
],
"tests": [
{
"description": "",
"operations": []
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
description: clientEncryptionOpts-kmsProviders-aws-additionalProperties

schemaVersion: "1.8"

createEntities:
- client:
id: &client0 client0
- clientEncryption:
id: &clientEncryption0 clientEncryption0
clientEncryptionOpts:
keyVaultClient: *client0
keyVaultNamespace: keyvault.datakeys
kmsProviders:
aws: { invalid: {} }

tests:
- description: ""
operations: []
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"description": "clientEncryptionOpts-kmsProviders-aws-type",
"schemaVersion": "1.8",
"createEntities": [
{
"client": {
"id": "client0"
}
},
{
"clientEncryption": {
"id": "clientEncryption0",
"clientEncryptionOpts": {
"keyVaultClient": "client0",
"keyVaultNamespace": "keyvault.datakeys",
"kmsProviders": {
"aws": 0
}
}
}
}
],
"tests": [
{
"description": "",
"operations": []
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
description: clientEncryptionOpts-kmsProviders-aws-type

schemaVersion: "1.8"

createEntities:
- client:
id: &client0 client0
- clientEncryption:
id: &clientEncryption0 clientEncryption0
clientEncryptionOpts:
keyVaultClient: *client0
keyVaultNamespace: keyvault.datakeys
kmsProviders:
aws: 0

tests:
- description: ""
operations: []
Loading