22 lines
827 B
TypeScript
22 lines
827 B
TypeScript
import { describe, it, expect } from 'vitest';
|
|
import { backupInternals } from './run.js';
|
|
|
|
describe('backup internals', () => {
|
|
it('builds minio host URL with protocol and encoded credentials', () => {
|
|
const host = backupInternals.buildMinioHost({
|
|
endpoint: 'localhost:9000',
|
|
accessKey: 'minio-admin',
|
|
secretKey: 's3cr3t/with:chars',
|
|
secure: false,
|
|
});
|
|
|
|
expect(host).toBe('http://minio-admin:s3cr3t%2Fwith%3Achars@localhost:9000');
|
|
});
|
|
|
|
it('builds object key from prefix and file name', () => {
|
|
expect(backupInternals.buildObjectKey('flynn/daily', 'a.tar.gz')).toBe('flynn/daily/a.tar.gz');
|
|
expect(backupInternals.buildObjectKey('/flynn/daily/', 'a.tar.gz')).toBe('flynn/daily/a.tar.gz');
|
|
expect(backupInternals.buildObjectKey('', 'a.tar.gz')).toBe('a.tar.gz');
|
|
});
|
|
});
|