@ts-awesome/orm 1.2.2-rc0 → 1.3.0-rc0
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/dist/base.d.ts +5 -4
- package/dist/base.js.map +1 -1
- package/dist/interfaces.d.ts +10 -3
- package/dist/operators.d.ts +1 -0
- package/dist/operators.js +3 -0
- package/dist/operators.js.map +1 -1
- package/dist/test-driver/driver.d.ts +2 -2
- package/dist/test-driver/driver.js +2 -2
- package/dist/test-driver/driver.js.map +1 -1
- package/dist/test-driver/transaction.d.ts +7 -2
- package/dist/test-driver/transaction.js +23 -6
- package/dist/test-driver/transaction.js.map +1 -1
- package/package.json +1 -1
- package/tests/builder.spec.ts +8 -1
package/dist/base.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IBuildableQuery, IBuildableQueryCompiler, IQueryData, IQueryDriver, IQueryExecutor, IQueryExecutorProvider, ITransaction, TableMetaProvider } from "./interfaces";
|
|
1
|
+
import { IBuildableQuery, IBuildableQueryCompiler, IQueryData, IQueryDriver, IQueryExecutor, IQueryExecutorProvider, IsolationLevel, ITransaction, TableMetaProvider } from "./interfaces";
|
|
2
2
|
export declare abstract class BaseCompiler<TQuery> implements IBuildableQueryCompiler<TQuery> {
|
|
3
3
|
abstract compile(query: IBuildableQuery): TQuery;
|
|
4
4
|
}
|
|
@@ -11,12 +11,13 @@ export declare abstract class BaseExecutor<TQuery, R extends IQueryData = IQuery
|
|
|
11
11
|
export declare abstract class BaseExecutorProvider<TQuery> implements IQueryExecutorProvider<TQuery> {
|
|
12
12
|
abstract getExecutor(): IQueryExecutor<TQuery>;
|
|
13
13
|
}
|
|
14
|
-
export declare abstract class BaseTransaction<TQuery, R extends IQueryData = IQueryData> extends BaseExecutor<TQuery, R> implements ITransaction<TQuery, R> {
|
|
14
|
+
export declare abstract class BaseTransaction<TQuery, R extends IQueryData = IQueryData, IL = IsolationLevel> extends BaseExecutor<TQuery, R> implements ITransaction<TQuery, R, IL> {
|
|
15
15
|
readonly finished: boolean;
|
|
16
16
|
abstract commit(): Promise<void>;
|
|
17
17
|
abstract rollback(): Promise<void>;
|
|
18
|
+
abstract setIsolationLevel(isolationLevel: IL): Promise<void>;
|
|
18
19
|
}
|
|
19
|
-
export declare abstract class BaseDriver<TQuery, R extends IQueryData = IQueryData> extends BaseExecutor<TQuery, R> implements IQueryDriver<TQuery, R> {
|
|
20
|
-
abstract begin(): Promise<ITransaction<TQuery, R>>;
|
|
20
|
+
export declare abstract class BaseDriver<TQuery, R extends IQueryData = IQueryData, IL = IsolationLevel> extends BaseExecutor<TQuery, R> implements IQueryDriver<TQuery, R, IL> {
|
|
21
|
+
abstract begin(isolationLevel?: IL): Promise<ITransaction<TQuery, R, IL>>;
|
|
21
22
|
abstract end(): Promise<void>;
|
|
22
23
|
}
|
package/dist/base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAQA,yCAAqC;AACrC,qCAAgC;AAGhC,IAAsB,YAAY,GAAlC,MAAsB,YAAY;CAEjC,CAAA;AAFqB,YAAY;IADjC,sBAAU,EAAE;GACS,YAAY,CAEjC;AAFqB,oCAAY;AAKlC,IAAsB,YAAY,GAAlC,MAAsB,YAAY;IAInB,OAAO,CAAC,KAAa,EAAE,KAAsB,EAAE,SAAS,GAAG,KAAK;;YAC3E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YACpC,OAAO,eAAM,CAAC,MAAM,EAAE,KAAY,EAAE,SAAS,CAAC,CAAC;QACjD,CAAC;KAAA;CAGF,CAAA;AAVqB,YAAY;IADjC,sBAAU,EAAE;GACS,YAAY,CAUjC;AAVqB,oCAAY;AAalC,IAAsB,oBAAoB,GAA1C,MAAsB,oBAAoB;CAEzC,CAAA;AAFqB,oBAAoB;IADzC,sBAAU,EAAE;GACS,oBAAoB,CAEzC;AAFqB,oDAAoB;AAK1C,IAAsB,eAAe,GAArC,MAAsB,
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAQA,yCAAqC;AACrC,qCAAgC;AAGhC,IAAsB,YAAY,GAAlC,MAAsB,YAAY;CAEjC,CAAA;AAFqB,YAAY;IADjC,sBAAU,EAAE;GACS,YAAY,CAEjC;AAFqB,oCAAY;AAKlC,IAAsB,YAAY,GAAlC,MAAsB,YAAY;IAInB,OAAO,CAAC,KAAa,EAAE,KAAsB,EAAE,SAAS,GAAG,KAAK;;YAC3E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YACpC,OAAO,eAAM,CAAC,MAAM,EAAE,KAAY,EAAE,SAAS,CAAC,CAAC;QACjD,CAAC;KAAA;CAGF,CAAA;AAVqB,YAAY;IADjC,sBAAU,EAAE;GACS,YAAY,CAUjC;AAVqB,oCAAY;AAalC,IAAsB,oBAAoB,GAA1C,MAAsB,oBAAoB;CAEzC,CAAA;AAFqB,oBAAoB;IADzC,sBAAU,EAAE;GACS,oBAAoB,CAEzC;AAFqB,oDAAoB;AAK1C,IAAsB,eAAe,GAArC,MAAsB,eAAgF,SAAQ,YAAuB;CAKpI,CAAA;AALqB,eAAe;IADpC,sBAAU,EAAE;GACS,eAAe,CAKpC;AALqB,0CAAe;AAQrC,IAAsB,UAAU,GAAhC,MAAsB,UAA2E,SAAQ,YAAuB;CAG/H,CAAA;AAHqB,UAAU;IAD/B,sBAAU,EAAE;GACS,UAAU,CAG/B;AAHqB,gCAAU"}
|
package/dist/interfaces.d.ts
CHANGED
|
@@ -212,13 +212,20 @@ export interface IQueryExecutor<T, R = IQueryData> {
|
|
|
212
212
|
execute(query: T, scalar: true): Promise<number>;
|
|
213
213
|
execute<X extends TableMetaProvider>(query: T, Model: X, sensitive?: boolean): Promise<ReadonlyArray<InstanceType<X>>>;
|
|
214
214
|
}
|
|
215
|
-
export
|
|
215
|
+
export declare const enum IsolationLevel {
|
|
216
|
+
Serializable = "SERIALIZABLE",
|
|
217
|
+
RepeatableReads = "REPEATABLE READ",
|
|
218
|
+
ReadCommitted = "READ COMMITTED",
|
|
219
|
+
ReadUncommitted = "READ UNCOMMITTED"
|
|
220
|
+
}
|
|
221
|
+
export interface ITransaction<TQuery, R = IQueryData, IL = IsolationLevel> extends IQueryExecutor<TQuery, R> {
|
|
216
222
|
readonly finished: boolean;
|
|
217
223
|
commit(): Promise<void>;
|
|
218
224
|
rollback(): Promise<void>;
|
|
225
|
+
setIsolationLevel(isolationLevel: IL): Promise<void>;
|
|
219
226
|
}
|
|
220
|
-
export interface IQueryDriver<TQuery, R = IQueryData> extends IQueryExecutor<TQuery, R> {
|
|
221
|
-
begin(): Promise<ITransaction<TQuery, R>>;
|
|
227
|
+
export interface IQueryDriver<TQuery, R = IQueryData, IL = IsolationLevel> extends IQueryExecutor<TQuery, R> {
|
|
228
|
+
begin(isolationLevel?: IL): Promise<ITransaction<TQuery, R, IL>>;
|
|
222
229
|
end(): Promise<void>;
|
|
223
230
|
}
|
|
224
231
|
export interface IQueryExecutorProvider<TQuery> {
|
package/dist/operators.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export declare function max<T>(value: IOperandable<T>): IOperandable<T>;
|
|
|
12
12
|
export declare function min<T>(value: IOperandable<T>): IOperandable<T>;
|
|
13
13
|
export declare function asc<T>(value: Column<T> | IOperandable<T>): Order;
|
|
14
14
|
export declare function desc<T>(value: Column<T> | IOperandable<T>): Order;
|
|
15
|
+
export declare function of<T = unknown>(_: null, field: string): IOperandable<T>;
|
|
15
16
|
export declare function of<X extends TableMetaProvider, R = InstanceType<X>, F extends keyof R = keyof R>(_: X, field: F): IOperandable<R[F]>;
|
|
16
17
|
export declare function of<X extends TableMetaProvider, R = InstanceType<X>, F extends keyof R = keyof R>(_: ITableRef<X>, field: F): IOperandable<R[F]>;
|
|
17
18
|
export declare function alias<T>(expr: T | IOperandable<T>, name: string): IOperandable<T>;
|
package/dist/operators.js
CHANGED
|
@@ -57,6 +57,9 @@ function desc(value) {
|
|
|
57
57
|
exports.desc = desc;
|
|
58
58
|
function of(_, field) {
|
|
59
59
|
var _a;
|
|
60
|
+
if (_ === null) {
|
|
61
|
+
return (new wrappers_1.ColumnWrapper({ name: field }));
|
|
62
|
+
}
|
|
60
63
|
const { tableName, fields } = (_a = _[symbols_1.TableMetadataSymbol]) !== null && _a !== void 0 ? _a : _;
|
|
61
64
|
if (!fields.has(field)) {
|
|
62
65
|
throw new Error(`Field '${field}' should be annotated with @dbField() or @dbManyField()`);
|
package/dist/operators.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operators.js","sourceRoot":"","sources":["../src/operators.ts"],"names":[],"mappings":";;;AACA,yCAAoE;AACpE,uCAA8C;AAE9C,SAAgB,GAAG,CAAC,GAAG,QAA6C;IAClE,OAAO,IAAI,sBAAW,CAAC,KAAK,EAAE,QAAQ,CAA0B,CAAA;AAClE,CAAC;AAFD,kBAEC;AAED,SAAgB,EAAE,CAAC,GAAG,QAA6C;IACjE,OAAO,IAAI,sBAAW,CAAC,IAAI,EAAE,QAAQ,CAA0B,CAAA;AACjE,CAAC;AAFD,gBAEC;AAED,SAAgB,GAAG,CAAC,SAA0C;IAC5D,OAAO,IAAI,sBAAW,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,CAA0B,CAAA;AACrE,CAAC;AAFD,kBAEC;AAED,SAAgB,GAAG,CAAQ,QAAyB;IAClD,OAAO,IAAI,sBAAW,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAoB,CAAA;AAC9D,CAAC;AAFD,kBAEC;AAED,SAAgB,GAAG,CAAQ,QAAyB;IAClD,OAAO,IAAI,sBAAW,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAoB,CAAA;AAC9D,CAAC;AAFD,kBAEC;AAED,SAAgB,MAAM,CAAC,QAAyB;IAC9C,OAAO,IAAI,sBAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAA0B,CAAA;AACvE,CAAC;AAFD,wBAEC;AAED,SAAgB,GAAG,CAAI,KAAsB;IAC3C,OAAO,IAAI,uBAAY,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAoB,CAAA;AAC5D,CAAC;AAFD,kBAEC;AAED,SAAgB,GAAG,CAAI,KAAsB;IAC3C,OAAO,IAAI,uBAAY,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAoB,CAAA;AAC5D,CAAC;AAFD,kBAEC;AAED,SAAgB,KAAK,CAAI,KAAuB;IAC9C,OAAO,IAAI,uBAAY,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,GAAG,CAAC,CAAyB,CAAA;AAC1E,CAAC;AAFD,sBAEC;AAED,SAAgB,GAAG,CAAI,KAAsB;IAC3C,OAAO,IAAI,uBAAY,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAoB,CAAA;AAC5D,CAAC;AAFD,kBAEC;AAED,SAAgB,GAAG,CAAI,KAAsB;IAC3C,OAAO,IAAI,uBAAY,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAoB,CAAA;AAC5D,CAAC;AAFD,kBAEC;AAED,SAAgB,GAAG,CAAI,KAAgC;IACrD,OAAO,gCAAe,KAAM,KAAE,MAAM,EAAE,KAAK,GAAE,CAAA;AAC/C,CAAC;AAFD,kBAEC;AAED,SAAgB,IAAI,CAAI,KAAgC;IACtD,OAAO,gCAAe,KAAM,KAAE,MAAM,EAAE,MAAM,GAAE,CAAA;AAChD,CAAC;AAFD,oBAEC;
|
|
1
|
+
{"version":3,"file":"operators.js","sourceRoot":"","sources":["../src/operators.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { TestExecutor } from './executor';
|
|
2
|
-
import { IQueryDriver, ITransaction } from '../';
|
|
2
|
+
import { IQueryDriver, IsolationLevel, ITransaction } from '../';
|
|
3
3
|
import { TestQuery, TestQueryResult } from './interfaces';
|
|
4
4
|
export declare class TestDriver extends TestExecutor implements IQueryDriver<TestQuery, TestQueryResult> {
|
|
5
5
|
private _active;
|
|
6
6
|
get active(): boolean;
|
|
7
|
-
begin(): Promise<ITransaction<TestQuery, TestQueryResult>>;
|
|
7
|
+
begin(isolationLevel?: IsolationLevel): Promise<ITransaction<TestQuery, TestQueryResult>>;
|
|
8
8
|
end(): Promise<void>;
|
|
9
9
|
}
|
|
@@ -27,9 +27,9 @@ let TestDriver = class TestDriver extends executor_1.TestExecutor {
|
|
|
27
27
|
get active() {
|
|
28
28
|
return this._active;
|
|
29
29
|
}
|
|
30
|
-
begin() {
|
|
30
|
+
begin(isolationLevel) {
|
|
31
31
|
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
-
return new transaction_1.TestTransaction();
|
|
32
|
+
return new transaction_1.TestTransaction(isolationLevel);
|
|
33
33
|
});
|
|
34
34
|
}
|
|
35
35
|
end() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.js","sourceRoot":"","sources":["../../src/test-driver/driver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,yCAAuC;AACvC,yCAA0C;AAG1C,+CAAgD;AAGhD,IAAa,UAAU,GAAvB,MAAa,UAAW,SAAQ,uBAAY;IAA5C;;QACU,YAAO,GAAG,IAAI,CAAC;IAezB,CAAC;IAbC,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEY,KAAK;;
|
|
1
|
+
{"version":3,"file":"driver.js","sourceRoot":"","sources":["../../src/test-driver/driver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,yCAAuC;AACvC,yCAA0C;AAG1C,+CAAgD;AAGhD,IAAa,UAAU,GAAvB,MAAa,UAAW,SAAQ,uBAAY;IAA5C;;QACU,YAAO,GAAG,IAAI,CAAC;IAezB,CAAC;IAbC,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEY,KAAK,CAAC,cAA+B;;YAChD,OAAO,IAAI,6BAAe,CAAC,cAAc,CAAC,CAAC;QAC7C,CAAC;KAAA;IAEM,GAAG;QACR,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;CAEF,CAAA;AAhBY,UAAU;IADtB,sBAAU,EAAE;GACA,UAAU,CAgBtB;AAhBY,gCAAU"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { TestExecutor } from './executor';
|
|
2
|
-
import { ITransaction } from '../';
|
|
2
|
+
import { IsolationLevel, ITransaction } from '../';
|
|
3
3
|
import { TestQuery, TestQueryResult } from './interfaces';
|
|
4
4
|
export declare class TestTransaction extends TestExecutor implements ITransaction<TestQuery, TestQueryResult> {
|
|
5
|
-
|
|
5
|
+
private _isolationLevel?;
|
|
6
|
+
_finished: boolean;
|
|
7
|
+
constructor(_isolationLevel?: IsolationLevel);
|
|
8
|
+
get finished(): boolean;
|
|
9
|
+
get isolationLevel(): IsolationLevel | undefined;
|
|
6
10
|
commit(): Promise<void>;
|
|
7
11
|
rollback(): Promise<void>;
|
|
12
|
+
setIsolationLevel(isolationLevel: IsolationLevel): Promise<void>;
|
|
8
13
|
}
|
|
@@ -5,6 +5,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
8
11
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
9
12
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
10
13
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -19,25 +22,39 @@ exports.TestTransaction = void 0;
|
|
|
19
22
|
const executor_1 = require("./executor");
|
|
20
23
|
const inversify_1 = require("inversify");
|
|
21
24
|
let TestTransaction = class TestTransaction extends executor_1.TestExecutor {
|
|
22
|
-
constructor() {
|
|
23
|
-
super(
|
|
24
|
-
this.
|
|
25
|
+
constructor(_isolationLevel) {
|
|
26
|
+
super();
|
|
27
|
+
this._isolationLevel = _isolationLevel;
|
|
28
|
+
this._finished = false;
|
|
29
|
+
}
|
|
30
|
+
get finished() {
|
|
31
|
+
return this._finished;
|
|
32
|
+
}
|
|
33
|
+
get isolationLevel() {
|
|
34
|
+
return this._isolationLevel;
|
|
25
35
|
}
|
|
26
36
|
commit() {
|
|
27
37
|
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
this.
|
|
38
|
+
this._finished = true;
|
|
29
39
|
console.log('COMMIT');
|
|
30
40
|
});
|
|
31
41
|
}
|
|
32
42
|
rollback() {
|
|
33
43
|
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
-
this.
|
|
44
|
+
this._finished = true;
|
|
35
45
|
console.log('ROLLBACK');
|
|
36
46
|
});
|
|
37
47
|
}
|
|
48
|
+
setIsolationLevel(isolationLevel) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
this._isolationLevel = isolationLevel;
|
|
51
|
+
console.log('SET TRANSACTION ' + isolationLevel);
|
|
52
|
+
});
|
|
53
|
+
}
|
|
38
54
|
};
|
|
39
55
|
TestTransaction = __decorate([
|
|
40
|
-
inversify_1.injectable()
|
|
56
|
+
inversify_1.injectable(),
|
|
57
|
+
__metadata("design:paramtypes", [String])
|
|
41
58
|
], TestTransaction);
|
|
42
59
|
exports.TestTransaction = TestTransaction;
|
|
43
60
|
//# sourceMappingURL=transaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/test-driver/transaction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/test-driver/transaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,yCAA0C;AAG1C,yCAAqC;AAGrC,IAAa,eAAe,GAA5B,MAAa,eAAgB,SAAQ,uBAAY;IAG/C,YAAoB,eAAgC;QAClD,KAAK,EAAE,CAAC;QADU,oBAAe,GAAf,eAAe,CAAiB;QAF7C,cAAS,GAAG,KAAK,CAAC;IAIzB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAEY,MAAM;;YACjB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC;KAAA;IAEY,QAAQ;;YACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC1B,CAAC;KAAA;IAEK,iBAAiB,CAAC,cAA8B;;YACpD,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,cAAc,CAAC,CAAC;QACnD,CAAC;KAAA;CACF,CAAA;AA7BY,eAAe;IAD3B,sBAAU,EAAE;;GACA,eAAe,CA6B3B;AA7BY,0CAAe"}
|
package/package.json
CHANGED
package/tests/builder.spec.ts
CHANGED
|
@@ -412,7 +412,7 @@ describe('Select', () => {
|
|
|
412
412
|
),
|
|
413
413
|
'score'
|
|
414
414
|
)
|
|
415
|
-
]).orderBy(() => [
|
|
415
|
+
]).orderBy(() => [desc(of(null, 'score'))])
|
|
416
416
|
|
|
417
417
|
const expected = [{"_column": {"table": "Person", "name": "uid", "wrapper": undefined}}, {
|
|
418
418
|
"_alias": "score", "_operands": [{
|
|
@@ -514,6 +514,13 @@ describe('Select', () => {
|
|
|
514
514
|
}];
|
|
515
515
|
|
|
516
516
|
expect(query._columns).toStrictEqual(expected);
|
|
517
|
+
|
|
518
|
+
expect(query._orderBy).toStrictEqual([{
|
|
519
|
+
_column: {
|
|
520
|
+
name: 'score',
|
|
521
|
+
},
|
|
522
|
+
_order: "DESC"
|
|
523
|
+
}]);
|
|
517
524
|
})
|
|
518
525
|
|
|
519
526
|
it ('invalid sub queries', () => {
|