Skip to content

Commit

Permalink
Prettier
Browse files Browse the repository at this point in the history
  • Loading branch information
ashleigh committed Oct 11, 2018
1 parent 3d164e6 commit 516e085
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 23 deletions.
57 changes: 35 additions & 22 deletions src/__tests__/config.module.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ describe('Config Nest Module', () => {

@Configurable()
testConfig(server: { port: number }) {
return {serverPort: server.port};
return { serverPort: server.port };
}
}

Expand All @@ -66,16 +66,18 @@ describe('Config Nest Module', () => {
providers: [ComponentTest],
}).compile();
const componentTest = module.get<ComponentTest>(ComponentTest);
expect(componentTest.testConfig({port: 42})).toEqual({serverPort: 42});
expect(componentTest.testConfig({ port: 42 })).toEqual({ serverPort: 42 });
});
it('ConfigParam decorator on null argument', async () => {
@Injectable()
class ComponentTest {
constructor() {}

@Configurable()
testConfig(@ConfigParam('config.server') server: null | { port: number },) {
return {serverPort: server.port };
testConfig(
@ConfigParam('config.server') server: null | { port: number },
) {
return { serverPort: server.port };
}
}

Expand All @@ -86,7 +88,7 @@ describe('Config Nest Module', () => {
providers: [ComponentTest],
}).compile();
const componentTest = module.get<ComponentTest>(ComponentTest);
expect(componentTest.testConfig(null)).toEqual({serverPort: 2000});
expect(componentTest.testConfig(null)).toEqual({ serverPort: 2000 });
});
it('Multiple ConfigParam decorators', async () => {
@Injectable()
Expand All @@ -96,7 +98,7 @@ describe('Config Nest Module', () => {
@Configurable()
testConfig(
@ConfigParam('config.server') server?: { port: number },
@ConfigParam('config.stub') stub?: { port: number }
@ConfigParam('config.stub') stub?: { port: number },
) {
return { serverPort: server.port, stubPort: stub.port };
}
Expand All @@ -109,13 +111,16 @@ describe('Config Nest Module', () => {
providers: [ComponentTest],
}).compile();
const componentTest = module.get<ComponentTest>(ComponentTest);
expect(componentTest.testConfig()).toEqual({ serverPort: 2000, stubPort: 2000 });
expect(componentTest.testConfig()).toEqual({
serverPort: 2000,
stubPort: 2000,
});
});
it('ConfigParam decorators in a static factory method with injected service', async () => {
class ComponentTest {
constructor(
private readonly serverPort: number,
private readonly stubPort: number
private readonly stubPort: number,
) {}

testConfig() {
Expand All @@ -127,7 +132,7 @@ describe('Config Nest Module', () => {
@Configurable()
static async get(
@ConfigParam('config.server') server: any,
@ConfigParam('config.stub') stub: any
@ConfigParam('config.stub') stub: any,
) {
return new ComponentTest(server.port, stub.port);
}
Expand All @@ -137,34 +142,39 @@ describe('Config Nest Module', () => {
imports: [
ConfigModule.load(path.resolve(__dirname, '__stubs__', '**/*.ts')),
],
providers: [{
provide: 'ComponentTest',
useFactory: ComponentTestFactory.get,
inject: [ConfigService]
}],
providers: [
{
provide: 'ComponentTest',
useFactory: ComponentTestFactory.get,
inject: [ConfigService],
},
],
}).compile();

const componentTest = module.get<ComponentTest>('ComponentTest');
expect(componentTest.testConfig()).toEqual({serverPort: 2000, stubPort: 2000});
expect(componentTest.testConfig()).toEqual({
serverPort: 2000,
stubPort: 2000,
});
});

it('ConfigParam decorators in a static factory method with injected class', async () => {
class ComponentTest {
constructor(
private readonly serverPort: number,
private readonly stubPort: number
private readonly stubPort: number,
) {}

testConfig() {
return {serverPort: this.serverPort, stubPort: this.stubPort};
return { serverPort: this.serverPort, stubPort: this.stubPort };
}
}

class ComponentTestFactory {
@Configurable()
static async get(
@ConfigParam('config.server') server: any,
@ConfigParam('config.stub') stub: any
@ConfigParam('config.stub') stub: any,
) {
return new ComponentTest(server.port, stub.port);
}
Expand All @@ -177,18 +187,21 @@ describe('Config Nest Module', () => {
providers: [
{
provide: 'CONFIG_SERVICE_CLASS',
useValue: ConfigService
useValue: ConfigService,
},
{
provide: 'ComponentTest',
useFactory: ComponentTestFactory.get,
inject: ['CONFIG_SERVICE_CLASS']
}
inject: ['CONFIG_SERVICE_CLASS'],
},
],
}).compile();

const componentTest = module.get<ComponentTest>('ComponentTest');
expect(componentTest.testConfig()).toEqual({serverPort: 2000, stubPort: 2000});
expect(componentTest.testConfig()).toEqual({
serverPort: 2000,
stubPort: 2000,
});
});

it('ConfigParam decorator default value', async () => {
Expand Down
7 changes: 6 additions & 1 deletion src/decorators/ConfigParam.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,12 @@ export const ConfigParam = (
// Add this parameter
existingParameters.push({ parameterIndex, propertyKey, configKey, fallback });
// Update the required parameters for this method
Reflect.defineMetadata(CONFIG_PARAMS, existingParameters, target, propertyKey);
Reflect.defineMetadata(
CONFIG_PARAMS,
existingParameters,
target,
propertyKey,
);
return target;
};
export default ConfigParam;

0 comments on commit 516e085

Please sign in to comment.