@dfinity/pic 0.18.0 → 0.20.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/dist/error.d.ts +18 -3
- package/dist/error.js +27 -7
- package/dist/error.js.map +1 -1
- package/dist/http2-client.d.ts +1 -0
- package/dist/http2-client.js +28 -19
- package/dist/http2-client.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/management-canister.d.ts +76 -0
- package/dist/management-canister.js +101 -0
- package/dist/management-canister.js.map +1 -1
- package/dist/pocket-ic-client-types.d.ts +27 -0
- package/dist/pocket-ic-client-types.js +1 -1
- package/dist/pocket-ic-client-types.js.map +1 -1
- package/dist/pocket-ic-client.d.ts +7 -0
- package/dist/pocket-ic-client.js +36 -2
- package/dist/pocket-ic-client.js.map +1 -1
- package/dist/pocket-ic-server.js +7 -1
- package/dist/pocket-ic-server.js.map +1 -1
- package/dist/pocket-ic-types.d.ts +130 -0
- package/dist/pocket-ic-types.js.map +1 -1
- package/dist/pocket-ic.d.ts +105 -4
- package/dist/pocket-ic.js +254 -3
- package/dist/pocket-ic.js.map +1 -1
- package/dist/util/candid.d.ts +5 -0
- package/dist/util/candid.js +18 -0
- package/dist/util/candid.js.map +1 -1
- package/dist/util/index.d.ts +1 -0
- package/dist/util/index.js +1 -0
- package/dist/util/index.js.map +1 -1
- package/dist/util/poll.js +5 -2
- package/dist/util/poll.js.map +1 -1
- package/dist/util/wasm.d.ts +2 -0
- package/dist/util/wasm.js +19 -0
- package/dist/util/wasm.js.map +1 -0
- package/package.json +2 -2
- package/postinstall.mjs +1 -1
|
@@ -3,8 +3,10 @@ import { Principal } from '@icp-sdk/core/principal';
|
|
|
3
3
|
export declare class PocketIcClient {
|
|
4
4
|
private readonly serverClient;
|
|
5
5
|
private readonly instancePath;
|
|
6
|
+
private readonly instanceId;
|
|
6
7
|
private readonly ingressMaxRetries;
|
|
7
8
|
private isInstanceDeleted;
|
|
9
|
+
private httpGatewayInstanceId;
|
|
8
10
|
private constructor();
|
|
9
11
|
static create(url: string, req?: CreateInstanceRequest): Promise<PocketIcClient>;
|
|
10
12
|
deleteInstance(): Promise<void>;
|
|
@@ -29,6 +31,11 @@ export declare class PocketIcClient {
|
|
|
29
31
|
submitCall(req: SubmitCanisterCallRequest): Promise<SubmitCanisterCallResponse>;
|
|
30
32
|
ingressStatus(req: IngressStatusRequest): Promise<IngressStatusResponse | null>;
|
|
31
33
|
awaitCall(req: AwaitCanisterCallRequest): Promise<AwaitCanisterCallResponse>;
|
|
34
|
+
autoProgress(): Promise<void>;
|
|
35
|
+
autoProgressEnabled(): Promise<boolean>;
|
|
36
|
+
stopProgress(): Promise<void>;
|
|
37
|
+
startHttpGateway(): Promise<number>;
|
|
38
|
+
stopHttpGateway(): Promise<void>;
|
|
32
39
|
private post;
|
|
33
40
|
private get;
|
|
34
41
|
private assertInstanceNotDeleted;
|
package/dist/pocket-ic-client.js
CHANGED
|
@@ -10,11 +10,14 @@ const AWAIT_INGRESS_STATUS_ROUNDS = 100;
|
|
|
10
10
|
class PocketIcClient {
|
|
11
11
|
serverClient;
|
|
12
12
|
instancePath;
|
|
13
|
+
instanceId;
|
|
13
14
|
ingressMaxRetries;
|
|
14
15
|
isInstanceDeleted = false;
|
|
15
|
-
|
|
16
|
+
httpGatewayInstanceId = null;
|
|
17
|
+
constructor(serverClient, instancePath, instanceId, ingressMaxRetries) {
|
|
16
18
|
this.serverClient = serverClient;
|
|
17
19
|
this.instancePath = instancePath;
|
|
20
|
+
this.instanceId = instanceId;
|
|
18
21
|
this.ingressMaxRetries = ingressMaxRetries;
|
|
19
22
|
}
|
|
20
23
|
static async create(url, req) {
|
|
@@ -30,7 +33,7 @@ class PocketIcClient {
|
|
|
30
33
|
}
|
|
31
34
|
const instanceId = res.Created.instance_id;
|
|
32
35
|
const ingressMaxRetries = req?.ingressMaxRetries ?? AWAIT_INGRESS_STATUS_ROUNDS;
|
|
33
|
-
return new PocketIcClient(serverClient, `/instances/${instanceId}`, ingressMaxRetries);
|
|
36
|
+
return new PocketIcClient(serverClient, `/instances/${instanceId}`, instanceId, ingressMaxRetries);
|
|
34
37
|
}
|
|
35
38
|
async deleteInstance() {
|
|
36
39
|
this.assertInstanceNotDeleted();
|
|
@@ -159,6 +162,37 @@ class PocketIcClient {
|
|
|
159
162
|
}
|
|
160
163
|
throw new Error(`PocketIC did not complete the update call within ${this.ingressMaxRetries} rounds`);
|
|
161
164
|
}
|
|
165
|
+
async autoProgress() {
|
|
166
|
+
await this.post('/auto_progress', {
|
|
167
|
+
artificial_delay_ms: 0,
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
async autoProgressEnabled() {
|
|
171
|
+
return await this.get('/auto_progress');
|
|
172
|
+
}
|
|
173
|
+
async stopProgress() {
|
|
174
|
+
await this.post('/stop_progress', {});
|
|
175
|
+
}
|
|
176
|
+
async startHttpGateway() {
|
|
177
|
+
const res = await this.serverClient.jsonPost({
|
|
178
|
+
path: '/http_gateway',
|
|
179
|
+
body: { forward_to: { PocketIcInstance: this.instanceId } },
|
|
180
|
+
});
|
|
181
|
+
if ('Error' in res) {
|
|
182
|
+
throw new Error(res.Error.message);
|
|
183
|
+
}
|
|
184
|
+
this.httpGatewayInstanceId = res.Created.instance_id;
|
|
185
|
+
return res.Created.port;
|
|
186
|
+
}
|
|
187
|
+
async stopHttpGateway() {
|
|
188
|
+
if ((0, util_1.isNil)(this.httpGatewayInstanceId)) {
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
await this.serverClient.jsonPost({
|
|
192
|
+
path: `/http_gateway/${this.httpGatewayInstanceId}/stop`,
|
|
193
|
+
});
|
|
194
|
+
this.httpGatewayInstanceId = null;
|
|
195
|
+
}
|
|
162
196
|
async post(endpoint, body, responseJsonParser) {
|
|
163
197
|
return await this.serverClient.jsonPost({
|
|
164
198
|
path: `${this.instancePath}${endpoint}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pocket-ic-client.js","sourceRoot":"","sources":["../src/pocket-ic-client.ts"],"names":[],"mappings":";;;AAAA,uDAA6C;AAC7C,iDAA6C;AAC7C,
|
|
1
|
+
{"version":3,"file":"pocket-ic-client.js","sourceRoot":"","sources":["../src/pocket-ic-client.ts"],"names":[],"mappings":"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"}
|
package/dist/pocket-ic-server.js
CHANGED
|
@@ -72,7 +72,13 @@ class PocketIcServer {
|
|
|
72
72
|
throw new error_1.BinStartError(error);
|
|
73
73
|
});
|
|
74
74
|
return await (0, util_1.poll)(async () => {
|
|
75
|
-
const portString = await (0, util_1.readFileAsString)(portFilePath)
|
|
75
|
+
const portString = await (0, util_1.readFileAsString)(portFilePath).catch((err) => {
|
|
76
|
+
if (err instanceof Error &&
|
|
77
|
+
err.code === 'ENOENT') {
|
|
78
|
+
throw new error_1.BinTimeoutError();
|
|
79
|
+
}
|
|
80
|
+
throw err;
|
|
81
|
+
});
|
|
76
82
|
const port = parseInt(portString);
|
|
77
83
|
if (isNaN(port)) {
|
|
78
84
|
throw new error_1.BinTimeoutError();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pocket-ic-server.js","sourceRoot":"","sources":["../src/pocket-ic-server.ts"],"names":[],"mappings":";;;AAAA,2DAAyD;AACzD,yCAAoC;AACpC,qCAAoC;AACpC,mCAKiB;AACjB,iCAOgB;AAEhB,6CAAuC;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAa,cAAc;IAIN;IAHF,GAAG,CAAS;IAE7B,YACmB,aAA2B,EAC5C,UAAkB;QADD,kBAAa,GAAb,aAAa,CAAc;QAG5C,IAAI,CAAC,GAAG,GAAG,oBAAoB,UAAU,EAAE,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,KAAK,CACvB,UAA8B,EAAE;QAEhC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAEpC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,MAAM,aAAa,GAAG,aAAa,GAAG,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,IAAA,cAAO,EAAC,GAAG,aAAa,OAAO,CAAC,CAAC;QAEtD,MAAM,aAAa,GAAG,IAAA,0BAAK,EAAC,OAAO,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;QAEpE,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC5B,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YAChC,IAAI,IAAA,YAAK,GAAE,IAAI,IAAA,eAAQ,GAAE,EAAE,CAAC;gBAC1B,MAAM,IAAI,6BAAqB,CAAC,KAAK,CAAC,CAAC;YACzC,CAAC;YAED,MAAM,IAAI,qBAAa,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,IAAA,WAAI,EACf,KAAK,IAAI,EAAE;YACT,MAAM,UAAU,GAAG,MAAM,IAAA,uBAAgB,EAAC,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"pocket-ic-server.js","sourceRoot":"","sources":["../src/pocket-ic-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -383,6 +383,28 @@ export interface CanisterFixture<T extends ActorInterface<T> = ActorInterface> {
|
|
|
383
383
|
*/
|
|
384
384
|
canisterId: Principal;
|
|
385
385
|
}
|
|
386
|
+
/**
|
|
387
|
+
* Environment variable for canister settings.
|
|
388
|
+
*
|
|
389
|
+
* @category Types
|
|
390
|
+
*/
|
|
391
|
+
export interface EnvironmentVariable {
|
|
392
|
+
name: string;
|
|
393
|
+
value: string;
|
|
394
|
+
}
|
|
395
|
+
/**
|
|
396
|
+
* Log visibility for canister settings.
|
|
397
|
+
*
|
|
398
|
+
* @category Types
|
|
399
|
+
* @see [Principal](https://js.icp.build/core/latest/libs/principal/api/classes/principal/)
|
|
400
|
+
*/
|
|
401
|
+
export type LogVisibility = {
|
|
402
|
+
controllers: null;
|
|
403
|
+
} | {
|
|
404
|
+
public: null;
|
|
405
|
+
} | {
|
|
406
|
+
allowedViewers: Principal[];
|
|
407
|
+
};
|
|
386
408
|
/**
|
|
387
409
|
* Canister settings.
|
|
388
410
|
*
|
|
@@ -411,6 +433,23 @@ export interface CanisterSettings {
|
|
|
411
433
|
* The reserved cycles limit of the canister.
|
|
412
434
|
*/
|
|
413
435
|
reservedCyclesLimit?: bigint;
|
|
436
|
+
/**
|
|
437
|
+
* The log visibility of the canister.
|
|
438
|
+
*/
|
|
439
|
+
logVisibility?: LogVisibility;
|
|
440
|
+
/**
|
|
441
|
+
* The WASM memory limit of the canister in bytes.
|
|
442
|
+
*/
|
|
443
|
+
wasmMemoryLimit?: bigint;
|
|
444
|
+
/**
|
|
445
|
+
* The WASM memory threshold of the canister in bytes.
|
|
446
|
+
* The canister_on_low_wasm_memory function will be called when the canister's remaining wasm memory is below this threshold.
|
|
447
|
+
*/
|
|
448
|
+
wasmMemoryThreshold?: bigint;
|
|
449
|
+
/**
|
|
450
|
+
* Environment variables exposed to the canister.
|
|
451
|
+
*/
|
|
452
|
+
environmentVariables?: EnvironmentVariable[];
|
|
414
453
|
}
|
|
415
454
|
/**
|
|
416
455
|
* Options for creating a canister.
|
|
@@ -590,6 +629,97 @@ export interface UpdateCanisterSettingsOptions extends Partial<CanisterSettings>
|
|
|
590
629
|
*/
|
|
591
630
|
sender?: Principal;
|
|
592
631
|
}
|
|
632
|
+
/**
|
|
633
|
+
* Options for querying the status of a given canister.
|
|
634
|
+
*
|
|
635
|
+
* @category Types
|
|
636
|
+
* @see [Principal](https://js.icp.build/core/latest/libs/principal/api/classes/principal/)
|
|
637
|
+
*/
|
|
638
|
+
export interface CanisterStatusOptions {
|
|
639
|
+
/**
|
|
640
|
+
* The Principal of the canister to query the status of.
|
|
641
|
+
*/
|
|
642
|
+
canisterId: Principal;
|
|
643
|
+
/**
|
|
644
|
+
* The Principal to send the request as.
|
|
645
|
+
* Defaults to the anonymous principal.
|
|
646
|
+
*/
|
|
647
|
+
sender?: Principal;
|
|
648
|
+
}
|
|
649
|
+
/**
|
|
650
|
+
* The status of a canister.
|
|
651
|
+
*
|
|
652
|
+
* @category Types
|
|
653
|
+
*/
|
|
654
|
+
export type CanisterStatus = {
|
|
655
|
+
running: null;
|
|
656
|
+
} | {
|
|
657
|
+
stopping: null;
|
|
658
|
+
} | {
|
|
659
|
+
stopped: null;
|
|
660
|
+
};
|
|
661
|
+
/**
|
|
662
|
+
* Query statistics for a canister.
|
|
663
|
+
*
|
|
664
|
+
* @category Types
|
|
665
|
+
*/
|
|
666
|
+
export interface CanisterQueryStats {
|
|
667
|
+
numCallsTotal: bigint;
|
|
668
|
+
numInstructionsTotal: bigint;
|
|
669
|
+
requestPayloadBytesTotal: bigint;
|
|
670
|
+
responsePayloadBytesTotal: bigint;
|
|
671
|
+
}
|
|
672
|
+
/**
|
|
673
|
+
* The result of querying the status of a canister.
|
|
674
|
+
* Matches the IC management canister `canister_status` response.
|
|
675
|
+
*
|
|
676
|
+
* @category Types
|
|
677
|
+
* @see [Principal](https://js.icp.build/core/latest/libs/principal/api/classes/principal/)
|
|
678
|
+
*/
|
|
679
|
+
export interface CanisterStatusResult {
|
|
680
|
+
/**
|
|
681
|
+
* The current status of the canister.
|
|
682
|
+
*/
|
|
683
|
+
status: CanisterStatus;
|
|
684
|
+
/**
|
|
685
|
+
* The definite settings of the canister.
|
|
686
|
+
*/
|
|
687
|
+
settings: {
|
|
688
|
+
controllers: Principal[];
|
|
689
|
+
computeAllocation: bigint;
|
|
690
|
+
memoryAllocation: bigint;
|
|
691
|
+
freezingThreshold: bigint;
|
|
692
|
+
reservedCyclesLimit: bigint;
|
|
693
|
+
logVisibility: LogVisibility;
|
|
694
|
+
wasmMemoryLimit: bigint;
|
|
695
|
+
wasmMemoryThreshold: bigint;
|
|
696
|
+
environmentVariables: EnvironmentVariable[];
|
|
697
|
+
};
|
|
698
|
+
/**
|
|
699
|
+
* The SHA-256 hash of the installed WASM module, if any.
|
|
700
|
+
*/
|
|
701
|
+
moduleHash: Uint8Array | null;
|
|
702
|
+
/**
|
|
703
|
+
* The total memory size of the canister in bytes.
|
|
704
|
+
*/
|
|
705
|
+
memorySize: bigint;
|
|
706
|
+
/**
|
|
707
|
+
* The current cycle balance of the canister.
|
|
708
|
+
*/
|
|
709
|
+
cycles: bigint;
|
|
710
|
+
/**
|
|
711
|
+
* The reserved cycles of the canister.
|
|
712
|
+
*/
|
|
713
|
+
reservedCycles: bigint;
|
|
714
|
+
/**
|
|
715
|
+
* The amount of cycles burned per day when idle.
|
|
716
|
+
*/
|
|
717
|
+
idleCyclesBurnedPerDay: bigint;
|
|
718
|
+
/**
|
|
719
|
+
* Query call statistics for the canister.
|
|
720
|
+
*/
|
|
721
|
+
queryStats: CanisterQueryStats;
|
|
722
|
+
}
|
|
593
723
|
/**
|
|
594
724
|
* Options for making a query call to a given canister.
|
|
595
725
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pocket-ic-types.js","sourceRoot":"","sources":["../src/pocket-ic-types.ts"],"names":[],"mappings":";;;AA0OA;;GAEG;AACH,IAAY,eAWX;AAXD,WAAY,eAAe;IACzB;;OAEG;IACH,8BAAW,CAAA;IAEX;;;OAGG;IACH,wCAAqB,CAAA;AACvB,CAAC,EAXW,eAAe,+BAAf,eAAe,QAW1B;AAED;;GAEG;AACH,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,oCAAmB,CAAA;AACrB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAyBD;;GAEG;AACH,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B;;OAEG;IACH,oDAA+B,CAAA;AACjC,CAAC,EALW,iBAAiB,iCAAjB,iBAAiB,QAK5B;AA6ED;;GAEG;AACH,IAAY,UAmCX;AAnCD,WAAY,UAAU;IACpB;;OAEG;IACH,yCAA2B,CAAA;IAE3B;;OAEG;IACH,iCAAmB,CAAA;IAEnB;;OAEG;IACH,qCAAuB,CAAA;IAEvB;;OAEG;IACH,qCAAuB,CAAA;IAEvB;;OAEG;IACH,yBAAW,CAAA;IAEX;;OAEG;IACH,yBAAW,CAAA;IAEX;;OAEG;IACH,+BAAiB,CAAA;AACnB,CAAC,EAnCW,UAAU,0BAAV,UAAU,QAmCrB;
|
|
1
|
+
{"version":3,"file":"pocket-ic-types.js","sourceRoot":"","sources":["../src/pocket-ic-types.ts"],"names":[],"mappings":";;;AA0OA;;GAEG;AACH,IAAY,eAWX;AAXD,WAAY,eAAe;IACzB;;OAEG;IACH,8BAAW,CAAA;IAEX;;;OAGG;IACH,wCAAqB,CAAA;AACvB,CAAC,EAXW,eAAe,+BAAf,eAAe,QAW1B;AAED;;GAEG;AACH,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,oCAAmB,CAAA;AACrB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAyBD;;GAEG;AACH,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B;;OAEG;IACH,oDAA+B,CAAA;AACjC,CAAC,EALW,iBAAiB,iCAAjB,iBAAiB,QAK5B;AA6ED;;GAEG;AACH,IAAY,UAmCX;AAnCD,WAAY,UAAU;IACpB;;OAEG;IACH,yCAA2B,CAAA;IAE3B;;OAEG;IACH,iCAAmB,CAAA;IAEnB;;OAEG;IACH,qCAAuB,CAAA;IAEvB;;OAEG;IACH,qCAAuB,CAAA;IAEvB;;OAEG;IACH,yBAAW,CAAA;IAEX;;OAEG;IACH,yBAAW,CAAA;IAEX;;OAEG;IACH,+BAAiB,CAAA;AACnB,CAAC,EAnCW,UAAU,0BAAV,UAAU,QAmCrB;AA+iBD;;GAEG;AACH,IAAY,kBAeX;AAfD,WAAY,kBAAkB;IAC5B;;OAEG;IACH,iCAAW,CAAA;IAEX;;OAEG;IACH,mCAAa,CAAA;IAEb;;OAEG;IACH,mCAAa,CAAA;AACf,CAAC,EAfW,kBAAkB,kCAAlB,kBAAkB,QAe7B;AAiFD,2BAA2B"}
|
package/dist/pocket-ic.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Principal } from '@icp-sdk/core/principal';
|
|
2
2
|
import { IDL } from '@icp-sdk/core/candid';
|
|
3
3
|
import { ActorInterface, Actor } from './pocket-ic-actor';
|
|
4
|
-
import { CanisterFixture, CreateCanisterOptions, CreateInstanceOptions, InstallCodeOptions, ReinstallCodeOptions, SetupCanisterOptions, UpgradeCanisterOptions, SubnetTopology, UpdateCanisterSettingsOptions, StartCanisterOptions, StopCanisterOptions, QueryCallOptions, UpdateCallOptions, PendingHttpsOutcall, MockPendingHttpsOutcallOptions } from './pocket-ic-types';
|
|
4
|
+
import { CanisterFixture, CreateCanisterOptions, CreateInstanceOptions, InstallCodeOptions, ReinstallCodeOptions, SetupCanisterOptions, UpgradeCanisterOptions, SubnetTopology, UpdateCanisterSettingsOptions, StartCanisterOptions, StopCanisterOptions, QueryCallOptions, UpdateCallOptions, PendingHttpsOutcall, MockPendingHttpsOutcallOptions, CanisterStatusOptions, CanisterStatusResult } from './pocket-ic-types';
|
|
5
5
|
import { DeferredActor } from './pocket-ic-deferred-actor';
|
|
6
6
|
/**
|
|
7
7
|
* This class represents the main PocketIC client.
|
|
@@ -53,6 +53,7 @@ import { DeferredActor } from './pocket-ic-deferred-actor';
|
|
|
53
53
|
*/
|
|
54
54
|
export declare class PocketIc {
|
|
55
55
|
private readonly client;
|
|
56
|
+
private httpGatewayPort;
|
|
56
57
|
private constructor();
|
|
57
58
|
/**
|
|
58
59
|
* Creates a PocketIC instance.
|
|
@@ -107,7 +108,7 @@ export declare class PocketIc {
|
|
|
107
108
|
* await picServer.stop();
|
|
108
109
|
* ```
|
|
109
110
|
*/
|
|
110
|
-
setupCanister<T extends ActorInterface<T> = ActorInterface>({ sender, arg, wasm, idlFactory, computeAllocation, controllers, cycles, freezingThreshold, memoryAllocation, targetCanisterId, targetSubnetId,
|
|
111
|
+
setupCanister<T extends ActorInterface<T> = ActorInterface>({ sender, arg, wasm, idlFactory, computeAllocation, controllers, cycles, freezingThreshold, memoryAllocation, reservedCyclesLimit, logVisibility, wasmMemoryLimit, wasmMemoryThreshold, environmentVariables, targetCanisterId, targetSubnetId, }: SetupCanisterOptions): Promise<CanisterFixture<T>>;
|
|
111
112
|
/**
|
|
112
113
|
* Creates a new canister.
|
|
113
114
|
* For a more convenient way of creating a PocketIC instance,
|
|
@@ -131,7 +132,7 @@ export declare class PocketIc {
|
|
|
131
132
|
* await picServer.stop();
|
|
132
133
|
* ```
|
|
133
134
|
*/
|
|
134
|
-
createCanister({ sender, cycles, controllers, computeAllocation, freezingThreshold, memoryAllocation, reservedCyclesLimit, targetCanisterId, targetSubnetId, }?: CreateCanisterOptions): Promise<Principal>;
|
|
135
|
+
createCanister({ sender, cycles, controllers, computeAllocation, freezingThreshold, memoryAllocation, reservedCyclesLimit, logVisibility, wasmMemoryLimit, wasmMemoryThreshold, environmentVariables, targetCanisterId, targetSubnetId, }?: CreateCanisterOptions): Promise<Principal>;
|
|
135
136
|
/**
|
|
136
137
|
* Starts the given canister.
|
|
137
138
|
*
|
|
@@ -293,7 +294,32 @@ export declare class PocketIc {
|
|
|
293
294
|
* await picServer.stop();
|
|
294
295
|
* ```
|
|
295
296
|
*/
|
|
296
|
-
updateCanisterSettings({ canisterId, computeAllocation, controllers, freezingThreshold, memoryAllocation, reservedCyclesLimit, sender, }: UpdateCanisterSettingsOptions): Promise<void>;
|
|
297
|
+
updateCanisterSettings({ canisterId, computeAllocation, controllers, freezingThreshold, memoryAllocation, reservedCyclesLimit, logVisibility, wasmMemoryLimit, wasmMemoryThreshold, environmentVariables, sender, }: UpdateCanisterSettingsOptions): Promise<void>;
|
|
298
|
+
/**
|
|
299
|
+
* Returns the status of the given canister.
|
|
300
|
+
*
|
|
301
|
+
* @param options Options for querying the canister status, see {@link CanisterStatusOptions}.
|
|
302
|
+
* @returns The canister status, see {@link CanisterStatusResult}.
|
|
303
|
+
*
|
|
304
|
+
* @see [Principal](https://js.icp.build/core/latest/libs/principal/api/classes/principal/)
|
|
305
|
+
*
|
|
306
|
+
* @example
|
|
307
|
+
* ```ts
|
|
308
|
+
* import { Principal } from '@icp-sdk/core/principal';
|
|
309
|
+
* import { PocketIc, PocketIcServer } from '@dfinity/pic';
|
|
310
|
+
*
|
|
311
|
+
* const canisterId = Principal.fromUint8Array(new Uint8Array([0]));
|
|
312
|
+
*
|
|
313
|
+
* const picServer = await PocketIcServer.start();
|
|
314
|
+
* const pic = await PocketIc.create(picServer.getUrl());
|
|
315
|
+
*
|
|
316
|
+
* const status = await pic.canisterStatus({ canisterId });
|
|
317
|
+
*
|
|
318
|
+
* await pic.tearDown();
|
|
319
|
+
* await picServer.stop();
|
|
320
|
+
* ```
|
|
321
|
+
*/
|
|
322
|
+
canisterStatus({ canisterId, sender, }: CanisterStatusOptions): Promise<CanisterStatusResult>;
|
|
297
323
|
/**
|
|
298
324
|
* Creates an {@link Actor} for the given canister.
|
|
299
325
|
* An {@link Actor} is a typesafe class that implements the Candid interface of a canister.
|
|
@@ -997,4 +1023,79 @@ export declare class PocketIc {
|
|
|
997
1023
|
* ```
|
|
998
1024
|
*/
|
|
999
1025
|
mockPendingHttpsOutcall({ requestId, response, subnetId, additionalResponses, }: MockPendingHttpsOutcallOptions): Promise<void>;
|
|
1026
|
+
/**
|
|
1027
|
+
* Make the PocketIC instance live by enabling auto progress and starting the HTTP Gateway.
|
|
1028
|
+
* If the server is already live, this method will return the HTTP Gateway URL.
|
|
1029
|
+
* The PocketIC instance must be created with at least an NNS subnet in
|
|
1030
|
+
* order for `fetchRootKey` to work correctly.
|
|
1031
|
+
*
|
|
1032
|
+
* @example
|
|
1033
|
+
* ```ts
|
|
1034
|
+
* import { Principal } from '@icp-sdk/core/principal';
|
|
1035
|
+
* import { PocketIc, PocketIcServer } from '@dfinity/pic';
|
|
1036
|
+
* import { resolve } from 'node:path';
|
|
1037
|
+
*
|
|
1038
|
+
* const canisterId = Principal.fromUint8Array(new Uint8Array([0]));
|
|
1039
|
+
* const wasm = resolve('..', '..', 'canister.wasm');
|
|
1040
|
+
*
|
|
1041
|
+
* const picServer = await PocketIcServer.start();
|
|
1042
|
+
* const pic = await PocketIc.create(picServer.getUrl(), {
|
|
1043
|
+
* nns: { state: { type: SubnetStateType.New } },
|
|
1044
|
+
* application: [{ state: { type: SubnetStateType.New } }],
|
|
1045
|
+
* });
|
|
1046
|
+
*
|
|
1047
|
+
* const canister = await pic.installCode({ canisterId, wasm });
|
|
1048
|
+
* await pic.installCode({ canisterId, wasm });
|
|
1049
|
+
*
|
|
1050
|
+
* const httpGatewayUrl = await pic.makeLive();
|
|
1051
|
+
* const agent = await HttpAgent.create({
|
|
1052
|
+
* host: httpGatewayUrl,
|
|
1053
|
+
* shouldFetchRootKey: true,
|
|
1054
|
+
* });
|
|
1055
|
+
* const actor = Actor.createActor(idlFactory, { agent, canisterId });
|
|
1056
|
+
*
|
|
1057
|
+
* await pic.stopLive();
|
|
1058
|
+
* await pic.tearDown();
|
|
1059
|
+
* await picServer.stop();
|
|
1060
|
+
* ```
|
|
1061
|
+
*
|
|
1062
|
+
* @returns The HTTP Gateway port.
|
|
1063
|
+
*/
|
|
1064
|
+
makeLive(): Promise<number>;
|
|
1065
|
+
/**
|
|
1066
|
+
* Disables auto progress and stops the HTTP Gateway for the PocketIC instance.
|
|
1067
|
+
*
|
|
1068
|
+
*
|
|
1069
|
+
* @example
|
|
1070
|
+
* ```ts
|
|
1071
|
+
* import { Principal } from '@icp-sdk/core/principal';
|
|
1072
|
+
* import { PocketIc, PocketIcServer } from '@dfinity/pic';
|
|
1073
|
+
* import { resolve } from 'node:path';
|
|
1074
|
+
*
|
|
1075
|
+
* const canisterId = Principal.fromUint8Array(new Uint8Array([0]));
|
|
1076
|
+
* const wasm = resolve('..', '..', 'canister.wasm');
|
|
1077
|
+
*
|
|
1078
|
+
* const picServer = await PocketIcServer.start();
|
|
1079
|
+
* const pic = await PocketIc.create(picServer.getUrl(), {
|
|
1080
|
+
* nns: { state: { type: SubnetStateType.New } },
|
|
1081
|
+
* application: [{ state: { type: SubnetStateType.New } }],
|
|
1082
|
+
* });
|
|
1083
|
+
*
|
|
1084
|
+
* const canister = await pic.installCode({ canisterId, wasm });
|
|
1085
|
+
* await pic.installCode({ canisterId, wasm });
|
|
1086
|
+
*
|
|
1087
|
+
* const httpGatewayUrl = await pic.makeLive();
|
|
1088
|
+
* const agent = await HttpAgent.create({
|
|
1089
|
+
* host: httpGatewayUrl,
|
|
1090
|
+
* shouldFetchRootKey: true,
|
|
1091
|
+
* });
|
|
1092
|
+
* const actor = Actor.createActor(idlFactory, { agent, canisterId });
|
|
1093
|
+
*
|
|
1094
|
+
* await pic.stopLive();
|
|
1095
|
+
* await pic.tearDown();
|
|
1096
|
+
* await picServer.stop();
|
|
1097
|
+
* ```
|
|
1098
|
+
*/
|
|
1099
|
+
stopLive(): Promise<void>;
|
|
1100
|
+
private installCodeChunked;
|
|
1000
1101
|
}
|