Skip to content

Commit 79c3a83

Browse files
TmasterGeorgii Rychko
authored andcommitted
Support Rename using the Controller (#137)
* Allow expanding the node once. * Support user renaming with the tree-controller * Remove is expanding * Formatting code * Adding test for StartRenaming() * Adding semicolon :) * Changing startRename -> StartRenaming and changing test name
1 parent fbd16c2 commit 79c3a83

File tree

2 files changed

+24
-7
lines changed

2 files changed

+24
-7
lines changed

src/tree-controller.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,4 +85,9 @@ export class TreeController {
8585
this.tree.setChildren(children);
8686
}
8787
}
88+
89+
public startRenaming(): void {
90+
this.tree.markAsBeingRenamed();
91+
92+
}
8893
}

test/tree-controller.spec.ts

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { NodeMenuComponent } from '../src/menu/node-menu.component';
1111
import { NodeDraggableService } from '../src/draggable/node-draggable.service';
1212
import { NodeDraggableDirective } from '../src/draggable/node-draggable.directive';
1313
import { NodeEditableDirective } from '../src/editable/node-editable.directive';
14+
import { TreeStatus } from '../src/tree.types';
1415
import * as EventUtils from '../src/utils/event.utils';
1516
import { SafeHtmlPipe } from '../src/utils/safe-html.pipe';
1617

@@ -59,7 +60,7 @@ class TestComponent {
5960

6061
@ViewChild('lordTreeInstance') public lordTreeComponent;
6162

62-
public constructor(public treeHolder: ElementRef) {}
63+
public constructor(public treeHolder: ElementRef) { }
6364
}
6465

6566
describe('TreeController', () => {
@@ -229,8 +230,8 @@ describe('TreeController', () => {
229230
childController.addChild({
230231
value: 'N',
231232
children: [
232-
{value: 'N1'},
233-
{value: 'N2'},
233+
{ value: 'N1' },
234+
{ value: 'N2' },
234235
]
235236
});
236237

@@ -304,8 +305,8 @@ describe('TreeController', () => {
304305
const childController = treeService.getController(lordInternalTreeInstance.tree.id);
305306

306307
childController.setChildren([
307-
{value: 'N1'},
308-
{value: 'N2'},
308+
{ value: 'N1' },
309+
{ value: 'N2' },
309310
]);
310311

311312
fixture.detectChanges();
@@ -327,14 +328,25 @@ describe('TreeController', () => {
327328
const childController = treeService.getController(child.componentInstance.tree.id);
328329

329330
childController.setChildren([
330-
{value: 'N1'},
331-
{value: 'N2'},
331+
{ value: 'N1' },
332+
{ value: 'N2' },
332333
]);
333334

334335
fixture.detectChanges();
335336

336337
expect(childrenOf(child).length).toEqual(0);
337338
});
339+
340+
it('knows how to transfer a node into a BeingRenamed state', () => {
341+
const lordController = treeService.getController(lordInternalTreeInstance.tree.id);
342+
expect(lordInternalTreeInstance.tree.isBeingRenamed()).toEqual(false);
343+
344+
lordController.startRenaming();
345+
346+
fixture.detectChanges();
347+
348+
expect(lordInternalTreeInstance.tree.isBeingRenamed()).toEqual(true);
349+
});
338350
});
339351

340352
function nodeNameOf(internalTreeDebugElement: DebugElement): string {

0 commit comments

Comments
 (0)