|
1 | 1 | const expect = require('chai').expect; |
2 | 2 | const fixtures = require('./fixtures'); |
3 | | -const isAtlas = require('../.').isAtlas; |
4 | | -const isAtlasStream = require('../.').isAtlasStream; |
5 | | -const getDataLake = require('../.').getDataLake; |
6 | | -const isLocalhost = require('../.').isLocalhost; |
7 | | -const isDigitalOcean = require('../.').isDigitalOcean; |
8 | | -const getBuildEnv = require('../.').getBuildEnv; |
9 | | -const isEnterprise = require('../.').isEnterprise; |
10 | | -const getGenuineMongoDB = require('../.').getGenuineMongoDB; |
| 3 | +const { |
| 4 | + isAtlas, |
| 5 | + isAtlasStream, |
| 6 | + getDataLake, |
| 7 | + isLocalhost, |
| 8 | + isLocalAtlas, |
| 9 | + isDigitalOcean, |
| 10 | + getBuildEnv, |
| 11 | + isEnterprise, |
| 12 | + getGenuineMongoDB, |
| 13 | +} = require('..'); |
11 | 14 |
|
12 | 15 | describe('mongodb-build-info', () => { |
13 | 16 | context('isDataLake', () => { |
@@ -95,6 +98,40 @@ describe('mongodb-build-info', () => { |
95 | 98 | }); |
96 | 99 | }); |
97 | 100 |
|
| 101 | + context('isLocalAtlas', () => { |
| 102 | + it('calls counts function with expected args', (done) => { |
| 103 | + isLocalAtlas((db, coll, query) => { |
| 104 | + expect(db).to.equal('admin'); |
| 105 | + expect(coll).to.equal('atlascli'); |
| 106 | + expect(query).to.deep.equal({ |
| 107 | + managedClusterType: 'atlasCliLocalDevCluster' |
| 108 | + }); |
| 109 | + done(); |
| 110 | + }); |
| 111 | + }); |
| 112 | + it('returns false when count resolves to 0', (done) => { |
| 113 | + isLocalAtlas(() => Promise.resolve(0)) |
| 114 | + .then(res => { |
| 115 | + expect(res).to.be.false; |
| 116 | + done(); |
| 117 | + }); |
| 118 | + }); |
| 119 | + it('returns false when count throws', (done) => { |
| 120 | + isLocalAtlas(() => Promise.reject('No such db')) |
| 121 | + .then(res => { |
| 122 | + expect(res).to.be.false; |
| 123 | + done(); |
| 124 | + }); |
| 125 | + }); |
| 126 | + it('returns true when count resolves to 1', (done) => { |
| 127 | + isLocalAtlas(() => Promise.resolve(1)) |
| 128 | + .then(res => { |
| 129 | + expect(res).to.be.true; |
| 130 | + done(); |
| 131 | + }); |
| 132 | + }); |
| 133 | + }); |
| 134 | + |
98 | 135 | context('isAtlasStream', () => { |
99 | 136 | it('reports on atlas', () => { |
100 | 137 | expect(isAtlasStream('mongodb://admin:catscatscats@atlas-stream-64ba1372b2a9f1545031f34d-gkumd.virginia-usa.a.query.mongodb.net/')).to.be.true; |
|
0 commit comments