40 lines
1.3 KiB
TypeScript
40 lines
1.3 KiB
TypeScript
|
import { expect, tap } from '@push.rocks/tapbundle';
|
||
|
import { Qenv } from '@push.rocks/qenv';
|
||
|
const testQenv = new Qenv('./', './.nogit/');
|
||
|
process.env.TESTING_CLOUDLY = 'true';
|
||
|
|
||
|
delete process.env.CLI_CALL;
|
||
|
|
||
|
import * as cloudly from '../ts/index.js';
|
||
|
|
||
|
let testCloudly: cloudly.Cloudly;
|
||
|
tap.test('first test', async () => {
|
||
|
const cloudlyConfig: cloudly.ICloudlyConfig = {
|
||
|
cfToken: testQenv.getEnvVarOnDemand('CF_TOKEN'),
|
||
|
environment: 'integration',
|
||
|
letsEncryptEmail: testQenv.getEnvVarOnDemand('LETSENCRYPT_EMAIL'),
|
||
|
publicUrl: testQenv.getEnvVarOnDemand('SERVEZONE_URL'),
|
||
|
publicPort: testQenv.getEnvVarOnDemand('SERVEZONE_PORT'),
|
||
|
mongoDescriptor: {
|
||
|
mongoDbName: testQenv.getEnvVarOnDemand('MONGODB_DATABASE'),
|
||
|
mongoDbUser: testQenv.getEnvVarOnDemand('MONGODB_USER'),
|
||
|
mongoDbPass: testQenv.getEnvVarOnDemand('MONGODB_PASSWORD'),
|
||
|
mongoDbUrl: testQenv.getEnvVarOnDemand('MONGODB_URL'),
|
||
|
},
|
||
|
digitalOceanToken: testQenv.getEnvVarOnDemand('DIGITALOCEAN_TOKEN'),
|
||
|
};
|
||
|
testCloudly = new cloudly.Cloudly(cloudlyConfig);
|
||
|
expect(testCloudly).toBeInstanceOf(cloudly.Cloudly);
|
||
|
});
|
||
|
|
||
|
tap.test('should init cloudly', async () => {
|
||
|
await testCloudly.start();
|
||
|
});
|
||
|
|
||
|
tap.test('should end the service', async (tools) => {
|
||
|
await testCloudly.stop();
|
||
|
tools.delayFor(1000).then(() => process.exit())
|
||
|
});
|
||
|
|
||
|
tap.start();
|