Skip to content

Commit 232dede

Browse files
committed
chore: general clean up around
fix missing renames remove unneeded tests use helper method for dry in resolver test remove unneeded file
1 parent 69c9a96 commit 232dede

8 files changed

+66
-80
lines changed

projects/ngx-meta/src/core/src/metadata-json-resolver.spec.ts

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ describe('MetadataJsonResolver', () => {
5555
})
5656
})
5757
describe('like when key does not exist', () => {
58-
const metadata = makeMetadata([key])
58+
const metadata = makeMetadata([key, subKey])
5959
const values = {}
6060

6161
testGlobalMayBeRetrieved(metadata, values)
@@ -70,16 +70,7 @@ describe('MetadataJsonResolver', () => {
7070
})
7171

7272
describe('like when key is null', () => {
73-
const metadata = makeMetadata([key])
74-
const values = { [key]: null }
75-
76-
it('should return null', () => {
77-
expect(sut.get(metadata, values)).toBeNull()
78-
})
79-
})
80-
81-
describe('like when key is null and there is sub key', () => {
82-
const metadata = makeMetadata([key, subKey, 'dummy'])
73+
const metadata = makeMetadata([key, subKey])
8374
const values = { [key]: null }
8475

8576
it('should return null', () => {

projects/ngx-meta/src/core/src/metadata-registry.spec.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,53 +6,53 @@ import { MockProvider } from 'ng-mocks'
66

77
describe('MetadataRegistry', () => {
88
const dummyId = 'dummyId'
9-
const dummyMetadata = makeMetadataProvider({ id: dummyId })
9+
const dummyMetadataProvider = makeMetadataProvider({ id: dummyId })
1010

1111
it('should register metadata from DI system', () => {
12-
const sut = makeSut({ metadata: [dummyMetadata] })
12+
const sut = makeSut({ metadataProviders: [dummyMetadataProvider] })
1313

1414
const allMetadata = [...sut.getAll()]
1515
expect(allMetadata).toHaveSize(1)
16-
expect(allMetadata).toEqual([dummyMetadata])
16+
expect(allMetadata).toEqual([dummyMetadataProvider])
1717
})
1818

1919
it('should register the given metadata', () => {
2020
const sut = makeSut()
2121

22-
sut.register(dummyMetadata)
22+
sut.register(dummyMetadataProvider)
2323

2424
const allMetadata = [...sut.getAll()]
2525
expect(allMetadata).toHaveSize(1)
26-
expect(allMetadata).toEqual([dummyMetadata])
26+
expect(allMetadata).toEqual([dummyMetadataProvider])
2727
})
2828

2929
it('should not register twice the same metadata', () => {
30-
const sameDummyMetadata = makeMetadataProvider({
30+
const sameDummyMetadataProvider = makeMetadataProvider({
3131
id: dummyId,
3232
spyName: 'duplicated metadata set',
3333
})
3434
const sut = makeSut()
3535

36-
sut.register(dummyMetadata)
37-
sut.register(sameDummyMetadata)
36+
sut.register(dummyMetadataProvider)
37+
sut.register(sameDummyMetadataProvider)
3838

3939
const allMetadata = [...sut.getAll()]
4040
expect(allMetadata).toHaveSize(1)
41-
expect(allMetadata).toEqual([dummyMetadata])
41+
expect(allMetadata).toEqual([dummyMetadataProvider])
4242
})
4343
})
4444

4545
function makeSut(
4646
opts: {
47-
metadata?: ReadonlyArray<MetadataProvider<unknown>>
47+
metadataProviders?: ReadonlyArray<MetadataProvider<unknown>>
4848
} = {},
4949
) {
5050
TestBed.configureTestingModule({
5151
providers: [
5252
//👇 Mocking sut to ensure injected metadata calls registry function
5353
MetadataRegistry,
54-
...(opts.metadata
55-
? opts.metadata.map((metadata) =>
54+
...(opts.metadataProviders
55+
? opts.metadataProviders.map((metadata) =>
5656
MockProvider(MetadataProvider, metadata, 'useValue', true),
5757
)
5858
: []),

projects/ngx-meta/src/core/src/metadata-registry.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@ export class MetadataRegistry {
88
constructor(
99
@Optional()
1010
@Inject(MetadataProvider)
11-
private readonly injectedMetadata: ReadonlyArray<
11+
private readonly injectedProviders: ReadonlyArray<
1212
MetadataProvider<unknown>
1313
> | null,
1414
) {
15-
this.injectedMetadata?.forEach((metadata) => this.register(metadata))
15+
this.injectedProviders?.forEach((metadata) => this.register(metadata))
1616
}
1717

18-
register(metadata: MetadataProvider<unknown>) {
19-
if (this.byId.has(metadata.metadata.id)) {
18+
register(provider: MetadataProvider<unknown>) {
19+
if (this.byId.has(provider.metadata.id)) {
2020
return
2121
}
22-
this.byId.set(metadata.metadata.id, metadata)
22+
this.byId.set(provider.metadata.id, provider)
2323
}
2424

2525
getAll(): Iterable<MetadataProvider<unknown>> {

projects/ngx-meta/src/core/src/metadata-resolver.spec.ts

Lines changed: 20 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@ import { makeGlobalMetadata } from './make-global-metadata'
1414
describe('MetadataResolver', () => {
1515
enableAutoSpy()
1616
let sut: MetadataResolver
17-
let dummyMetadataDefinition: Metadata
17+
let dummyMetadata: Metadata
1818
let jsonResolver: jasmine.SpyObj<MetadataJsonResolver>
1919
let routeMetadataValues: jasmine.SpyObj<RouteMetadataValues>
2020
let defaultsService: jasmine.SpyObj<DefaultsService>
2121

2222
beforeEach(() => {
23-
dummyMetadataDefinition = makeGlobalMetadata('dummy')
23+
dummyMetadata = makeGlobalMetadata('dummy')
2424
sut = makeSut()
2525
jsonResolver = TestBed.inject(
2626
MetadataJsonResolver,
@@ -35,7 +35,7 @@ describe('MetadataResolver', () => {
3535

3636
function mockJsonResolver(returnMap: Map<MetadataValues, unknown>) {
3737
jsonResolver.get.and.callFake(
38-
<T>(def: Metadata, values: MetadataValues) =>
38+
<T>(metadata: Metadata, values: MetadataValues) =>
3939
returnMap.get(values) as MaybeUndefined<T>,
4040
)
4141
}
@@ -56,16 +56,16 @@ describe('MetadataResolver', () => {
5656
})
5757

5858
it('should resolve value using values', () => {
59-
sut.get(dummyMetadataDefinition, dummyValues)
59+
sut.get(dummyMetadata, dummyValues)
6060

6161
expect(jsonResolver.get).toHaveBeenCalledWith(
62-
dummyMetadataDefinition,
62+
dummyMetadata,
6363
dummyValues,
6464
)
6565
})
6666

6767
it('should return its value', () => {
68-
expect(sut.get(dummyMetadataDefinition, dummyValues)).toEqual(value)
68+
expect(sut.get(dummyMetadata, dummyValues)).toEqual(value)
6969
})
7070
})
7171

@@ -76,17 +76,17 @@ describe('MetadataResolver', () => {
7676
})
7777

7878
it('should resolve value using route metadata values', () => {
79-
sut.get(dummyMetadataDefinition, dummyValues)
79+
sut.get(dummyMetadata, dummyValues)
8080

8181
expect(routeMetadataValues.get).toHaveBeenCalledOnceWith()
8282
expect(jsonResolver.get).toHaveBeenCalledWith(
83-
dummyMetadataDefinition,
83+
dummyMetadata,
8484
routeValues,
8585
)
8686
})
8787

8888
it('should return value obtained from route metadata values', () => {
89-
expect(sut.get(dummyMetadataDefinition, dummyValues)).toEqual(value)
89+
expect(sut.get(dummyMetadata, dummyValues)).toEqual(value)
9090
})
9191
})
9292

@@ -97,17 +97,17 @@ describe('MetadataResolver', () => {
9797
})
9898

9999
it('should resolve value using default values', () => {
100-
sut.get(dummyMetadataDefinition, dummyValues)
100+
sut.get(dummyMetadata, dummyValues)
101101

102102
expect(defaultsService.get).toHaveBeenCalledOnceWith()
103103
expect(jsonResolver.get).toHaveBeenCalledWith(
104-
dummyMetadataDefinition,
104+
dummyMetadata,
105105
defaultValues,
106106
)
107107
})
108108

109109
it('should return value obtained from defaults', () => {
110-
expect(sut.get(dummyMetadataDefinition, dummyValues)).toEqual(value)
110+
expect(sut.get(dummyMetadata, dummyValues)).toEqual(value)
111111
})
112112
})
113113

@@ -129,7 +129,7 @@ describe('MetadataResolver', () => {
129129
})
130130

131131
it('should return the merged object, with value props having more priority', () => {
132-
expect(sut.get(dummyMetadataDefinition, dummyValues)).toEqual({
132+
expect(sut.get(dummyMetadata, dummyValues)).toEqual({
133133
...routeValueObject,
134134
...valueObject,
135135
})
@@ -141,29 +141,23 @@ describe('MetadataResolver', () => {
141141

142142
beforeEach(() => {
143143
routeMetadataValues.get.and.returnValue(routeValues)
144-
jsonResolver.get.and.callFake(
145-
<T>(def: Metadata, values: MetadataValues) => {
146-
switch (values) {
147-
case routeValues:
148-
return routeValue as T
149-
case values:
150-
return value as T
151-
default:
152-
throw new Error('Unexpected values, cannot mock')
153-
}
154-
},
144+
mockJsonResolver(
145+
new Map<MetadataValues, unknown>([
146+
[routeValues, routeValue],
147+
[dummyValues, value],
148+
]),
155149
)
156150
})
157151

158152
it('should return value from values object', () => {
159-
expect(sut.get(dummyMetadataDefinition, dummyValues)).toEqual(value)
153+
expect(sut.get(dummyMetadata, dummyValues)).toEqual(value)
160154
})
161155
})
162156
})
163157

164158
describe('when neither value, route value or default value exists', () => {
165159
it('should return nothing', () => {
166-
expect(sut.get(dummyMetadataDefinition, dummyValues)).toBeUndefined()
160+
expect(sut.get(dummyMetadata, dummyValues)).toBeUndefined()
167161
})
168162
})
169163
})

projects/ngx-meta/src/core/src/metadata-resolver.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,14 @@ export class MetadataResolver {
1515
private readonly defaultsService: DefaultsService,
1616
) {}
1717

18-
get<T>(metadataDefinition: Metadata, values: MetadataValues): T | undefined {
19-
const value = this.jsonResolver.get(metadataDefinition, values)
18+
get<T>(metadata: Metadata, values: MetadataValues): T | undefined {
19+
const value = this.jsonResolver.get(metadata, values)
2020
const routeValue = this.jsonResolver.get(
21-
metadataDefinition,
21+
metadata,
2222
this.routeMetadataValues.get(),
2323
)
2424
const defaultValue = this.jsonResolver.get(
25-
metadataDefinition,
25+
metadata,
2626
this.defaultsService.get(),
2727
)
2828
const effectiveValue =

projects/ngx-meta/src/core/src/metadata.service.spec.ts

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,15 @@ describe('MetadataService', () => {
2222
})
2323

2424
describe('set', () => {
25-
const firstMetadata = makeMetadataProvider({ id: 'first' })
26-
const secondMetadata = makeMetadataProvider({ id: 'second' })
25+
const firstMetadataProvider = makeMetadataProvider({ id: 'first' })
26+
const secondMetadataProvider = makeMetadataProvider({ id: 'second' })
2727
const dummyValues = {}
2828

2929
beforeEach(() => {
30-
metadataRegistry.getAll.and.returnValue([firstMetadata, secondMetadata])
30+
metadataRegistry.getAll.and.returnValue([
31+
firstMetadataProvider,
32+
secondMetadataProvider,
33+
])
3134
})
3235

3336
it('should set each metadata using resolved values', () => {
@@ -38,9 +41,9 @@ describe('MetadataService', () => {
3841
const dummySecondMetadataValue = 'secondMetadataValue'
3942
resolver.get.and.callFake(<T>(definition: Metadata) => {
4043
switch (definition) {
41-
case firstMetadata.metadata:
44+
case firstMetadataProvider.metadata:
4245
return dummyFirstMetadataValue as MaybeUndefined<T>
43-
case secondMetadata.metadata:
46+
case secondMetadataProvider.metadata:
4447
return dummySecondMetadataValue as MaybeUndefined<T>
4548
default:
4649
throw new Error('Unexpected metadata')
@@ -51,15 +54,19 @@ describe('MetadataService', () => {
5154
expect(metadataRegistry.getAll).toHaveBeenCalledOnceWith()
5255
expect(resolver.get).toHaveBeenCalledTimes(2)
5356
expect(resolver.get).toHaveBeenCalledWith(
54-
firstMetadata.metadata,
57+
firstMetadataProvider.metadata,
5558
dummyValues,
5659
)
57-
expect(firstMetadata.set).toHaveBeenCalledWith(dummyFirstMetadataValue)
60+
expect(firstMetadataProvider.set).toHaveBeenCalledWith(
61+
dummyFirstMetadataValue,
62+
)
5863
expect(resolver.get).toHaveBeenCalledWith(
59-
secondMetadata.metadata,
64+
secondMetadataProvider.metadata,
6065
dummyValues,
6166
)
62-
expect(secondMetadata.set).toHaveBeenCalledWith(dummySecondMetadataValue)
67+
expect(secondMetadataProvider.set).toHaveBeenCalledWith(
68+
dummySecondMetadataValue,
69+
)
6370
})
6471

6572
it('should set values for route when finished', () => {

projects/ngx-meta/src/core/src/provide-metadata-factory.ts

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,13 @@ export type MetadataSetterFactory<T> = (
77
...deps: Exclude<FactoryProvider['deps'], undefined>
88
) => MetadataSetter<T>
99

10-
const makeMetadata = <T>(
11-
definition: Metadata,
10+
const makeMetadataProvider = <T>(
11+
metadata: Metadata,
1212
set: MetadataSetter<T>,
13-
): MetadataProvider<T> => {
14-
return {
15-
metadata: definition,
16-
set,
17-
}
18-
}
13+
): MetadataProvider<T> => ({
14+
metadata,
15+
set,
16+
})
1917

2018
export function provideMetadataFactory<T>(
2119
definition: Metadata,
@@ -26,7 +24,7 @@ export function provideMetadataFactory<T>(
2624
provide: MetadataProvider,
2725
multi: true,
2826
useFactory: (...deps: unknown[]) =>
29-
makeMetadata(definition, setterFactory(...deps)),
27+
makeMetadataProvider(definition, setterFactory(...deps)),
3028
deps,
3129
}
3230
}

projects/ngx-meta/src/open-graph/src/open-graph-scope.ts

Lines changed: 0 additions & 4 deletions
This file was deleted.

0 commit comments

Comments
 (0)