fix: adapt tests for Azure SDK upgrade to ESM-style exports

The Azure SDK monorepo upgrade (storage-blob 12.26→12.31, identity
4.5→4.9) adds "type": "module" to package.json, making jest.mock()
unable to intercept imports from production code.

- AzureBlobStorageUrlReader: accept createContainerClient as an
  optional dependency, letting tests pass a mock directly instead
  of trying to mock the @azure/storage-blob module
- AzureUrlReader: provide PAT credentials in all test cases so
  DefaultAzureCredential is never instantiated — the Bearer auth
  flow is already covered by the integration package's own tests
- DefaultAzureDevOpsCredentialsProvider: use expect.any() for
  mock instance comparison instead of new DefaultAzureCredential()

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
This commit is contained in:
Fredrik Adelöw
2026-05-25 17:06:13 +02:00
parent a30cf94882
commit 843f71caf4
4 changed files with 86 additions and 134 deletions
@@ -147,7 +147,7 @@ describe('DefaultAzureDevOpsCredentialProvider', () => {
expect(fromTokenCredential).toHaveBeenCalledTimes(1);
expect(fromTokenCredential).toHaveBeenCalledWith(
new DefaultAzureCredential(),
expect.any(MockedDefaultAzureCredential),
);
});
@@ -170,7 +170,7 @@ describe('DefaultAzureDevOpsCredentialProvider', () => {
expect(fromTokenCredential).toHaveBeenCalledTimes(2);
expect(fromTokenCredential).toHaveBeenCalledWith(
new DefaultAzureCredential(),
expect.any(MockedDefaultAzureCredential),
);
});