mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-08-07 17:48:54 +00:00
[ADF-1115] selection management for DT/DL components (#2100)
* row select/unselect dom events for DT - new events for datatable - improved unit tests for empty content placeholders * improved selection management for DT * selection management for document list * fix tests
This commit is contained in:
committed by
Eugenio Romano
parent
e500cc177b
commit
0f1f83492c
@@ -15,31 +15,42 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Injector } from '@angular/core';
|
||||
import { getTestBed, TestBed } from '@angular/core/testing';
|
||||
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { CoreModule } from 'ng2-alfresco-core';
|
||||
import { DataTableCellComponent } from '../components/datatable/datatable-cell.component';
|
||||
import { DataTableComponent } from '../components/datatable/datatable.component';
|
||||
import { MaterialModule } from '../material.module';
|
||||
import { LoadingContentTemplateDirective } from './loading-template.directive';
|
||||
|
||||
describe('LoadingContentTemplateDirective', () => {
|
||||
let injector: Injector;
|
||||
let loadingContentTemplateDirective: LoadingContentTemplateDirective;
|
||||
|
||||
beforeEach(() => {
|
||||
let dataTable: DataTableComponent;
|
||||
let directive: LoadingContentTemplateDirective;
|
||||
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [
|
||||
MaterialModule,
|
||||
CoreModule.forRoot()
|
||||
],
|
||||
providers: [
|
||||
LoadingContentTemplateDirective,
|
||||
DataTableComponent
|
||||
declarations: [
|
||||
DataTableComponent,
|
||||
DataTableCellComponent,
|
||||
LoadingContentTemplateDirective
|
||||
]
|
||||
});
|
||||
injector = getTestBed();
|
||||
loadingContentTemplateDirective = injector.get(LoadingContentTemplateDirective);
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
let fixture = TestBed.createComponent(DataTableComponent);
|
||||
dataTable = fixture.componentInstance;
|
||||
directive = new LoadingContentTemplateDirective(dataTable);
|
||||
});
|
||||
|
||||
it('is defined', () => {
|
||||
expect(loadingContentTemplateDirective).toBeDefined();
|
||||
it('applies template to the datatable', () => {
|
||||
const template = {};
|
||||
directive.template = template;
|
||||
directive.ngAfterContentInit();
|
||||
expect(dataTable.loadingTemplate).toBe(template);
|
||||
});
|
||||
});
|
||||
|
@@ -30,7 +30,9 @@ export class LoadingContentTemplateDirective implements AfterContentInit {
|
||||
}
|
||||
|
||||
ngAfterContentInit() {
|
||||
this.dataTable.loadingTemplate = this.template;
|
||||
if (this.dataTable) {
|
||||
this.dataTable.loadingTemplate = this.template;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -15,31 +15,42 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Injector } from '@angular/core';
|
||||
import { getTestBed, TestBed } from '@angular/core/testing';
|
||||
import { async, getTestBed, TestBed } from '@angular/core/testing';
|
||||
import { CoreModule } from 'ng2-alfresco-core';
|
||||
import { DataTableCellComponent } from '../components/datatable/datatable-cell.component';
|
||||
import { DataTableComponent } from '../components/datatable/datatable.component';
|
||||
import { MaterialModule } from '../material.module';
|
||||
import { NoContentTemplateDirective } from './no-content-template.directive';
|
||||
|
||||
describe('NoContentTemplateDirective', () => {
|
||||
let injector: Injector;
|
||||
let noContentTemplateDirective: NoContentTemplateDirective;
|
||||
|
||||
beforeEach(() => {
|
||||
let dataTable: DataTableComponent;
|
||||
let directive: NoContentTemplateDirective;
|
||||
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [
|
||||
MaterialModule,
|
||||
CoreModule.forRoot()
|
||||
],
|
||||
providers: [
|
||||
NoContentTemplateDirective,
|
||||
DataTableComponent
|
||||
declarations: [
|
||||
DataTableComponent,
|
||||
DataTableCellComponent,
|
||||
NoContentTemplateDirective
|
||||
]
|
||||
});
|
||||
injector = getTestBed();
|
||||
noContentTemplateDirective = injector.get(NoContentTemplateDirective);
|
||||
}).compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
let fixture = TestBed.createComponent(DataTableComponent);
|
||||
dataTable = fixture.componentInstance;
|
||||
directive = new NoContentTemplateDirective(dataTable);
|
||||
});
|
||||
|
||||
it('is defined', () => {
|
||||
expect(noContentTemplateDirective).toBeDefined();
|
||||
it('applies template to the datatable', () => {
|
||||
const template = {};
|
||||
directive.template = template;
|
||||
directive.ngAfterContentInit();
|
||||
expect(dataTable.noContentTemplate).toBe(template);
|
||||
});
|
||||
});
|
||||
|
@@ -30,6 +30,8 @@ export class NoContentTemplateDirective implements AfterContentInit {
|
||||
}
|
||||
|
||||
ngAfterContentInit() {
|
||||
this.dataTable.noContentTemplate = this.template;
|
||||
if (this.dataTable) {
|
||||
this.dataTable.noContentTemplate = this.template;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user