57 lines
2.0 KiB
TypeScript
57 lines
2.0 KiB
TypeScript
import { assertEquals, assertExists } from 'jsr:@std/assert';
|
|
import { afterAll, beforeAll, describe, it } from 'jsr:@std/testing/bdd';
|
|
import { createTestContainer, getTestPorts } from './helpers/server.helper.ts';
|
|
import { ObjectStorageContainer } from '../ts/index.ts';
|
|
import { defaultConfig } from '../ts/types.ts';
|
|
|
|
const PORT_INDEX = 0;
|
|
const ports = getTestPorts(PORT_INDEX);
|
|
|
|
describe('ObjectStorageContainer lifecycle', { sanitizeResources: false, sanitizeOps: false }, () => {
|
|
let container: ObjectStorageContainer;
|
|
|
|
it('should create container with default config values', () => {
|
|
const c = new ObjectStorageContainer();
|
|
assertEquals(c.config.objstPort, defaultConfig.objstPort);
|
|
assertEquals(c.config.uiPort, defaultConfig.uiPort);
|
|
assertEquals(c.config.region, defaultConfig.region);
|
|
assertEquals(c.config.adminPassword, defaultConfig.adminPassword);
|
|
});
|
|
|
|
it('should create container with custom config overrides', () => {
|
|
container = createTestContainer(PORT_INDEX);
|
|
assertEquals(container.config.objstPort, ports.objstPort);
|
|
assertEquals(container.config.uiPort, ports.uiPort);
|
|
assertEquals(container.config.adminPassword, 'testpassword');
|
|
assertEquals(container.config.accessCredentials[0].accessKeyId, 'testkey');
|
|
});
|
|
|
|
it('should start successfully', async () => {
|
|
await container.start();
|
|
assertEquals(container.startedAt > 0, true);
|
|
});
|
|
|
|
it('should have s3Client initialized after start', () => {
|
|
assertExists(container.s3Client);
|
|
});
|
|
|
|
it('should have smartstorageInstance initialized after start', () => {
|
|
assertExists(container.smartstorageInstance);
|
|
});
|
|
|
|
it('should have policyManager with empty policies', () => {
|
|
assertExists(container.policyManager);
|
|
const policies = container.policyManager.listPolicies();
|
|
assertEquals(policies.length, 0);
|
|
});
|
|
|
|
it('should have opsServer started', () => {
|
|
assertExists(container.opsServer);
|
|
assertExists(container.opsServer.server);
|
|
});
|
|
|
|
it('should stop cleanly', async () => {
|
|
await container.stop();
|
|
});
|
|
});
|