Skip to content

Commit 5a0d706

Browse files
authored
chore: reintroduce nodejs fermium testing (#2775)
1 parent af49ba3 commit 5a0d706

File tree

3 files changed

+87
-44
lines changed

3 files changed

+87
-44
lines changed

.evergreen/config.yml

+51-12
Original file line numberDiff line numberDiff line change
@@ -1430,11 +1430,11 @@ tasks:
14301430
TOPOLOGY: server
14311431
- func: run custom csfle tests
14321432
buildvariants:
1433-
- name: macos-1014-erbium
1434-
display_name: macOS 10.14 Node Erbium
1433+
- name: macos-1014-fermium
1434+
display_name: macOS 10.14 Node Fermium
14351435
run_on: macos-1014
14361436
expansions:
1437-
NODE_LTS_NAME: erbium
1437+
NODE_LTS_NAME: fermium
14381438
tasks: &ref_0
14391439
- test-latest-server
14401440
- test-latest-replica_set
@@ -1510,6 +1510,12 @@ buildvariants:
15101510
- test-4.4-ocsp-soft-fail
15111511
- test-4.4-ocsp-malicious-invalid-cert-mustStaple-server-does-not-staple
15121512
- test-4.4-ocsp-malicious-no-responder-mustStaple-server-does-not-staple
1513+
- name: macos-1014-erbium
1514+
display_name: macOS 10.14 Node Erbium
1515+
run_on: macos-1014
1516+
expansions:
1517+
NODE_LTS_NAME: erbium
1518+
tasks: *ref_0
15131519
- name: macos-1014-dubnium
15141520
display_name: macOS 10.14 Node Dubnium
15151521
run_on: macos-1014
@@ -1534,11 +1540,11 @@ buildvariants:
15341540
expansions:
15351541
NODE_LTS_NAME: argon
15361542
tasks: *ref_0
1537-
- name: rhel70-erbium
1538-
display_name: RHEL 7.0 Node Erbium
1543+
- name: rhel70-fermium
1544+
display_name: RHEL 7.0 Node Fermium
15391545
run_on: rhel70-small
15401546
expansions:
1541-
NODE_LTS_NAME: erbium
1547+
NODE_LTS_NAME: fermium
15421548
tasks: &ref_1
15431549
- test-latest-server
15441550
- test-latest-replica_set
@@ -1614,6 +1620,12 @@ buildvariants:
16141620
- test-4.4-ocsp-soft-fail
16151621
- test-4.4-ocsp-malicious-invalid-cert-mustStaple-server-does-not-staple
16161622
- test-4.4-ocsp-malicious-no-responder-mustStaple-server-does-not-staple
1623+
- name: rhel70-erbium
1624+
display_name: RHEL 7.0 Node Erbium
1625+
run_on: rhel70-small
1626+
expansions:
1627+
NODE_LTS_NAME: erbium
1628+
tasks: *ref_1
16171629
- name: rhel70-dubnium
16181630
display_name: RHEL 7.0 Node Dubnium
16191631
run_on: rhel70-small
@@ -1638,11 +1650,11 @@ buildvariants:
16381650
expansions:
16391651
NODE_LTS_NAME: argon
16401652
tasks: *ref_1
1641-
- name: ubuntu-14.04-erbium
1642-
display_name: Ubuntu 14.04 Node Erbium
1653+
- name: ubuntu-14.04-fermium
1654+
display_name: Ubuntu 14.04 Node Fermium
16431655
run_on: ubuntu1404-test
16441656
expansions:
1645-
NODE_LTS_NAME: erbium
1657+
NODE_LTS_NAME: fermium
16461658
tasks: &ref_2
16471659
- test-4.0-server
16481660
- test-4.0-replica_set
@@ -1684,6 +1696,12 @@ buildvariants:
16841696
- test-auth-kerberos-legacy
16851697
- test-auth-kerberos-unified
16861698
- test-auth-ldap
1699+
- name: ubuntu-14.04-erbium
1700+
display_name: Ubuntu 14.04 Node Erbium
1701+
run_on: ubuntu1404-test
1702+
expansions:
1703+
NODE_LTS_NAME: erbium
1704+
tasks: *ref_2
16871705
- name: ubuntu-14.04-dubnium
16881706
display_name: Ubuntu 14.04 Node Dubnium
16891707
run_on: ubuntu1404-test
@@ -1708,11 +1726,11 @@ buildvariants:
17081726
expansions:
17091727
NODE_LTS_NAME: argon
17101728
tasks: *ref_2
1711-
- name: ubuntu-18.04-erbium
1712-
display_name: Ubuntu 18.04 Node Erbium
1729+
- name: ubuntu-18.04-fermium
1730+
display_name: Ubuntu 18.04 Node Fermium
17131731
run_on: ubuntu1804-test
17141732
expansions:
1715-
NODE_LTS_NAME: erbium
1733+
NODE_LTS_NAME: fermium
17161734
CLIENT_ENCRYPTION: true
17171735
tasks: &ref_3
17181736
- test-latest-server
@@ -1777,6 +1795,13 @@ buildvariants:
17771795
- test-4.4-ocsp-soft-fail
17781796
- test-4.4-ocsp-malicious-invalid-cert-mustStaple-server-does-not-staple
17791797
- test-4.4-ocsp-malicious-no-responder-mustStaple-server-does-not-staple
1798+
- name: ubuntu-18.04-erbium
1799+
display_name: Ubuntu 18.04 Node Erbium
1800+
run_on: ubuntu1804-test
1801+
expansions:
1802+
NODE_LTS_NAME: erbium
1803+
CLIENT_ENCRYPTION: true
1804+
tasks: *ref_3
17801805
- name: ubuntu-18.04-dubnium
17811806
display_name: Ubuntu 18.04 Node Dubnium
17821807
run_on: ubuntu1804-test
@@ -1869,6 +1894,13 @@ buildvariants:
18691894
NODE_LTS_NAME: argon
18701895
MSVS_VERSION: 2013
18711896
tasks: *ref_4
1897+
- name: windows-64-vs2015-fermium
1898+
display_name: Windows (VS2015) Node Fermium
1899+
run_on: windows-64-vs2015-large
1900+
expansions:
1901+
NODE_LTS_NAME: fermium
1902+
MSVS_VERSION: 2015
1903+
tasks: *ref_4
18721904
- name: windows-64-vs2015-erbium
18731905
display_name: Windows (VS2015) Node Erbium
18741906
run_on: windows-64-vs2015-large
@@ -1904,6 +1936,13 @@ buildvariants:
19041936
NODE_LTS_NAME: argon
19051937
MSVS_VERSION: 2015
19061938
tasks: *ref_4
1939+
- name: windows-64-vs2017-fermium
1940+
display_name: Windows (VS2017) Node Fermium
1941+
run_on: windows-64-vs2017-large
1942+
expansions:
1943+
NODE_LTS_NAME: fermium
1944+
MSVS_VERSION: 2017
1945+
tasks: *ref_4
19071946
- name: windows-64-vs2017-erbium
19081947
display_name: Windows (VS2017) Node Erbium
19091948
run_on: windows-64-vs2017-large

.evergreen/generate_evergreen_tasks.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ const MONGODB_VERSIONS = ['latest', '4.4', '4.2', '4.0', '3.6', '3.4', '3.2', '3
99
const AWS_AUTH_VERSIONS = ['latest', '4.4'];
1010
const OCSP_VERSIONS = ['latest', '4.4'];
1111
const TLS_VERSIONS = ['latest', '4.2']; // also test on 4.2 because 4.4+ currently skipped on windows
12-
const NODE_VERSIONS = ['erbium', 'dubnium', 'carbon', 'boron', 'argon'];
12+
const NODE_VERSIONS = ['fermium', 'erbium', 'dubnium', 'carbon', 'boron', 'argon'];
1313
const TOPOLOGIES = ['server', 'replica_set', 'sharded_cluster'].concat([
1414
'server-unified',
1515
'replica_set-unified',

test/functional/cursor.test.js

+35-31
Original file line numberDiff line numberDiff line change
@@ -4534,45 +4534,49 @@ describe('Cursor', function() {
45344534
});
45354535
});
45364536

4537-
it('should not consume first document on hasNext when streaming', function(done) {
4538-
const configuration = this.configuration;
4539-
const client = configuration.newClient({ w: 1 }, { poolSize: 1, auto_reconnect: false });
4540-
4541-
client.connect(err => {
4542-
expect(err).to.not.exist;
4543-
this.defer(() => client.close());
4537+
it('should not consume first document on hasNext when streaming', {
4538+
// FIXME: NODE-3184
4539+
metadata: { requires: { node: '<14' } },
4540+
test(done) {
4541+
const configuration = this.configuration;
4542+
const client = configuration.newClient({ w: 1 }, { poolSize: 1, auto_reconnect: false });
45444543

4545-
const collection = client.db().collection('documents');
4546-
collection.drop(() => {
4547-
const docs = [{ a: 1 }, { a: 2 }, { a: 3 }];
4548-
collection.insertMany(docs, err => {
4549-
expect(err).to.not.exist;
4544+
client.connect(err => {
4545+
expect(err).to.not.exist;
4546+
this.defer(() => client.close());
45504547

4551-
const cursor = collection.find({}, { sort: { a: 1 } });
4552-
cursor.hasNext((err, hasNext) => {
4548+
const collection = client.db().collection('documents');
4549+
collection.drop(() => {
4550+
const docs = [{ a: 1 }, { a: 2 }, { a: 3 }];
4551+
collection.insertMany(docs, err => {
45534552
expect(err).to.not.exist;
4554-
expect(hasNext).to.be.true;
4555-
4556-
const collected = [];
4557-
const stream = new Writable({
4558-
objectMode: true,
4559-
write: (chunk, encoding, next) => {
4560-
collected.push(chunk);
4561-
next(undefined, chunk);
4562-
}
4563-
});
45644553

4565-
cursor.on('close', () => {
4566-
expect(collected).to.have.length(3);
4567-
expect(collected).to.eql(docs);
4568-
done();
4569-
});
4554+
const cursor = collection.find({}, { sort: { a: 1 } });
4555+
cursor.hasNext((err, hasNext) => {
4556+
expect(err).to.not.exist;
4557+
expect(hasNext).to.be.true;
45704558

4571-
cursor.pipe(stream);
4559+
const collected = [];
4560+
const stream = new Writable({
4561+
objectMode: true,
4562+
write: (chunk, encoding, next) => {
4563+
collected.push(chunk);
4564+
next(undefined, chunk);
4565+
}
4566+
});
4567+
4568+
cursor.on('close', () => {
4569+
expect(collected).to.have.length(3);
4570+
expect(collected).to.eql(docs);
4571+
done();
4572+
});
4573+
4574+
cursor.pipe(stream);
4575+
});
45724576
});
45734577
});
45744578
});
4575-
});
4579+
}
45764580
});
45774581

45784582
it('should correctly iterate all documents with a limit set', function(done) {

0 commit comments

Comments
 (0)