Justin Dalrymple d9cd4c9a91 refactor: 💡 Migrated to a monorepo structure
Gitbeaker has been split up into 5 subpackages: gitbeaker-core, gitbeaker-node, gitbeaker-cli, gitbeaker-browser and gitbeaker-requester-utils.

gitbeaker-[node,cli,browser] are enviroment
specific sub packages. For example, if you want to use gitbeaker in a NodeJS environment, use gitbeaker-node. gitbeaker-core is where all the
base logic exists, and gitbeaker-requester-utils is a collection of utility functions for making custom requester libraries.

BREAKING CHANGE: 🧨 This migration requires users to import specific subpackages. For NodeJS
usage, that would be @gitbeaker/node.
2020-02-02 16:53:54 +01:00

36 lines
782 B
TypeScript

import { bundler } from '../../../src/infrastructure';
/* eslint max-classes-per-file: 0 */
class Test1 {
public value: number;
constructor(value: number) {
this.value = value * 3;
}
}
class Test2 {
public value: number;
constructor(value: number) {
this.value = value * 2;
}
}
test('Classes passed to Bundler get merged', async () => {
const Bundle = bundler({ Test1, Test2 });
const services = new Bundle();
expect(services.Test1).toBeInstanceOf(Test1);
expect(services.Test2).toBeInstanceOf(Test2);
});
test('Classes passed to Bundler with options get initialized', async () => {
const Bundle = bundler({ Test1, Test2 });
const services = new Bundle(2);
expect(services.Test1.value).toBe(6);
expect(services.Test2.value).toBe(4);
});