UNPKG

@hashgraph/solo

Version:

An opinionated CLI tool to deploy and manage private Hedera Networks.

34 lines 1.79 kB
// SPDX-License-Identifier: Apache-2.0 import { expect } from 'chai'; import { ImageCacheHandlerBuilder } from '../../../../src/integration/cache/impl/image-cache-handler-builder.js'; import { StaticCacheTargetProvider } from '../../../../src/integration/cache/target-providers/static-cache-target-provider.js'; import { ImageCacheHandler } from '../../../../src/integration/cache/impl/image-cache-handler.js'; describe('ImageCacheHandlerBuilder', () => { const engine = { pullImage: async () => undefined, saveImage: async () => undefined, loadImage: async () => undefined, loadImageArchiveIntoCluster: async () => undefined, removeImage: async () => undefined, }; it('should throw when provider is missing', () => { expect(() => new ImageCacheHandlerBuilder().engine(engine).build()).to.throw('ImageCacheHandlerBuilder: provider must be set'); }); it('should throw when engine is missing', () => { const provider = new StaticCacheTargetProvider([]); expect(() => new ImageCacheHandlerBuilder().provider(provider).build()).to.throw('ImageCacheHandlerBuilder: engine must be set'); }); it('should build ImageCacheHandler when provider and engine are set', () => { const provider = new StaticCacheTargetProvider([]); const result = new ImageCacheHandlerBuilder() .provider(provider) .engine(engine) .build(); expect(result).to.be.instanceOf(ImageCacheHandler); }); it('fromYaml should return builder instance', () => { const result = ImageCacheHandlerBuilder.fromYaml('/tmp/images.yaml'); expect(result).to.be.instanceOf(ImageCacheHandlerBuilder); }); }); //# sourceMappingURL=image-cache-handler-builder.test.js.map