diff --git a/src/main.test.ts b/src/main.test.ts index 9d67bbc..3ef81c4 100644 --- a/src/main.test.ts +++ b/src/main.test.ts @@ -8,7 +8,8 @@ import { MockFetch } from '../test/mock_fetch.js' import { base64Encode, streamToString } from '../test/util.js' import { MissingBlobsEnvironmentError } from './environment.js' -import { getDeployStore, getStore } from './main.js' +import { getDeployStore, getStore, setEnvironmentContext } from './main.js' +import { base64Decode } from './util.js' beforeAll(async () => { if (semver.lt(nodeVersion, '18.0.0')) { @@ -1700,3 +1701,25 @@ describe('Region configuration', () => { }) }) }) + +describe('setEnvironmentContext', () => { + test('Injects the context object into the environment', () => { + expect(env.NETLIFY_BLOBS_CONTEXT).toBeUndefined() + + setEnvironmentContext({ + deployID, + primaryRegion: 'us-east-1', + siteID, + token: apiToken, + }) + + expect(env.NETLIFY_BLOBS_CONTEXT).toBeTypeOf('string') + + const context = JSON.parse(base64Decode(env.NETLIFY_BLOBS_CONTEXT as string)) + + expect(context.deployID).toBe(deployID) + expect(context.primaryRegion).toBe('us-east-1') + expect(context.siteID).toBe(siteID) + expect(context.token).toBe(apiToken) + }) +}) diff --git a/src/main.ts b/src/main.ts index 7dc624d..424465d 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,3 +1,4 @@ +export { setEnvironmentContext } from './environment.ts' export { connectLambda } from './lambda_compat.ts' export { getDeployStore, getStore } from './store_factory.ts' export { listStores } from './store_list.ts'