@sprucelabs/data-stores 28.1.339 → 28.1.341

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,10 @@
1
1
  import { Database, IndexWithFilter, TestConnect } from '../types/database.types';
2
2
  import { DataStore } from '../types/stores.types';
3
+ declare const methods: readonly ["assertThrowsWithInvalidConnectionString", "assertThrowsWhenCantConnect", "assertThrowsWithBadDatabaseName", "assertEmptyDatabaseReturnsEmptyArray", "assertKnowsIfConnectionClosed", "assertFindOneOnEmptyDatabaseReturnsNull", "assertCanSortDesc", "assertCanSortAsc", "assertCanSortById", "assertCanQueryWithOr", "generateIdDifferentEachTime", "assertInsertingGeneratesId", "assertCanCreateMany", "assertCanLimitResults", "assertCanCreateWithObjectField", "assertCanCountOnId", "assertCanCount", "assertThrowsWhenUpdatingRecordNotFound", "assertCanUpdate", "assertCanUpdateMany", "assertCanPushOntoArrayValue", "assertCanUpdateWithObjectField", "assertCanUpdateFieldInObjectFieldWithTargettedWhere", "assertCanSaveAndGetNullAndUndefined", "assertCanUpsertOne", "assertCanUpsertNull", "assertCanPushToArrayOnUpsert", "assertCanSyncUniqueIndexesWithFilterExpression", "assertEmptyDatabaseReturnsEmptyArray", "assertFindOneOnEmptyDatabaseReturnsNull", "assertCanLimitResults", "assertCanLimitResultsToZero", "assertCanFindWithBooleanField", "assertCanQueryByGtLtGteLteNe", "assertCanQueryPathWithDotSyntax", "assertCanReturnOnlySelectFields", "assertCanSearchByRegex", "assertCanFindWithNe", "assertCanFindWithIn", "assertCanDeleteRecord", "assertCanDeleteOne", "assertHasNoUniqueIndexToStart", "assertCanCreateUniqueIndex", "assertCanCreateMultiFieldUniqueIndex", "assertCantCreateUniqueIndexTwice", "assertCanDropUniqueIndex", "assertCanDropCompoundUniqueIndex", "assertCantDropUniqueIndexThatDoesntExist", "assertCantDropIndexWhenNoIndexExists", "assertCantDropCompoundUniqueIndexThatDoesntExist", "assertSyncingUniqueIndexsAddsMissingIndexes", "assertSyncingUniqueIndexsSkipsExistingIndexs", "assertSyncingUniqueIndexesRemovesExtraIndexes", "assertSyncingUniqueIndexesIsRaceProof", "assertSyncingIndexesDoesNotAddAndRemove", "assertUniqueIndexBlocksDuplicates", "assertDuplicateKeyThrowsOnInsert", "assertSettingUniqueIndexViolationThrowsSpruceError", "assertCanCreateUniqueIndexOnNestedField", "assertUpsertWithUniqueIndex", "assertNestedFieldIndexUpdates", "assertHasNoIndexToStart", "assertCanCreateIndex", "assertCantCreateSameIndexTwice", "assertCanCreateMultiFieldIndex", "assertCanDropIndex", "assertCanDropCompoundIndex", "assertCantDropCompoundIndexThatDoesNotExist", "assertSyncIndexesSkipsExisting", "assertSyncIndexesRemovesExtraIndexes", "assertSyncIndexesHandlesRaceConditions", "assertSyncIndexesDoesNotRemoveExisting", "assertDuplicateFieldsWithMultipleUniqueIndexesWorkAsExpected", "assertCanSyncIndexesWithoutPartialThenAgainWithProperlyUpdates"];
4
+ export type DatabaseAssertionName = (typeof methods)[number];
3
5
  declare const databaseAssertUtil: {
4
6
  collectionName: string;
5
- runSuite(connect: TestConnect, tests?: string[]): Promise<void>;
7
+ runSuite(connect: TestConnect, tests?: DatabaseAssertionName[]): Promise<void>;
6
8
  _getIndexesWith_IdFilteredOut(db: Database): Promise<IndexWithFilter[]>;
7
9
  _filterOut_Id(allIndexes: IndexWithFilter[]): IndexWithFilter[];
8
10
  _assertUpdateUpdatedRightNumberOfRecords(db: Database, search: Record<string, any>, updates: Record<string, any>, expectedUpdateCount: number): Promise<void>;
@@ -11,95 +11,95 @@ import { assertOptions } from '@sprucelabs/schema';
11
11
  import { assert } from '@sprucelabs/test-utils';
12
12
  import { errorAssert } from '@sprucelabs/test-utils';
13
13
  import generateId from '../utilities/generateId.js';
14
+ const methods = [
15
+ //connecting
16
+ 'assertThrowsWithInvalidConnectionString',
17
+ 'assertThrowsWhenCantConnect',
18
+ 'assertThrowsWithBadDatabaseName',
19
+ //inserting
20
+ 'assertEmptyDatabaseReturnsEmptyArray',
21
+ 'assertKnowsIfConnectionClosed',
22
+ 'assertFindOneOnEmptyDatabaseReturnsNull',
23
+ 'assertCanSortDesc',
24
+ 'assertCanSortAsc',
25
+ 'assertCanSortById',
26
+ 'assertCanQueryWithOr',
27
+ 'generateIdDifferentEachTime',
28
+ 'assertInsertingGeneratesId',
29
+ 'assertCanCreateMany',
30
+ 'assertCanLimitResults',
31
+ 'assertCanCreateWithObjectField',
32
+ //counting
33
+ 'assertCanCountOnId',
34
+ 'assertCanCount',
35
+ //updating
36
+ 'assertThrowsWhenUpdatingRecordNotFound',
37
+ 'assertCanUpdate',
38
+ 'assertCanUpdateMany',
39
+ 'assertCanPushOntoArrayValue',
40
+ 'assertCanUpdateWithObjectField',
41
+ 'assertCanUpdateFieldInObjectFieldWithTargettedWhere',
42
+ 'assertCanSaveAndGetNullAndUndefined',
43
+ //upserting
44
+ 'assertCanUpsertOne',
45
+ 'assertCanUpsertNull',
46
+ 'assertCanPushToArrayOnUpsert',
47
+ 'assertCanSyncUniqueIndexesWithFilterExpression',
48
+ //finding
49
+ 'assertEmptyDatabaseReturnsEmptyArray',
50
+ 'assertFindOneOnEmptyDatabaseReturnsNull',
51
+ 'assertCanLimitResults',
52
+ 'assertCanLimitResultsToZero',
53
+ 'assertCanFindWithBooleanField',
54
+ 'assertCanQueryByGtLtGteLteNe',
55
+ 'assertCanQueryPathWithDotSyntax',
56
+ 'assertCanReturnOnlySelectFields',
57
+ 'assertCanSearchByRegex',
58
+ 'assertCanFindWithNe',
59
+ 'assertCanFindWithIn',
60
+ //deleting
61
+ 'assertCanDeleteRecord',
62
+ 'assertCanDeleteOne',
63
+ //indexing
64
+ 'assertHasNoUniqueIndexToStart',
65
+ 'assertCanCreateUniqueIndex',
66
+ 'assertCanCreateMultiFieldUniqueIndex',
67
+ 'assertCantCreateUniqueIndexTwice',
68
+ 'assertCanDropUniqueIndex',
69
+ 'assertCanDropCompoundUniqueIndex',
70
+ 'assertCantDropUniqueIndexThatDoesntExist',
71
+ 'assertCantDropIndexWhenNoIndexExists',
72
+ 'assertCantDropCompoundUniqueIndexThatDoesntExist',
73
+ 'assertSyncingUniqueIndexsAddsMissingIndexes',
74
+ 'assertSyncingUniqueIndexsSkipsExistingIndexs',
75
+ 'assertSyncingUniqueIndexesRemovesExtraIndexes',
76
+ 'assertSyncingUniqueIndexesIsRaceProof',
77
+ 'assertSyncingIndexesDoesNotAddAndRemove',
78
+ 'assertUniqueIndexBlocksDuplicates',
79
+ 'assertDuplicateKeyThrowsOnInsert',
80
+ 'assertSettingUniqueIndexViolationThrowsSpruceError',
81
+ 'assertCanCreateUniqueIndexOnNestedField',
82
+ 'assertUpsertWithUniqueIndex',
83
+ 'assertNestedFieldIndexUpdates',
84
+ 'assertHasNoIndexToStart',
85
+ 'assertCanCreateIndex',
86
+ 'assertCantCreateSameIndexTwice',
87
+ 'assertCanCreateMultiFieldIndex',
88
+ 'assertCanDropIndex',
89
+ 'assertCanDropCompoundIndex',
90
+ 'assertCantDropCompoundIndexThatDoesNotExist',
91
+ 'assertSyncIndexesSkipsExisting',
92
+ 'assertSyncIndexesRemovesExtraIndexes',
93
+ 'assertSyncIndexesHandlesRaceConditions',
94
+ 'assertSyncIndexesDoesNotRemoveExisting',
95
+ 'assertDuplicateFieldsWithMultipleUniqueIndexesWorkAsExpected',
96
+ 'assertCanSyncIndexesWithoutPartialThenAgainWithProperlyUpdates',
97
+ ];
14
98
  const databaseAssertUtil = {
15
99
  collectionName: 'test_collection',
16
100
  runSuite(connect, tests) {
17
101
  return __awaiter(this, void 0, void 0, function* () {
18
102
  assertOptions({ connect }, ['connect']);
19
- const methods = [
20
- //connecting
21
- 'assertThrowsWithInvalidConnectionString',
22
- 'assertThrowsWhenCantConnect',
23
- 'assertThrowsWithBadDatabaseName',
24
- //inserting
25
- 'assertEmptyDatabaseReturnsEmptyArray',
26
- 'assertKnowsIfConnectionClosed',
27
- 'assertFindOneOnEmptyDatabaseReturnsNull',
28
- 'assertCanSortDesc',
29
- 'assertCanSortAsc',
30
- 'assertCanSortById',
31
- 'assertCanQueryWithOr',
32
- 'generateIdDifferentEachTime',
33
- 'assertInsertingGeneratesId',
34
- 'assertCanCreateMany',
35
- 'assertCanLimitResults',
36
- 'assertCanCreateWithObjectField',
37
- //counting
38
- 'assertCanCountOnId',
39
- 'assertCanCount',
40
- //updating
41
- 'assertThrowsWhenUpdatingRecordNotFound',
42
- 'assertCanUpdate',
43
- 'assertCanUpdateMany',
44
- 'assertCanPushOntoArrayValue',
45
- 'assertCanUpdateWithObjectField',
46
- 'assertCanUpdateFieldInObjectFieldWithTargettedWhere',
47
- 'assertCanSaveAndGetNullAndUndefined',
48
- //upserting
49
- 'assertCanUpsertOne',
50
- 'assertCanUpsertNull',
51
- 'assertCanPushToArrayOnUpsert',
52
- 'assertCanSyncUniqueIndexesWithFilterExpression',
53
- //finding
54
- 'assertEmptyDatabaseReturnsEmptyArray',
55
- 'assertFindOneOnEmptyDatabaseReturnsNull',
56
- 'assertCanLimitResults',
57
- 'assertCanLimitResultsToZero',
58
- 'assertCanFindWithBooleanField',
59
- 'assertCanQueryByGtLtGteLteNe',
60
- 'assertCanQueryPathWithDotSyntax',
61
- 'assertCanReturnOnlySelectFields',
62
- 'assertCanSearchByRegex',
63
- 'assertCanFindWithNe',
64
- 'assertCanFindWithIn',
65
- //deleting
66
- 'assertCanDeleteRecord',
67
- 'assertCanDeleteOne',
68
- //indexing
69
- 'assertHasNoUniqueIndexToStart',
70
- 'assertCanCreateUniqueIndex',
71
- 'assertCanCreateMultiFieldUniqueIndex',
72
- 'assertCantCreateUniqueIndexTwice',
73
- 'assertCanDropUniqueIndex',
74
- 'assertCanDropCompoundUniqueIndex',
75
- 'assertCantDropUniqueIndexThatDoesntExist',
76
- 'assertCantDropIndexWhenNoIndexExists',
77
- 'assertCantDropCompoundUniqueIndexThatDoesntExist',
78
- 'assertSyncingUniqueIndexsAddsMissingIndexes',
79
- 'assertSyncingUniqueIndexsSkipsExistingIndexs',
80
- 'assertSyncingUniqueIndexesRemovesExtraIndexes',
81
- 'assertSyncingUniqueIndexesIsRaceProof',
82
- 'assertSyncingIndexesDoesNotAddAndRemove',
83
- 'assertUniqueIndexBlocksDuplicates',
84
- 'assertDuplicateKeyThrowsOnInsert',
85
- 'assertSettingUniqueIndexViolationThrowsSpruceError',
86
- 'assertCanCreateUniqueIndexOnNestedField',
87
- 'assertUpsertWithUniqueIndex',
88
- 'assertNestedFieldIndexUpdates',
89
- 'assertHasNoIndexToStart',
90
- 'assertCanCreateIndex',
91
- 'assertCantCreateSameIndexTwice',
92
- 'assertCanCreateMultiFieldIndex',
93
- 'assertCanDropIndex',
94
- 'assertCanDropCompoundIndex',
95
- 'assertCantDropCompoundIndexThatDoesNotExist',
96
- 'assertSyncIndexesSkipsExisting',
97
- 'assertSyncIndexesRemovesExtraIndexes',
98
- 'assertSyncIndexesHandlesRaceConditions',
99
- 'assertSyncIndexesDoesNotRemoveExisting',
100
- 'assertDuplicateFieldsWithMultipleUniqueIndexesWorkAsExpected',
101
- 'assertCanSyncIndexesWithoutPartialThenAgainWithProperlyUpdates',
102
- ];
103
103
  const db = yield connectToDabatase(connect);
104
104
  yield db.dropDatabase();
105
105
  yield this.shutdown(db);
@@ -805,7 +805,7 @@ const databaseAssertUtil = {
805
805
  ['someField'],
806
806
  ]);
807
807
  indexes = yield db.getUniqueIndexes(this.collectionName);
808
- assert.isLength(indexes, 2, 'There should still be 2 indexes after syncing.');
808
+ assert.isLength(indexes, 2, 'There should still be 2 indexes after this syncUniqueIndexs(). First sync was a single field unique index, second sync was two indexes, but one was already there. So one should have been ignored, one should have been added.');
809
809
  yield this.shutdown(db);
810
810
  });
811
811
  },
@@ -1,8 +1,10 @@
1
1
  import { Database, IndexWithFilter, TestConnect } from '../types/database.types';
2
2
  import { DataStore } from '../types/stores.types';
3
+ declare const methods: readonly ["assertThrowsWithInvalidConnectionString", "assertThrowsWhenCantConnect", "assertThrowsWithBadDatabaseName", "assertEmptyDatabaseReturnsEmptyArray", "assertKnowsIfConnectionClosed", "assertFindOneOnEmptyDatabaseReturnsNull", "assertCanSortDesc", "assertCanSortAsc", "assertCanSortById", "assertCanQueryWithOr", "generateIdDifferentEachTime", "assertInsertingGeneratesId", "assertCanCreateMany", "assertCanLimitResults", "assertCanCreateWithObjectField", "assertCanCountOnId", "assertCanCount", "assertThrowsWhenUpdatingRecordNotFound", "assertCanUpdate", "assertCanUpdateMany", "assertCanPushOntoArrayValue", "assertCanUpdateWithObjectField", "assertCanUpdateFieldInObjectFieldWithTargettedWhere", "assertCanSaveAndGetNullAndUndefined", "assertCanUpsertOne", "assertCanUpsertNull", "assertCanPushToArrayOnUpsert", "assertCanSyncUniqueIndexesWithFilterExpression", "assertEmptyDatabaseReturnsEmptyArray", "assertFindOneOnEmptyDatabaseReturnsNull", "assertCanLimitResults", "assertCanLimitResultsToZero", "assertCanFindWithBooleanField", "assertCanQueryByGtLtGteLteNe", "assertCanQueryPathWithDotSyntax", "assertCanReturnOnlySelectFields", "assertCanSearchByRegex", "assertCanFindWithNe", "assertCanFindWithIn", "assertCanDeleteRecord", "assertCanDeleteOne", "assertHasNoUniqueIndexToStart", "assertCanCreateUniqueIndex", "assertCanCreateMultiFieldUniqueIndex", "assertCantCreateUniqueIndexTwice", "assertCanDropUniqueIndex", "assertCanDropCompoundUniqueIndex", "assertCantDropUniqueIndexThatDoesntExist", "assertCantDropIndexWhenNoIndexExists", "assertCantDropCompoundUniqueIndexThatDoesntExist", "assertSyncingUniqueIndexsAddsMissingIndexes", "assertSyncingUniqueIndexsSkipsExistingIndexs", "assertSyncingUniqueIndexesRemovesExtraIndexes", "assertSyncingUniqueIndexesIsRaceProof", "assertSyncingIndexesDoesNotAddAndRemove", "assertUniqueIndexBlocksDuplicates", "assertDuplicateKeyThrowsOnInsert", "assertSettingUniqueIndexViolationThrowsSpruceError", "assertCanCreateUniqueIndexOnNestedField", "assertUpsertWithUniqueIndex", "assertNestedFieldIndexUpdates", "assertHasNoIndexToStart", "assertCanCreateIndex", "assertCantCreateSameIndexTwice", "assertCanCreateMultiFieldIndex", "assertCanDropIndex", "assertCanDropCompoundIndex", "assertCantDropCompoundIndexThatDoesNotExist", "assertSyncIndexesSkipsExisting", "assertSyncIndexesRemovesExtraIndexes", "assertSyncIndexesHandlesRaceConditions", "assertSyncIndexesDoesNotRemoveExisting", "assertDuplicateFieldsWithMultipleUniqueIndexesWorkAsExpected", "assertCanSyncIndexesWithoutPartialThenAgainWithProperlyUpdates"];
4
+ export type DatabaseAssertionName = (typeof methods)[number];
3
5
  declare const databaseAssertUtil: {
4
6
  collectionName: string;
5
- runSuite(connect: TestConnect, tests?: string[]): Promise<void>;
7
+ runSuite(connect: TestConnect, tests?: DatabaseAssertionName[]): Promise<void>;
6
8
  _getIndexesWith_IdFilteredOut(db: Database): Promise<IndexWithFilter[]>;
7
9
  _filterOut_Id(allIndexes: IndexWithFilter[]): IndexWithFilter[];
8
10
  _assertUpdateUpdatedRightNumberOfRecords(db: Database, search: Record<string, any>, updates: Record<string, any>, expectedUpdateCount: number): Promise<void>;
@@ -7,94 +7,94 @@ const schema_1 = require("@sprucelabs/schema");
7
7
  const test_utils_1 = require("@sprucelabs/test-utils");
8
8
  const test_utils_2 = require("@sprucelabs/test-utils");
9
9
  const generateId_1 = __importDefault(require("../utilities/generateId"));
10
+ const methods = [
11
+ //connecting
12
+ 'assertThrowsWithInvalidConnectionString',
13
+ 'assertThrowsWhenCantConnect',
14
+ 'assertThrowsWithBadDatabaseName',
15
+ //inserting
16
+ 'assertEmptyDatabaseReturnsEmptyArray',
17
+ 'assertKnowsIfConnectionClosed',
18
+ 'assertFindOneOnEmptyDatabaseReturnsNull',
19
+ 'assertCanSortDesc',
20
+ 'assertCanSortAsc',
21
+ 'assertCanSortById',
22
+ 'assertCanQueryWithOr',
23
+ 'generateIdDifferentEachTime',
24
+ 'assertInsertingGeneratesId',
25
+ 'assertCanCreateMany',
26
+ 'assertCanLimitResults',
27
+ 'assertCanCreateWithObjectField',
28
+ //counting
29
+ 'assertCanCountOnId',
30
+ 'assertCanCount',
31
+ //updating
32
+ 'assertThrowsWhenUpdatingRecordNotFound',
33
+ 'assertCanUpdate',
34
+ 'assertCanUpdateMany',
35
+ 'assertCanPushOntoArrayValue',
36
+ 'assertCanUpdateWithObjectField',
37
+ 'assertCanUpdateFieldInObjectFieldWithTargettedWhere',
38
+ 'assertCanSaveAndGetNullAndUndefined',
39
+ //upserting
40
+ 'assertCanUpsertOne',
41
+ 'assertCanUpsertNull',
42
+ 'assertCanPushToArrayOnUpsert',
43
+ 'assertCanSyncUniqueIndexesWithFilterExpression',
44
+ //finding
45
+ 'assertEmptyDatabaseReturnsEmptyArray',
46
+ 'assertFindOneOnEmptyDatabaseReturnsNull',
47
+ 'assertCanLimitResults',
48
+ 'assertCanLimitResultsToZero',
49
+ 'assertCanFindWithBooleanField',
50
+ 'assertCanQueryByGtLtGteLteNe',
51
+ 'assertCanQueryPathWithDotSyntax',
52
+ 'assertCanReturnOnlySelectFields',
53
+ 'assertCanSearchByRegex',
54
+ 'assertCanFindWithNe',
55
+ 'assertCanFindWithIn',
56
+ //deleting
57
+ 'assertCanDeleteRecord',
58
+ 'assertCanDeleteOne',
59
+ //indexing
60
+ 'assertHasNoUniqueIndexToStart',
61
+ 'assertCanCreateUniqueIndex',
62
+ 'assertCanCreateMultiFieldUniqueIndex',
63
+ 'assertCantCreateUniqueIndexTwice',
64
+ 'assertCanDropUniqueIndex',
65
+ 'assertCanDropCompoundUniqueIndex',
66
+ 'assertCantDropUniqueIndexThatDoesntExist',
67
+ 'assertCantDropIndexWhenNoIndexExists',
68
+ 'assertCantDropCompoundUniqueIndexThatDoesntExist',
69
+ 'assertSyncingUniqueIndexsAddsMissingIndexes',
70
+ 'assertSyncingUniqueIndexsSkipsExistingIndexs',
71
+ 'assertSyncingUniqueIndexesRemovesExtraIndexes',
72
+ 'assertSyncingUniqueIndexesIsRaceProof',
73
+ 'assertSyncingIndexesDoesNotAddAndRemove',
74
+ 'assertUniqueIndexBlocksDuplicates',
75
+ 'assertDuplicateKeyThrowsOnInsert',
76
+ 'assertSettingUniqueIndexViolationThrowsSpruceError',
77
+ 'assertCanCreateUniqueIndexOnNestedField',
78
+ 'assertUpsertWithUniqueIndex',
79
+ 'assertNestedFieldIndexUpdates',
80
+ 'assertHasNoIndexToStart',
81
+ 'assertCanCreateIndex',
82
+ 'assertCantCreateSameIndexTwice',
83
+ 'assertCanCreateMultiFieldIndex',
84
+ 'assertCanDropIndex',
85
+ 'assertCanDropCompoundIndex',
86
+ 'assertCantDropCompoundIndexThatDoesNotExist',
87
+ 'assertSyncIndexesSkipsExisting',
88
+ 'assertSyncIndexesRemovesExtraIndexes',
89
+ 'assertSyncIndexesHandlesRaceConditions',
90
+ 'assertSyncIndexesDoesNotRemoveExisting',
91
+ 'assertDuplicateFieldsWithMultipleUniqueIndexesWorkAsExpected',
92
+ 'assertCanSyncIndexesWithoutPartialThenAgainWithProperlyUpdates',
93
+ ];
10
94
  const databaseAssertUtil = {
11
95
  collectionName: 'test_collection',
12
96
  async runSuite(connect, tests) {
13
97
  (0, schema_1.assertOptions)({ connect }, ['connect']);
14
- const methods = [
15
- //connecting
16
- 'assertThrowsWithInvalidConnectionString',
17
- 'assertThrowsWhenCantConnect',
18
- 'assertThrowsWithBadDatabaseName',
19
- //inserting
20
- 'assertEmptyDatabaseReturnsEmptyArray',
21
- 'assertKnowsIfConnectionClosed',
22
- 'assertFindOneOnEmptyDatabaseReturnsNull',
23
- 'assertCanSortDesc',
24
- 'assertCanSortAsc',
25
- 'assertCanSortById',
26
- 'assertCanQueryWithOr',
27
- 'generateIdDifferentEachTime',
28
- 'assertInsertingGeneratesId',
29
- 'assertCanCreateMany',
30
- 'assertCanLimitResults',
31
- 'assertCanCreateWithObjectField',
32
- //counting
33
- 'assertCanCountOnId',
34
- 'assertCanCount',
35
- //updating
36
- 'assertThrowsWhenUpdatingRecordNotFound',
37
- 'assertCanUpdate',
38
- 'assertCanUpdateMany',
39
- 'assertCanPushOntoArrayValue',
40
- 'assertCanUpdateWithObjectField',
41
- 'assertCanUpdateFieldInObjectFieldWithTargettedWhere',
42
- 'assertCanSaveAndGetNullAndUndefined',
43
- //upserting
44
- 'assertCanUpsertOne',
45
- 'assertCanUpsertNull',
46
- 'assertCanPushToArrayOnUpsert',
47
- 'assertCanSyncUniqueIndexesWithFilterExpression',
48
- //finding
49
- 'assertEmptyDatabaseReturnsEmptyArray',
50
- 'assertFindOneOnEmptyDatabaseReturnsNull',
51
- 'assertCanLimitResults',
52
- 'assertCanLimitResultsToZero',
53
- 'assertCanFindWithBooleanField',
54
- 'assertCanQueryByGtLtGteLteNe',
55
- 'assertCanQueryPathWithDotSyntax',
56
- 'assertCanReturnOnlySelectFields',
57
- 'assertCanSearchByRegex',
58
- 'assertCanFindWithNe',
59
- 'assertCanFindWithIn',
60
- //deleting
61
- 'assertCanDeleteRecord',
62
- 'assertCanDeleteOne',
63
- //indexing
64
- 'assertHasNoUniqueIndexToStart',
65
- 'assertCanCreateUniqueIndex',
66
- 'assertCanCreateMultiFieldUniqueIndex',
67
- 'assertCantCreateUniqueIndexTwice',
68
- 'assertCanDropUniqueIndex',
69
- 'assertCanDropCompoundUniqueIndex',
70
- 'assertCantDropUniqueIndexThatDoesntExist',
71
- 'assertCantDropIndexWhenNoIndexExists',
72
- 'assertCantDropCompoundUniqueIndexThatDoesntExist',
73
- 'assertSyncingUniqueIndexsAddsMissingIndexes',
74
- 'assertSyncingUniqueIndexsSkipsExistingIndexs',
75
- 'assertSyncingUniqueIndexesRemovesExtraIndexes',
76
- 'assertSyncingUniqueIndexesIsRaceProof',
77
- 'assertSyncingIndexesDoesNotAddAndRemove',
78
- 'assertUniqueIndexBlocksDuplicates',
79
- 'assertDuplicateKeyThrowsOnInsert',
80
- 'assertSettingUniqueIndexViolationThrowsSpruceError',
81
- 'assertCanCreateUniqueIndexOnNestedField',
82
- 'assertUpsertWithUniqueIndex',
83
- 'assertNestedFieldIndexUpdates',
84
- 'assertHasNoIndexToStart',
85
- 'assertCanCreateIndex',
86
- 'assertCantCreateSameIndexTwice',
87
- 'assertCanCreateMultiFieldIndex',
88
- 'assertCanDropIndex',
89
- 'assertCanDropCompoundIndex',
90
- 'assertCantDropCompoundIndexThatDoesNotExist',
91
- 'assertSyncIndexesSkipsExisting',
92
- 'assertSyncIndexesRemovesExtraIndexes',
93
- 'assertSyncIndexesHandlesRaceConditions',
94
- 'assertSyncIndexesDoesNotRemoveExisting',
95
- 'assertDuplicateFieldsWithMultipleUniqueIndexesWorkAsExpected',
96
- 'assertCanSyncIndexesWithoutPartialThenAgainWithProperlyUpdates',
97
- ];
98
98
  const db = await connectToDabatase(connect);
99
99
  await db.dropDatabase();
100
100
  await this.shutdown(db);
@@ -734,7 +734,7 @@ const databaseAssertUtil = {
734
734
  ['someField'],
735
735
  ]);
736
736
  indexes = await db.getUniqueIndexes(this.collectionName);
737
- test_utils_1.assert.isLength(indexes, 2, 'There should still be 2 indexes after syncing.');
737
+ test_utils_1.assert.isLength(indexes, 2, 'There should still be 2 indexes after this syncUniqueIndexs(). First sync was a single field unique index, second sync was two indexes, but one was already there. So one should have been ignored, one should have been added.');
738
738
  await this.shutdown(db);
739
739
  },
740
740
  async assertCantDropCompoundUniqueIndexThatDoesntExist(connect) {
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "28.1.339",
6
+ "version": "28.1.341",
7
7
  "files": [
8
8
  "build/**/*",
9
9
  "!build/__tests__",