rhizome/util/app.ts

28 lines
748 B
TypeScript
Raw Permalink Normal View History

import {BasicCollection} from "../src/collection-basic";
import {RhizomeNode, RhizomeNodeConfig} from "../src/node";
const start = 5000;
const range = 5000;
const getRandomPort = () => Math.floor(start + range * Math.random());
export class App extends RhizomeNode {
apiUrl: string;
constructor(config?: Partial<RhizomeNodeConfig>) {
// Randomizing ports to try to avoid collisions between tests.
super({
publishBindPort: getRandomPort(),
requestBindPort: getRandomPort(),
httpPort: getRandomPort(),
...config,
});
const users = new BasicCollection("user");
users.rhizomeConnect(this);
2024-12-25 19:27:36 -06:00
const {httpAddr, httpPort} = this.config;
this.apiUrl = `http://${httpAddr}:${httpPort}/api`;
}
}