@storecraft/database-turso
Version:
`Storecraft` database driver for `Turso` (cloud sqlite)
46 lines (39 loc) • 1.21 kB
JavaScript
import 'dotenv/config';
import { App } from '@storecraft/core';
import { NodePlatform } from '@storecraft/core/platform/node';
import { api } from '@storecraft/core/test-runner'
import { LibSQL } from '../index.js';
import { migrateToLatest } from '../migrate.js';
export const create_app = async () => {
return new App(
{
auth_admins_emails: ['admin@sc.com'],
auth_secret_access_token: 'auth_secret_access_token',
auth_secret_refresh_token: 'auth_secret_refresh_token',
auth_secret_confirm_email_token: 'auth_secret_confirm_email_token',
auth_secret_forgot_password_token: 'auth_secret_forgot_password_token',
}
)
.withPlatform(new NodePlatform())
.withDatabase(
new LibSQL(
{
url: ':memory:',
prefers_batch_over_transactions: true,
}
)
).init();
}
async function test() {
const app = await create_app();
await migrateToLatest(app._.db, false);
Object.entries(api).slice(0, -1).forEach(
([name, runner]) => {
runner.create(app._.app).run();
}
);
const last_test = Object.values(api).at(-1).create(app._.app);
last_test.after(async ()=>{app._.db.disconnect()});
last_test.run();
}
test();