@sprucelabs/data-stores 19.3.2 → 20.0.0
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.
- package/build/.spruce/errors/dataStores/indexNotFound.schema.js +6 -0
- package/build/.spruce/errors/errors.types.d.ts +7 -0
- package/build/databases/MongoDatabase.js +10 -6
- package/build/databases/NeDbDatabase.js +6 -2
- package/build/errors/SpruceError.js +3 -0
- package/build/errors/indexNotFound.builder.d.ts +4 -0
- package/build/errors/indexNotFound.builder.js +4 -0
- package/build/esm/.spruce/errors/errors.types.d.ts +7 -0
- package/build/esm/databases/MongoDatabase.js +10 -6
- package/build/esm/databases/NeDbDatabase.js +6 -2
- package/build/esm/errors/SpruceError.js +3 -0
- package/build/esm/errors/indexNotFound.builder.d.ts +4 -0
- package/build/esm/errors/indexNotFound.builder.js +4 -0
- package/build/esm/index.d.ts +1 -0
- package/build/esm/index.js +1 -0
- package/build/esm/tests/databaseAssertUtil.d.ts +74 -67
- package/build/esm/tests/databaseAssertUtil.js +620 -244
- package/build/esm/tests/pluckAssertionMethods.d.ts +1 -1
- package/build/esm/types/database.types.d.ts +6 -0
- package/build/esm/types/query.types.d.ts +5 -4
- package/build/index.d.ts +1 -0
- package/build/index.js +3 -1
- package/build/tests/databaseAssertUtil.d.ts +74 -67
- package/build/tests/databaseAssertUtil.js +599 -243
- package/build/tests/pluckAssertionMethods.d.ts +1 -1
- package/build/types/database.types.d.ts +6 -0
- package/build/types/query.types.d.ts +5 -4
- package/package.json +7 -7
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import databaseAssertUtil from './databaseAssertUtil';
|
|
2
|
-
export default function pluckAssertionMethods(util: typeof databaseAssertUtil): ("collectionName" | "
|
|
2
|
+
export default function pluckAssertionMethods(util: typeof databaseAssertUtil): ("collectionName" | "assertThrowsWithInvalidConnectionString" | "assertThrowsWhenCantConnect" | "assertThrowsWithBadDatabaseName" | "assertEmptyDatabaseReturnsEmptyArray" | "assertKnowsIfConnectionClosed" | "assertFindOneOnEmptyDatabaseReturnsNull" | "assertCanSortDesc" | "assertCanSortAsc" | "assertCanSortById" | "assertCanQueryWithOr" | "generateIdDifferentEachTime" | "assertInsertingGeneratesId" | "assertCanCreateMany" | "assertCanLimitResults" | "assertCanCreateWithObjectField" | "assertCanCountOnId" | "assertCanCount" | "assertThrowsWhenUpdatingRecordNotFound" | "assertCanUpdate" | "assertCanUpdateMany" | "assertCanPushOntoArrayValue" | "canUpdateWithObjectField" | "canUpdateFieldInObjectFieldWithTargettedWhere" | "assertCanSaveAndGetNullAndUndefined" | "assertCanUpsertOne" | "assertCanUpsertNull" | "assertCanPushToArrayOnUpsert" | "assertCanLimitResultsToZero" | "assertCanFindWithBooleanField" | "assertCanQueryByGtLtGteLte" | "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" | "runSuite" | "_getFilteredIndexes" | "_filterIdIndex" | "_assertUpdateUpdatedRightNumberOfRecords" | "shutdown" | "_assertThrowsExpectedNotFoundOnUpdateOne" | "_assert$orReturnsExpectedTotalRecords" | "_assertCanCreateMultiFieldIndex")[];
|
|
@@ -32,3 +32,9 @@ export interface DatabaseOptions {
|
|
|
32
32
|
dbName?: string;
|
|
33
33
|
log?: Log;
|
|
34
34
|
}
|
|
35
|
+
export type TestConnect = (connectionString?: string, dbName?: string) => Promise<{
|
|
36
|
+
db: Database;
|
|
37
|
+
scheme: string;
|
|
38
|
+
connectionStringWithRandomBadDatabaseName: string;
|
|
39
|
+
badDatabaseName: string;
|
|
40
|
+
}>;
|
|
@@ -6,13 +6,14 @@ export type QueryBuilder<Query> = {
|
|
|
6
6
|
} & {
|
|
7
7
|
id?: string | QuerySelector<string>;
|
|
8
8
|
};
|
|
9
|
+
export interface QuerySortField {
|
|
10
|
+
field: string;
|
|
11
|
+
direction: 'asc' | 'desc';
|
|
12
|
+
}
|
|
9
13
|
export interface QueryOptions {
|
|
10
14
|
skip?: number;
|
|
11
15
|
limit?: number;
|
|
12
|
-
sort?:
|
|
13
|
-
field: string;
|
|
14
|
-
direction: 'asc' | 'desc';
|
|
15
|
-
}[];
|
|
16
|
+
sort?: QuerySortField[];
|
|
16
17
|
includeFields?: string[];
|
|
17
18
|
}
|
|
18
19
|
export type FlattenAndPathKeys<O extends Obj, T extends Obj = PathKeys<O>> = Flatten<T>;
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "
|
|
6
|
+
"version": "20.0.0",
|
|
7
7
|
"files": [
|
|
8
8
|
"build/**/*",
|
|
9
9
|
"!build/__tests__",
|
|
@@ -71,22 +71,22 @@
|
|
|
71
71
|
},
|
|
72
72
|
"dependencies": {
|
|
73
73
|
"@sprucelabs/error": "^5.0.580",
|
|
74
|
-
"@sprucelabs/schema": "^28.5.
|
|
75
|
-
"@sprucelabs/spruce-skill-utils": "^28.1.
|
|
74
|
+
"@sprucelabs/schema": "^28.5.129",
|
|
75
|
+
"@sprucelabs/spruce-skill-utils": "^28.1.82",
|
|
76
76
|
"globby": "^11.0.4",
|
|
77
77
|
"just-clone": "^6.2.0",
|
|
78
78
|
"lodash": "^4.17.21",
|
|
79
|
-
"mongodb": "^5.0
|
|
79
|
+
"mongodb": "^5.1.0",
|
|
80
80
|
"nedb": "^1.8.0"
|
|
81
81
|
},
|
|
82
82
|
"devDependencies": {
|
|
83
|
-
"@sprucelabs/esm-postbuild": "^2.0.
|
|
84
|
-
"@sprucelabs/jest-json-reporter": "^6.0.
|
|
83
|
+
"@sprucelabs/esm-postbuild": "^2.0.91",
|
|
84
|
+
"@sprucelabs/jest-json-reporter": "^6.0.563",
|
|
85
85
|
"@sprucelabs/jest-sheets-reporter": "^2.0.21",
|
|
86
86
|
"@sprucelabs/resolve-path-aliases": "^1.1.177",
|
|
87
87
|
"@sprucelabs/semantic-release": "^4.0.8",
|
|
88
88
|
"@sprucelabs/test": "^7.7.420",
|
|
89
|
-
"@sprucelabs/test-utils": "^3.
|
|
89
|
+
"@sprucelabs/test-utils": "^3.4.1",
|
|
90
90
|
"@types/lodash": "^4.14.191",
|
|
91
91
|
"@types/nedb": "^1.8.12",
|
|
92
92
|
"@types/node": "17.0.5",
|