diff --git a/src/app/board/column/column.component.html b/src/app/board/column/column.component.html index a920855..a5d19fe 100644 --- a/src/app/board/column/column.component.html +++ b/src/app/board/column/column.component.html @@ -11,7 +11,7 @@ {{ columnData.name }} - {{ columnData.ownTask && columnData.ownTask.length }} + {{ columnData.ownTask && columnData.ownTask.length || 0 }} + [remove-task]="getRemoveTaskFunction(task.id)" + [collapse]="collapseTasks"> diff --git a/src/app/board/task/task.component.html b/src/app/board/task/task.component.html index b2bc60d..9f9ad9d 100644 --- a/src/app/board/task/task.component.html +++ b/src/app/board/task/task.component.html @@ -4,15 +4,17 @@

+ [ngClass]="{ 'icon-minus-squared-alt': !isCollapsed, + 'icon-plus-squared-alt': isCollapsed }" + title="{{ isCollapsed ? 'Expand' : 'Collapse' }} Task" + (click)="isCollapsed = !isCollapsed"> {{ taskData.title }} {{ taskData.points }}

-
+
diff --git a/src/app/board/task/task.component.ts b/src/app/board/task/task.component.ts index 02f4027..dde2ebc 100644 --- a/src/app/board/task/task.component.ts +++ b/src/app/board/task/task.component.ts @@ -39,6 +39,7 @@ export class TaskDisplay implements OnInit { @Input('add-task') addTask: Function; @Input('edit-task') editTask: Function; @Input('remove-task') removeTask: Function; + @Input('collapse') isCollapsed: boolean; @Input('boards') set boards(boards: Array) { @@ -51,6 +52,8 @@ export class TaskDisplay implements OnInit { private boardService: BoardService, private modal: ModalService, private notes: NotificationsService) { + this.contextMenuItems = []; + auth.userChanged.subscribe(() => { this.userOptions = auth.userOptions; }); @@ -117,7 +120,6 @@ export class TaskDisplay implements OnInit { this.boardsList.forEach((board: Board) => { if (board.name !== this.activeBoard.name) { menuText += ''; - } }); diff --git a/test/app/board/board.component.spec.js b/test/app/board/board.component.spec.js index da3d114..34de3ac 100644 --- a/test/app/board/board.component.spec.js +++ b/test/app/board/board.component.spec.js @@ -15,7 +15,7 @@ describe('BoardDisplay', () => { AuthServiceMock, BoardServiceMock); }); - it('sets the title when contstructed', () => { + it('sets the title when constructed', () => { expect(title.getTitle()).to.equal('TaskBoard - Kanban App'); }); diff --git a/test/app/board/column/column.component.spec.js b/test/app/board/column/column.component.spec.js new file mode 100644 index 0000000..5b2d65f --- /dev/null +++ b/test/app/board/column/column.component.spec.js @@ -0,0 +1,23 @@ +/* global expect ElementRefMock AuthServiceMock NotificationsServiceMock StringsServiceMock BoardServiceMock ModalServiceMock */ +var path = '../../../../build/board/column/', + ColumnDisplay = require(path + 'column.component.js').ColumnDisplay; + +describe('ColumnDisplay', () => { + var column, + modalService; + + beforeEach(() => { + modalService = new ModalServiceMock(); + + column = new ColumnDisplay(ElementRefMock, AuthServiceMock, + new NotificationsServiceMock(), + modalService, StringsServiceMock, + BoardServiceMock); + }); + + it('has a context menu', () => { + expect(column.contextMenuItems).to.be.an('array'); + expect(column.contextMenuItems.length).to.equal(1); + }); +}); + diff --git a/test/app/board/task/task.component.spec.js b/test/app/board/task/task.component.spec.js new file mode 100644 index 0000000..8ffd605 --- /dev/null +++ b/test/app/board/task/task.component.spec.js @@ -0,0 +1,23 @@ +/* global expect AuthServiceMock SanitizerMock NotificationsServiceMock BoardServiceMock ModalServiceMock */ +var path = '../../../../build/board/task/', + TaskDisplay = require(path + 'task.component.js').TaskDisplay; + +describe('TaskDisplay', () => { + var task, + modalService; + + beforeEach(() => { + modalService = new ModalServiceMock(); + + task = new TaskDisplay(AuthServiceMock, SanitizerMock, + BoardServiceMock, modalService, + new NotificationsServiceMock()); + }); + + it('has a context menu', () => { + expect(task.contextMenuItems).to.be.an('array'); + expect(task.contextMenuItems.length).to.equal(0); + }); +}); + + diff --git a/test/app/mocks.js b/test/app/mocks.js index 2e30ea4..3e68a67 100644 --- a/test/app/mocks.js +++ b/test/app/mocks.js @@ -420,7 +420,7 @@ global.BoardServiceMock = { data: [ '', [] ] }); }, - activeBoardChanged: RxJs.Observable.of({}) + activeBoardChanged: RxJs.Observable.of({ columns: [] }) }; global.HttpMock = {