Skip to content

Commit abff96e

Browse files
sync spec tests for collMod and create collection pre/post images
- changes included in this PR - mongodb/specifications#1206 - also skips the modifyCollection helper test because node doesn't implement a modify collection helper
1 parent 7e928da commit abff96e

File tree

5 files changed

+312
-2
lines changed

5 files changed

+312
-2
lines changed

test/integration/collection-management/collection_management.spec.test.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@
33
const { loadSpecTests } = require('../../spec/index');
44
const { runUnifiedSuite } = require('../../tools/unified-spec-runner/runner');
55

6-
describe('Collection management unified spec tests', function () {
7-
runUnifiedSuite(loadSpecTests('collection-management'));
6+
// The Node driver does not have a Collection.modifyCollection helper.
7+
const SKIPPED_TESTS = ['modifyCollection to changeStreamPreAndPostImages enabled'];
8+
9+
describe.only('Collection management unified spec tests', function () {
10+
runUnifiedSuite(loadSpecTests('collection-management'), SKIPPED_TESTS);
811
});
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
{
2+
"description": "createCollection-pre_and_post_images",
3+
"schemaVersion": "1.0",
4+
"runOnRequirements": [
5+
{
6+
"minServerVersion": "6.0"
7+
}
8+
],
9+
"createEntities": [
10+
{
11+
"client": {
12+
"id": "client0",
13+
"observeEvents": [
14+
"commandStartedEvent"
15+
]
16+
}
17+
},
18+
{
19+
"database": {
20+
"id": "database0",
21+
"client": "client0",
22+
"databaseName": "papi-tests"
23+
}
24+
},
25+
{
26+
"collection": {
27+
"id": "collection0",
28+
"database": "database0",
29+
"collectionName": "test"
30+
}
31+
}
32+
],
33+
"tests": [
34+
{
35+
"description": "createCollection with changeStreamPreAndPostImages enabled",
36+
"operations": [
37+
{
38+
"name": "dropCollection",
39+
"object": "database0",
40+
"arguments": {
41+
"collection": "test"
42+
}
43+
},
44+
{
45+
"name": "createCollection",
46+
"object": "database0",
47+
"arguments": {
48+
"collection": "test",
49+
"changeStreamPreAndPostImages": {
50+
"enabled": true
51+
}
52+
}
53+
},
54+
{
55+
"name": "assertCollectionExists",
56+
"object": "testRunner",
57+
"arguments": {
58+
"databaseName": "papi-tests",
59+
"collectionName": "test"
60+
}
61+
}
62+
],
63+
"expectEvents": [
64+
{
65+
"client": "client0",
66+
"events": [
67+
{
68+
"commandStartedEvent": {
69+
"command": {
70+
"drop": "test"
71+
},
72+
"databaseName": "papi-tests"
73+
}
74+
},
75+
{
76+
"commandStartedEvent": {
77+
"command": {
78+
"create": "test",
79+
"changeStreamPreAndPostImages": {
80+
"enabled": true
81+
}
82+
},
83+
"databaseName": "papi-tests"
84+
}
85+
}
86+
]
87+
}
88+
]
89+
}
90+
]
91+
}
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
description: "createCollection-pre_and_post_images"
2+
3+
schemaVersion: "1.0"
4+
5+
runOnRequirements:
6+
- minServerVersion: "6.0"
7+
8+
createEntities:
9+
- client:
10+
id: &client0 client0
11+
observeEvents: [ commandStartedEvent ]
12+
- database:
13+
id: &database0 database0
14+
client: *client0
15+
databaseName: &database0Name papi-tests
16+
- collection:
17+
id: &collection0 collection0
18+
database: *database0
19+
collectionName: &collection0Name test
20+
21+
tests:
22+
- description: "createCollection with changeStreamPreAndPostImages enabled"
23+
operations:
24+
- name: dropCollection
25+
object: *database0
26+
arguments:
27+
collection: *collection0Name
28+
- name: createCollection
29+
object: *database0
30+
arguments:
31+
collection: *collection0Name
32+
changeStreamPreAndPostImages: { enabled: true }
33+
- name: assertCollectionExists
34+
object: testRunner
35+
arguments:
36+
databaseName: *database0Name
37+
collectionName: *collection0Name
38+
expectEvents:
39+
- client: *client0
40+
events:
41+
- commandStartedEvent:
42+
command:
43+
drop: *collection0Name
44+
databaseName: *database0Name
45+
- commandStartedEvent:
46+
command:
47+
create: *collection0Name
48+
changeStreamPreAndPostImages: { enabled: true }
49+
databaseName: *database0Name
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
{
2+
"description": "modifyCollection-pre_and_post_images",
3+
"schemaVersion": "1.0",
4+
"runOnRequirements": [
5+
{
6+
"minServerVersion": "6.0"
7+
}
8+
],
9+
"createEntities": [
10+
{
11+
"client": {
12+
"id": "client0",
13+
"observeEvents": [
14+
"commandStartedEvent"
15+
]
16+
}
17+
},
18+
{
19+
"database": {
20+
"id": "database0",
21+
"client": "client0",
22+
"databaseName": "papi-tests"
23+
}
24+
},
25+
{
26+
"collection": {
27+
"id": "collection0",
28+
"database": "database0",
29+
"collectionName": "test"
30+
}
31+
}
32+
],
33+
"tests": [
34+
{
35+
"description": "modifyCollection to changeStreamPreAndPostImages enabled",
36+
"operations": [
37+
{
38+
"name": "dropCollection",
39+
"object": "database0",
40+
"arguments": {
41+
"collection": "test"
42+
}
43+
},
44+
{
45+
"name": "createCollection",
46+
"object": "database0",
47+
"arguments": {
48+
"collection": "test",
49+
"changeStreamPreAndPostImages": {
50+
"enabled": false
51+
}
52+
}
53+
},
54+
{
55+
"name": "assertCollectionExists",
56+
"object": "testRunner",
57+
"arguments": {
58+
"databaseName": "papi-tests",
59+
"collectionName": "test"
60+
}
61+
},
62+
{
63+
"name": "modifyCollection",
64+
"object": "database0",
65+
"arguments": {
66+
"collection": "test",
67+
"changeStreamPreAndPostImages": {
68+
"enabled": true
69+
}
70+
}
71+
}
72+
],
73+
"expectEvents": [
74+
{
75+
"client": "client0",
76+
"events": [
77+
{
78+
"commandStartedEvent": {
79+
"command": {
80+
"drop": "test"
81+
},
82+
"databaseName": "papi-tests"
83+
}
84+
},
85+
{
86+
"commandStartedEvent": {
87+
"command": {
88+
"create": "test",
89+
"changeStreamPreAndPostImages": {
90+
"enabled": false
91+
}
92+
}
93+
}
94+
},
95+
{
96+
"commandStartedEvent": {
97+
"command": {
98+
"collMod": "test",
99+
"changeStreamPreAndPostImages": {
100+
"enabled": true
101+
}
102+
}
103+
}
104+
}
105+
]
106+
}
107+
]
108+
}
109+
]
110+
}
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
description: "modifyCollection-pre_and_post_images"
2+
3+
schemaVersion: "1.0"
4+
5+
runOnRequirements:
6+
- minServerVersion: "6.0"
7+
8+
createEntities:
9+
- client:
10+
id: &client0 client0
11+
observeEvents: [ commandStartedEvent ]
12+
- database:
13+
id: &database0 database0
14+
client: *client0
15+
databaseName: &database0Name papi-tests
16+
- collection:
17+
id: &collection0 collection0
18+
database: *database0
19+
collectionName: &collection0Name test
20+
21+
tests:
22+
- description: "modifyCollection to changeStreamPreAndPostImages enabled"
23+
operations:
24+
- name: dropCollection
25+
object: *database0
26+
arguments:
27+
collection: *collection0Name
28+
- name: createCollection
29+
object: *database0
30+
arguments:
31+
collection: *collection0Name
32+
changeStreamPreAndPostImages: { enabled: false }
33+
- name: assertCollectionExists
34+
object: testRunner
35+
arguments:
36+
databaseName: *database0Name
37+
collectionName: *collection0Name
38+
- name: modifyCollection
39+
object: *database0
40+
arguments:
41+
collection: *collection0Name
42+
changeStreamPreAndPostImages: { enabled: true }
43+
expectEvents:
44+
- client: *client0
45+
events:
46+
- commandStartedEvent:
47+
command:
48+
drop: *collection0Name
49+
databaseName: *database0Name
50+
- commandStartedEvent:
51+
command:
52+
create: *collection0Name
53+
changeStreamPreAndPostImages: { enabled: false }
54+
- commandStartedEvent:
55+
command:
56+
collMod: *collection0Name
57+
changeStreamPreAndPostImages: { enabled: true }

0 commit comments

Comments
 (0)