Skip to content

Commit

Permalink
Resolve jest module import errors
Browse files Browse the repository at this point in the history
A CLI sdk load service that async imports our wasm binary doesn't seem to be needed to run, but jest isn't dealing with the ESM import properly.
  • Loading branch information
MGibson1 committed Jan 13, 2025
1 parent 0e689b7 commit c8a4e27
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 4 deletions.
9 changes: 9 additions & 0 deletions apps/cli/src/platform/services/cli-sdk-load.service.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import { SdkLoadService } from "@bitwarden/common/platform/abstractions/sdk/sdk-load.service";
import * as sdk from "@bitwarden/sdk-internal";

export class CliSdkLoadService implements SdkLoadService {
async load(): Promise<void> {
const module = await import("@bitwarden/sdk-internal/bitwarden_wasm_internal_bg.wasm");
(sdk as any).init(module);

Check warning on line 7 in apps/cli/src/platform/services/cli-sdk-load.service.ts

View check run for this annotation

Codecov / codecov/patch

apps/cli/src/platform/services/cli-sdk-load.service.ts#L6-L7

Added lines #L6 - L7 were not covered by tests
}
}
4 changes: 2 additions & 2 deletions apps/cli/src/service-container/service-container.ts
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,6 @@ import { MemoryStorageService } from "@bitwarden/common/platform/services/memory
import { MigrationBuilderService } from "@bitwarden/common/platform/services/migration-builder.service";
import { MigrationRunner } from "@bitwarden/common/platform/services/migration-runner";
import { DefaultSdkClientFactory } from "@bitwarden/common/platform/services/sdk/default-sdk-client-factory";
import { DefaultSdkLoadService } from "@bitwarden/common/platform/services/sdk/default-sdk-load.service";
import { DefaultSdkService } from "@bitwarden/common/platform/services/sdk/default-sdk.service";
import { NoopSdkClientFactory } from "@bitwarden/common/platform/services/sdk/noop-sdk-client-factory";
import { StateService } from "@bitwarden/common/platform/services/state.service";
Expand Down Expand Up @@ -170,6 +169,7 @@ import {
import { CliBiometricsService } from "../key-management/cli-biometrics-service";
import { flagEnabled } from "../platform/flags";
import { CliPlatformUtilsService } from "../platform/services/cli-platform-utils.service";
import { CliSdkLoadService } from "../platform/services/cli-sdk-load.service";
import { ConsoleLogService } from "../platform/services/console-log.service";
import { I18nService } from "../platform/services/i18n.service";
import { LowdbStorageService } from "../platform/services/lowdb-storage.service";
Expand Down Expand Up @@ -569,7 +569,7 @@ export class ServiceContainer {
const sdkClientFactory = flagEnabled("sdk")
? new DefaultSdkClientFactory()
: new NoopSdkClientFactory();
this.sdkLoadService = new DefaultSdkLoadService();
this.sdkLoadService = new CliSdkLoadService();
this.sdkService = new DefaultSdkService(
sdkClientFactory,
this.environmentService,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import * as sdk from "@bitwarden/sdk-internal";
import * as module from "@bitwarden/sdk-internal/bitwarden_wasm_internal_bg.wasm";
import * as bitwardenModule from "@bitwarden/sdk-internal/bitwarden_wasm_internal_bg.wasm";

Check warning on line 2 in libs/common/src/platform/services/sdk/default-sdk-load.service.ts

View check run for this annotation

Codecov / codecov/patch

libs/common/src/platform/services/sdk/default-sdk-load.service.ts#L1-L2

Added lines #L1 - L2 were not covered by tests

import { SdkLoadService } from "../../abstractions/sdk/sdk-load.service";

Expand All @@ -10,6 +10,6 @@ import { SdkLoadService } from "../../abstractions/sdk/sdk-load.service";
*/
export class DefaultSdkLoadService implements SdkLoadService {

Check warning on line 11 in libs/common/src/platform/services/sdk/default-sdk-load.service.ts

View check run for this annotation

Codecov / codecov/patch

libs/common/src/platform/services/sdk/default-sdk-load.service.ts#L11

Added line #L11 was not covered by tests
async load(): Promise<void> {
(sdk as any).init(module);
(sdk as any).init(bitwardenModule);

Check warning on line 13 in libs/common/src/platform/services/sdk/default-sdk-load.service.ts

View check run for this annotation

Codecov / codecov/patch

libs/common/src/platform/services/sdk/default-sdk-load.service.ts#L13

Added line #L13 was not covered by tests
}
}

0 comments on commit c8a4e27

Please sign in to comment.