Skip to content
This repository was archived by the owner on May 1, 2020. It is now read-only.

Commit 5a97ba5

Browse files
committed
refactor(deep-linking): set default segment value to filename without extension
set default segment value to filename without extension
1 parent 526ed58 commit 5a97ba5

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

src/deep-linking/util.spec.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ export class HomePage {
217217

218218
const result = util.getDeepLinkDecoratorContentForSourceFile(sourceFile);
219219
expect(result.name).toEqual('HomePage');
220-
expect(result.segment).toEqual(null);
220+
expect(result.segment).toEqual('path');
221221
expect(result.defaultHistory[0]).toEqual('page-one');
222222
expect(result.defaultHistory[1]).toEqual('page-two');
223223
expect(result.priority).toEqual('high');
@@ -267,13 +267,13 @@ export class HomePage {
267267
268268
`;
269269

270-
const knownPath = join(process.cwd(), 'some', 'fake', 'path');
270+
const knownPath = join(process.cwd(), 'myApp', 'src', 'pages', 'about.ts');
271271

272272
const sourceFile = tsUtils.getTypescriptSourceFile(knownPath, knownContent);
273273

274274
const result = util.getDeepLinkDecoratorContentForSourceFile(sourceFile);
275275
expect(result.name).toEqual('HomePage');
276-
expect(result.segment).toEqual(null);
276+
expect(result.segment).toEqual('about');
277277
expect(result.defaultHistory).toBeTruthy();
278278
expect(result.defaultHistory.length).toEqual(0);
279279
expect(result.priority).toEqual('high');
@@ -328,7 +328,7 @@ export class HomePage {
328328

329329
const result = util.getDeepLinkDecoratorContentForSourceFile(sourceFile);
330330
expect(result.name).toEqual('HomePage');
331-
expect(result.segment).toEqual(null);
331+
expect(result.segment).toEqual('path');
332332
expect(result.defaultHistory).toBeTruthy();
333333
expect(result.defaultHistory.length).toEqual(0);
334334
expect(result.priority).toEqual('low');
@@ -376,13 +376,13 @@ export class HomePage {
376376
377377
`;
378378

379-
const knownPath = join(process.cwd(), 'some', 'fake', 'path');
379+
const knownPath = join(process.cwd(), 'some', 'fake', 'path.ts');
380380

381381
const sourceFile = tsUtils.getTypescriptSourceFile(knownPath, knownContent);
382382

383383
const result = util.getDeepLinkDecoratorContentForSourceFile(sourceFile);
384384
expect(result.name).toEqual('HomePage');
385-
expect(result.segment).toEqual(null);
385+
expect(result.segment).toEqual('path');
386386
expect(result.defaultHistory).toBeTruthy();
387387
expect(result.defaultHistory.length).toEqual(0);
388388
expect(result.priority).toEqual('low');
@@ -1214,15 +1214,15 @@ export class PageThreeModule {
12141214
expect(results.length).toEqual(3);
12151215

12161216
expect(results[0].name).toEqual('SomeOtherName');
1217-
expect(results[0].segment).toEqual(null);
1217+
expect(results[0].segment).toEqual('page-one');
12181218
expect(results[0].priority).toEqual('low');
12191219
expect(results[0].defaultHistory.length).toEqual(0);
12201220
expect(results[0].absolutePath).toEqual(join(srcDir, 'pages', 'page-one', 'page-one.module.ts'));
12211221
expect(results[0].userlandModulePath).toEqual('../pages/page-one/page-one.module');
12221222
expect(results[0].className).toEqual('PageOneModule');
12231223

12241224
expect(results[1].name).toEqual('PageTwo');
1225-
expect(results[1].segment).toEqual(null);
1225+
expect(results[1].segment).toEqual('page-two');
12261226
expect(results[1].priority).toEqual('low');
12271227
expect(results[1].defaultHistory.length).toEqual(0);
12281228
expect(results[1].absolutePath).toEqual(join(srcDir, 'pages', 'page-two', 'page-two.module.ts'));

src/deep-linking/util.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ export function getNgModuleDataFromPage(appNgModuleFilePath: string, filePath: s
8888

8989
export function getDeepLinkDecoratorContentForSourceFile(sourceFile: SourceFile): DeepLinkDecoratorAndClass {
9090
const classDeclarations = getClassDeclarations(sourceFile);
91-
91+
const defaultSegment = basename(changeExtension(sourceFile.fileName, ''));
9292
const list: DeepLinkDecoratorAndClass[] = [];
9393

9494
classDeclarations.forEach(classDeclaration => {
@@ -107,7 +107,7 @@ export function getDeepLinkDecoratorContentForSourceFile(sourceFile: SourceFile)
107107
}
108108

109109
const deepLinkName = getStringValueFromDeepLinkDecorator(sourceFile, propertyList, className, DEEPLINK_DECORATOR_NAME_ATTRIBUTE);
110-
const deepLinkSegment = getStringValueFromDeepLinkDecorator(sourceFile, propertyList, null, DEEPLINK_DECORATOR_SEGMENT_ATTRIBUTE);
110+
const deepLinkSegment = getStringValueFromDeepLinkDecorator(sourceFile, propertyList, defaultSegment, DEEPLINK_DECORATOR_SEGMENT_ATTRIBUTE);
111111
const deepLinkPriority = getStringValueFromDeepLinkDecorator(sourceFile, propertyList, 'low', DEEPLINK_DECORATOR_PRIORITY_ATTRIBUTE);
112112
const deepLinkDefaultHistory = getArrayValueFromDeepLinkDecorator(sourceFile, propertyList, [], DEEPLINK_DECORATOR_DEFAULT_HISTORY_ATTRIBUTE);
113113
const rawStringContent = getNodeStringContent(sourceFile, decorator.expression);

0 commit comments

Comments
 (0)