mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-12 17:04:57 +00:00
ACS-8652: Noop Translation Module for better unit testing ergonomics (#10118)
This commit is contained in:
parent
f6e72f8a6f
commit
54ab9575d3
@ -26,6 +26,8 @@ import { ContentService } from '@alfresco/adf-content-services';
|
|||||||
import { ContentTestingModule } from 'lib/content-services/src/lib/testing/content.testing.module';
|
import { ContentTestingModule } from 'lib/content-services/src/lib/testing/content.testing.module';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [FolderCreateDirective],
|
||||||
template: ` <div [adf-create-folder]="parentNode" (success)="success($event)" title="create-title" [nodeType]="'cm:my-little-pony'"></div>`
|
template: ` <div [adf-create-folder]="parentNode" (success)="success($event)" title="create-title" [nodeType]="'cm:my-little-pony'"></div>`
|
||||||
})
|
})
|
||||||
class TestTypeComponent {
|
class TestTypeComponent {
|
||||||
@ -38,6 +40,8 @@ class TestTypeComponent {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [FolderCreateDirective],
|
||||||
template: `<div [adf-create-folder]="parentNode"></div>`
|
template: `<div [adf-create-folder]="parentNode"></div>`
|
||||||
})
|
})
|
||||||
class TestComponent {
|
class TestComponent {
|
||||||
@ -56,8 +60,7 @@ describe('FolderCreateDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ContentTestingModule],
|
imports: [ContentTestingModule, TestTypeComponent, TestComponent]
|
||||||
declarations: [TestTypeComponent, TestComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(TestComponent);
|
fixture = TestBed.createComponent(TestComponent);
|
||||||
element = fixture.debugElement.query(By.directive(FolderCreateDirective));
|
element = fixture.debugElement.query(By.directive(FolderCreateDirective));
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { AppConfigService, TranslationMock, TranslationService, UserPreferencesService } from '@alfresco/adf-core';
|
import { AppConfigService, NoopTranslateModule, UserPreferencesService } from '@alfresco/adf-core';
|
||||||
import {
|
import {
|
||||||
CategoryBody,
|
CategoryBody,
|
||||||
CategoryEntry,
|
CategoryEntry,
|
||||||
@ -30,8 +30,6 @@ import {
|
|||||||
} from '@alfresco/js-api';
|
} from '@alfresco/js-api';
|
||||||
import { fakeAsync, TestBed } from '@angular/core/testing';
|
import { fakeAsync, TestBed } from '@angular/core/testing';
|
||||||
import { CategoryService } from './category.service';
|
import { CategoryService } from './category.service';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
|
|
||||||
describe('CategoryService', () => {
|
describe('CategoryService', () => {
|
||||||
let categoryService: CategoryService;
|
let categoryService: CategoryService;
|
||||||
@ -47,8 +45,7 @@ describe('CategoryService', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [HttpClientTestingModule, TranslateModule.forRoot()],
|
imports: [NoopTranslateModule]
|
||||||
providers: [CategoryService, UserPreferencesService, { provide: TranslationService, useClass: TranslationMock }]
|
|
||||||
});
|
});
|
||||||
|
|
||||||
categoryService = TestBed.inject(CategoryService);
|
categoryService = TestBed.inject(CategoryService);
|
||||||
|
@ -21,14 +21,12 @@ import { Node } from '@alfresco/js-api';
|
|||||||
import { ContentMetadataCardComponent } from './content-metadata-card.component';
|
import { ContentMetadataCardComponent } from './content-metadata-card.component';
|
||||||
import { ContentMetadataComponent } from '../content-metadata/content-metadata.component';
|
import { ContentMetadataComponent } from '../content-metadata/content-metadata.component';
|
||||||
import { APP_INITIALIZER, SimpleChange } from '@angular/core';
|
import { APP_INITIALIZER, SimpleChange } from '@angular/core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { NodeAspectService } from '../../../aspect-list/services/node-aspect.service';
|
import { NodeAspectService } from '../../../aspect-list/services/node-aspect.service';
|
||||||
import { ContentMetadataService } from '../../services/content-metadata.service';
|
import { ContentMetadataService } from '../../services/content-metadata.service';
|
||||||
import { AllowableOperationsEnum } from '../../../common/models/allowable-operations.enum';
|
import { AllowableOperationsEnum } from '../../../common/models/allowable-operations.enum';
|
||||||
import { of } from 'rxjs';
|
import { of } from 'rxjs';
|
||||||
import { AlfrescoApiService, AlfrescoApiServiceMock, AuthModule, TranslationMock, TranslationService } from '@alfresco/adf-core';
|
import { AlfrescoApiService, AlfrescoApiServiceMock, AuthModule, NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { HttpClientModule } from '@angular/common/http';
|
|
||||||
import { versionCompatibilityFactory } from '../../../version-compatibility/version-compatibility-factory';
|
import { versionCompatibilityFactory } from '../../../version-compatibility/version-compatibility-factory';
|
||||||
import { VersionCompatibilityService } from '../../../version-compatibility';
|
import { VersionCompatibilityService } from '../../../version-compatibility';
|
||||||
import { MatDialogModule } from '@angular/material/dialog';
|
import { MatDialogModule } from '@angular/material/dialog';
|
||||||
@ -53,17 +51,15 @@ describe('ContentMetadataCardComponent', () => {
|
|||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [
|
||||||
TranslateModule.forRoot(),
|
|
||||||
NoopAnimationsModule,
|
NoopAnimationsModule,
|
||||||
|
NoopTranslateModule,
|
||||||
AuthModule.forRoot({ useHash: true }),
|
AuthModule.forRoot({ useHash: true }),
|
||||||
HttpClientModule,
|
|
||||||
MatDialogModule,
|
MatDialogModule,
|
||||||
MatSnackBarModule,
|
MatSnackBarModule,
|
||||||
ContentMetadataCardComponent
|
ContentMetadataCardComponent
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{
|
{
|
||||||
provide: APP_INITIALIZER,
|
provide: APP_INITIALIZER,
|
||||||
useFactory: versionCompatibilityFactory,
|
useFactory: versionCompatibilityFactory,
|
||||||
|
@ -26,14 +26,12 @@ import {
|
|||||||
AuthModule,
|
AuthModule,
|
||||||
CardViewBaseItemModel,
|
CardViewBaseItemModel,
|
||||||
CardViewComponent,
|
CardViewComponent,
|
||||||
|
NoopTranslateModule,
|
||||||
NotificationService,
|
NotificationService,
|
||||||
TranslationMock,
|
|
||||||
TranslationService,
|
|
||||||
UpdateNotification
|
UpdateNotification
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
import { NodesApiService } from '../../../common/services/nodes-api.service';
|
import { NodesApiService } from '../../../common/services/nodes-api.service';
|
||||||
import { EMPTY, of, throwError } from 'rxjs';
|
import { EMPTY, of, throwError } from 'rxjs';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { CardViewContentUpdateService } from '../../../common/services/card-view-content-update.service';
|
import { CardViewContentUpdateService } from '../../../common/services/card-view-content-update.service';
|
||||||
import { PropertyGroup } from '../../interfaces/property-group.interface';
|
import { PropertyGroup } from '../../interfaces/property-group.interface';
|
||||||
import { PropertyDescriptorsService } from '../../services/property-descriptors.service';
|
import { PropertyDescriptorsService } from '../../services/property-descriptors.service';
|
||||||
@ -47,7 +45,6 @@ import {
|
|||||||
} from '@alfresco/adf-content-services';
|
} from '@alfresco/adf-content-services';
|
||||||
import { MatExpansionPanel } from '@angular/material/expansion';
|
import { MatExpansionPanel } from '@angular/material/expansion';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { HttpClientModule } from '@angular/common/http';
|
|
||||||
import { MatDialogModule } from '@angular/material/dialog';
|
import { MatDialogModule } from '@angular/material/dialog';
|
||||||
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
@ -184,16 +181,14 @@ describe('ContentMetadataComponent', () => {
|
|||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [
|
||||||
TranslateModule.forRoot(),
|
|
||||||
NoopAnimationsModule,
|
NoopAnimationsModule,
|
||||||
|
NoopTranslateModule,
|
||||||
AuthModule.forRoot({ useHash: true }),
|
AuthModule.forRoot({ useHash: true }),
|
||||||
HttpClientModule,
|
|
||||||
MatDialogModule,
|
MatDialogModule,
|
||||||
MatSnackBarModule,
|
MatSnackBarModule,
|
||||||
ContentMetadataComponent
|
ContentMetadataComponent
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{
|
{
|
||||||
provide: TagService,
|
provide: TagService,
|
||||||
useValue: {
|
useValue: {
|
||||||
|
@ -21,12 +21,9 @@ import { Subject } from 'rxjs';
|
|||||||
import { Category } from '@alfresco/js-api';
|
import { Category } from '@alfresco/js-api';
|
||||||
import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';
|
import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { AppConfigService, AppConfigServiceMock, NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { AppConfigService, AppConfigServiceMock, TranslationMock, TranslationService } from '@alfresco/adf-core';
|
|
||||||
import { CategoriesManagementComponent } from '../../category';
|
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
|
|
||||||
describe('Category selector dialog component', () => {
|
describe('CategorySelectorDialogComponent', () => {
|
||||||
let fixture: ComponentFixture<CategorySelectorDialogComponent>;
|
let fixture: ComponentFixture<CategorySelectorDialogComponent>;
|
||||||
let component: CategorySelectorDialogComponent;
|
let component: CategorySelectorDialogComponent;
|
||||||
let selectButton: HTMLButtonElement;
|
let selectButton: HTMLButtonElement;
|
||||||
@ -51,18 +48,11 @@ describe('Category selector dialog component', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [NoopTranslateModule, MatDialogModule, CategorySelectorDialogComponent],
|
||||||
TranslateModule.forRoot(),
|
|
||||||
MatDialogModule,
|
|
||||||
HttpClientTestingModule,
|
|
||||||
CategoriesManagementComponent,
|
|
||||||
CategorySelectorDialogComponent
|
|
||||||
],
|
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
||||||
{ provide: MatDialogRef, useValue: dialogRef },
|
{ provide: MatDialogRef, useValue: dialogRef },
|
||||||
{ provide: MAT_DIALOG_DATA, useValue: options },
|
{ provide: MAT_DIALOG_DATA, useValue: options }
|
||||||
{ provide: TranslationService, useClass: TranslationMock }
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
dialogRef.close.calls.reset();
|
dialogRef.close.calls.reset();
|
||||||
|
@ -21,9 +21,7 @@ import { DownloadZipDialogComponent } from './download-zip.dialog';
|
|||||||
import { DownloadZipService } from './services/download-zip.service';
|
import { DownloadZipService } from './services/download-zip.service';
|
||||||
import { DownloadEntry, FileDownloadStatus } from '@alfresco/js-api';
|
import { DownloadEntry, FileDownloadStatus } from '@alfresco/js-api';
|
||||||
import { EMPTY, Observable, of } from 'rxjs';
|
import { EMPTY, Observable, of } from 'rxjs';
|
||||||
import { AlfrescoApiService, AlfrescoApiServiceMock, RedirectAuthService, TranslationMock, TranslationService } from '@alfresco/adf-core';
|
import { AlfrescoApiService, AlfrescoApiServiceMock, NoopTranslateModule, RedirectAuthService } from '@alfresco/adf-core';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
|
|
||||||
describe('DownloadZipDialogComponent', () => {
|
describe('DownloadZipDialogComponent', () => {
|
||||||
@ -41,11 +39,10 @@ describe('DownloadZipDialogComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [HttpClientTestingModule, TranslateModule.forRoot(), MatDialogModule, NoopAnimationsModule],
|
imports: [NoopTranslateModule, MatDialogModule, NoopAnimationsModule],
|
||||||
providers: [
|
providers: [
|
||||||
DownloadZipService,
|
DownloadZipService,
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{ provide: MatDialogRef, useValue: dialogRef },
|
{ provide: MatDialogRef, useValue: dialogRef },
|
||||||
{ provide: MAT_DIALOG_DATA, useValue: dataMock },
|
{ provide: MAT_DIALOG_DATA, useValue: dataMock },
|
||||||
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, onTokenReceived: of() } }
|
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, onTokenReceived: of() } }
|
||||||
|
@ -19,7 +19,7 @@ import { Component } from '@angular/core';
|
|||||||
import { ComponentFixture, fakeAsync, TestBed, tick } from '@angular/core/testing';
|
import { ComponentFixture, fakeAsync, TestBed, tick } from '@angular/core/testing';
|
||||||
import { AutoFocusDirective } from './auto-focus.directive';
|
import { AutoFocusDirective } from './auto-focus.directive';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
standalone: true,
|
standalone: true,
|
||||||
@ -33,7 +33,7 @@ describe('AutoFocusDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), AutoFocusDirective, AutoFocusTestComponent]
|
imports: [NoopTranslateModule, AutoFocusDirective, AutoFocusTestComponent]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(AutoFocusTestComponent);
|
fixture = TestBed.createComponent(AutoFocusTestComponent);
|
||||||
});
|
});
|
||||||
|
@ -19,7 +19,7 @@ import { Component } from '@angular/core';
|
|||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { NodeCounterDirective, NodeCounterComponent } from './node-counter.directive';
|
import { NodeCounterDirective, NodeCounterComponent } from './node-counter.directive';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
standalone: true,
|
standalone: true,
|
||||||
@ -35,7 +35,7 @@ describe('NodeCounterDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), NodeCounterDirective, NodeCounterComponent, TestComponent]
|
imports: [NoopTranslateModule, NodeCounterDirective, NodeCounterComponent, TestComponent]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(TestComponent);
|
fixture = TestBed.createComponent(TestComponent);
|
||||||
fixture.detectChanges();
|
fixture.detectChanges();
|
||||||
|
@ -19,9 +19,7 @@ import { Component, DebugElement, ViewChild } from '@angular/core';
|
|||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { NodeDeleteDirective } from './node-delete.directive';
|
import { NodeDeleteDirective } from './node-delete.directive';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { NoopTranslateModule, RedirectAuthService } from '@alfresco/adf-core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { RedirectAuthService, TranslationMock, TranslationService } from '@alfresco/adf-core';
|
|
||||||
import { EMPTY, of } from 'rxjs';
|
import { EMPTY, of } from 'rxjs';
|
||||||
import { CheckAllowableOperationDirective } from './check-allowable-operation.directive';
|
import { CheckAllowableOperationDirective } from './check-allowable-operation.directive';
|
||||||
|
|
||||||
@ -85,11 +83,8 @@ describe('NodeDeleteDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [HttpClientTestingModule, TranslateModule.forRoot(), TestComponent, TestWithPermissionsComponent, TestDeletePermanentComponent],
|
imports: [NoopTranslateModule, TestComponent, TestWithPermissionsComponent, TestDeletePermanentComponent],
|
||||||
providers: [
|
providers: [{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, onTokenReceived: of() } }]
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, onTokenReceived: of() } }
|
|
||||||
]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(TestComponent);
|
fixture = TestBed.createComponent(TestComponent);
|
||||||
fixtureWithPermissions = TestBed.createComponent(TestWithPermissionsComponent);
|
fixtureWithPermissions = TestBed.createComponent(TestWithPermissionsComponent);
|
||||||
|
@ -19,9 +19,7 @@ import { Component, DebugElement } from '@angular/core';
|
|||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { NodeRestoreDirective } from './node-restore.directive';
|
import { NodeRestoreDirective } from './node-restore.directive';
|
||||||
import { TranslationMock, TranslationService } from '@alfresco/adf-core';
|
import { NoopTranslateModule, TranslationService } from '@alfresco/adf-core';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { TrashcanApi } from '@alfresco/js-api';
|
import { TrashcanApi } from '@alfresco/js-api';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -46,8 +44,7 @@ describe('NodeRestoreDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [HttpClientTestingModule, TranslateModule.forRoot(), TestComponent],
|
imports: [NoopTranslateModule, TestComponent]
|
||||||
providers: [{ provide: TranslationService, useClass: TranslationMock }]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(TestComponent);
|
fixture = TestBed.createComponent(TestComponent);
|
||||||
component = fixture.componentInstance;
|
component = fixture.componentInstance;
|
||||||
|
@ -20,11 +20,9 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|||||||
import { FileAutoDownloadComponent } from './file-auto-download.component';
|
import { FileAutoDownloadComponent } from './file-auto-download.component';
|
||||||
import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';
|
import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { TranslationMock, TranslationService } from '@alfresco/adf-core';
|
|
||||||
import { MatButtonModule } from '@angular/material/button';
|
import { MatButtonModule } from '@angular/material/button';
|
||||||
import { NodeDownloadDirective } from '../../../directives/node-download.directive';
|
import { NodeDownloadDirective } from '../../../directives/node-download.directive';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
|
|
||||||
const mockDialog = {
|
const mockDialog = {
|
||||||
close: jasmine.createSpy('close')
|
close: jasmine.createSpy('close')
|
||||||
@ -37,18 +35,10 @@ describe('FileAutoDownloadComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [NoopTranslateModule, MatDialogModule, MatButtonModule, NodeDownloadDirective, FileAutoDownloadComponent],
|
||||||
HttpClientTestingModule,
|
|
||||||
TranslateModule.forRoot(),
|
|
||||||
MatDialogModule,
|
|
||||||
MatButtonModule,
|
|
||||||
NodeDownloadDirective,
|
|
||||||
FileAutoDownloadComponent
|
|
||||||
],
|
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: MatDialogRef, useValue: mockDialog },
|
{ provide: MatDialogRef, useValue: mockDialog },
|
||||||
{ provide: MAT_DIALOG_DATA, useValue: null },
|
{ provide: MAT_DIALOG_DATA, useValue: null }
|
||||||
{ provide: TranslationService, useClass: TranslationMock }
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -21,8 +21,7 @@ import { fakeAuthorityClearanceApiResponse } from './mock/security-authorities.m
|
|||||||
import { fakeGroupsApiResponse, createNewSecurityGroupMock } from './mock/security-groups.mock';
|
import { fakeGroupsApiResponse, createNewSecurityGroupMock } from './mock/security-groups.mock';
|
||||||
import { fakeMarksApiResponse, createNewSecurityMarkMock } from './mock/security-marks.mock';
|
import { fakeMarksApiResponse, createNewSecurityMarkMock } from './mock/security-marks.mock';
|
||||||
import { SecurityGroupBody, SecurityMarkBody, SecurityMarkEntry } from '@alfresco/js-api';
|
import { SecurityGroupBody, SecurityMarkBody, SecurityMarkEntry } from '@alfresco/js-api';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
|
|
||||||
describe('SecurityControlsService', () => {
|
describe('SecurityControlsService', () => {
|
||||||
let service: SecurityControlsService;
|
let service: SecurityControlsService;
|
||||||
@ -39,7 +38,7 @@ describe('SecurityControlsService', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule]
|
imports: [NoopTranslateModule]
|
||||||
});
|
});
|
||||||
|
|
||||||
service = TestBed.inject(SecurityControlsService);
|
service = TestBed.inject(SecurityControlsService);
|
||||||
|
@ -17,9 +17,8 @@
|
|||||||
|
|
||||||
import { ComponentFixture, discardPeriodicTasks, fakeAsync, flush, TestBed, tick } from '@angular/core/testing';
|
import { ComponentFixture, discardPeriodicTasks, fakeAsync, flush, TestBed, tick } from '@angular/core/testing';
|
||||||
import { TagsCreatorComponent } from './tags-creator.component';
|
import { TagsCreatorComponent } from './tags-creator.component';
|
||||||
import { NotificationService } from '@alfresco/adf-core';
|
import { NoopTranslateModule, NotificationService } from '@alfresco/adf-core';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { MatError } from '@angular/material/form-field';
|
import { MatError } from '@angular/material/form-field';
|
||||||
import { TagsCreatorMode, TagService } from '@alfresco/adf-content-services';
|
import { TagsCreatorMode, TagService } from '@alfresco/adf-content-services';
|
||||||
import { EMPTY, of, throwError } from 'rxjs';
|
import { EMPTY, of, throwError } from 'rxjs';
|
||||||
@ -39,7 +38,7 @@ describe('TagsCreatorComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [NoopAnimationsModule, TranslateModule.forRoot(), TagsCreatorComponent],
|
imports: [NoopAnimationsModule, NoopTranslateModule, TagsCreatorComponent],
|
||||||
providers: [
|
providers: [
|
||||||
{
|
{
|
||||||
provide: TagService,
|
provide: TagService,
|
||||||
|
@ -22,16 +22,14 @@ import {
|
|||||||
CoreModule,
|
CoreModule,
|
||||||
AlfrescoApiService,
|
AlfrescoApiService,
|
||||||
AppConfigService,
|
AppConfigService,
|
||||||
TranslationService,
|
|
||||||
CookieService,
|
CookieService,
|
||||||
AlfrescoApiServiceMock,
|
AlfrescoApiServiceMock,
|
||||||
AppConfigServiceMock,
|
AppConfigServiceMock,
|
||||||
TranslationMock,
|
|
||||||
CookieServiceMock,
|
CookieServiceMock,
|
||||||
AuthModule
|
AuthModule,
|
||||||
|
NoopTranslateModule
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
import { ContentModule } from '../content.module';
|
import { ContentModule } from '../content.module';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { versionCompatibilityFactory } from '../version-compatibility/version-compatibility-factory';
|
import { versionCompatibilityFactory } from '../version-compatibility/version-compatibility-factory';
|
||||||
import { VersionCompatibilityService } from '../version-compatibility/version-compatibility.service';
|
import { VersionCompatibilityService } from '../version-compatibility/version-compatibility.service';
|
||||||
import { MatIconTestingModule } from '@angular/material/icon/testing';
|
import { MatIconTestingModule } from '@angular/material/icon/testing';
|
||||||
@ -41,15 +39,14 @@ import { MatIconTestingModule } from '@angular/material/icon/testing';
|
|||||||
AuthModule.forRoot({ useHash: true }),
|
AuthModule.forRoot({ useHash: true }),
|
||||||
NoopAnimationsModule,
|
NoopAnimationsModule,
|
||||||
RouterTestingModule,
|
RouterTestingModule,
|
||||||
TranslateModule.forRoot(),
|
|
||||||
CoreModule,
|
CoreModule,
|
||||||
|
NoopTranslateModule,
|
||||||
ContentModule,
|
ContentModule,
|
||||||
MatIconTestingModule
|
MatIconTestingModule
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{ provide: CookieService, useClass: CookieServiceMock },
|
{ provide: CookieService, useClass: CookieServiceMock },
|
||||||
{
|
{
|
||||||
provide: APP_INITIALIZER,
|
provide: APP_INITIALIZER,
|
||||||
@ -58,6 +55,6 @@ import { MatIconTestingModule } from '@angular/material/icon/testing';
|
|||||||
multi: true
|
multi: true
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
exports: [NoopAnimationsModule, TranslateModule, CoreModule, ContentModule]
|
exports: [NoopAnimationsModule, CoreModule, ContentModule]
|
||||||
})
|
})
|
||||||
export class ContentTestingModule {}
|
export class ContentTestingModule {}
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
import { TreeComponent } from './tree.component';
|
import { TreeComponent } from './tree.component';
|
||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { ContextMenuDirective, UserPreferencesService } from '@alfresco/adf-core';
|
import { ContextMenuDirective, NoopTranslateModule, UserPreferencesService } from '@alfresco/adf-core';
|
||||||
import { TreeNode, TreeNodeType } from '../models/tree-node.interface';
|
import { TreeNode, TreeNodeType } from '../models/tree-node.interface';
|
||||||
import { singleNode, treeNodesChildrenMockExpanded, treeNodesMock, treeNodesMockExpanded, treeNodesNoChildrenMock } from '../mock/tree-node.mock';
|
import { singleNode, treeNodesChildrenMockExpanded, treeNodesMock, treeNodesMockExpanded, treeNodesNoChildrenMock } from '../mock/tree-node.mock';
|
||||||
import { of, Subject } from 'rxjs';
|
import { of, Subject } from 'rxjs';
|
||||||
@ -30,8 +30,6 @@ import { HarnessLoader } from '@angular/cdk/testing';
|
|||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { MatProgressSpinnerHarness } from '@angular/material/progress-spinner/testing';
|
import { MatProgressSpinnerHarness } from '@angular/material/progress-spinner/testing';
|
||||||
import { MatCheckboxHarness } from '@angular/material/checkbox/testing';
|
import { MatCheckboxHarness } from '@angular/material/checkbox/testing';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
|
|
||||||
describe('TreeComponent', () => {
|
describe('TreeComponent', () => {
|
||||||
@ -64,7 +62,7 @@ describe('TreeComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [NoopAnimationsModule, HttpClientTestingModule, TranslateModule.forRoot(), TreeComponent],
|
imports: [NoopAnimationsModule, NoopTranslateModule, TreeComponent],
|
||||||
providers: [UserPreferencesService, { provide: TreeService, useClass: TreeServiceMock }]
|
providers: [UserPreferencesService, { provide: TreeService, useClass: TreeServiceMock }]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -15,15 +15,14 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { TranslationMock } from '@alfresco/adf-core';
|
import { NoopTranslationService } from '@alfresco/adf-core';
|
||||||
import { FileUploadErrorPipe } from './file-upload-error.pipe';
|
import { FileUploadErrorPipe } from './file-upload-error.pipe';
|
||||||
|
|
||||||
describe('FileUploadErrorPipe', () => {
|
describe('FileUploadErrorPipe', () => {
|
||||||
|
|
||||||
let pipe: FileUploadErrorPipe;
|
let pipe: FileUploadErrorPipe;
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
pipe = new FileUploadErrorPipe(new TranslationMock());
|
pipe = new FileUploadErrorPipe(new NoopTranslationService());
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return generic message when error code is null', () => {
|
it('should return generic message when error code is null', () => {
|
||||||
|
@ -20,8 +20,6 @@ import { SpyLocation } from '@angular/common/testing';
|
|||||||
import { ComponentFixture, fakeAsync, TestBed, tick } from '@angular/core/testing';
|
import { ComponentFixture, fakeAsync, TestBed, tick } from '@angular/core/testing';
|
||||||
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
|
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
|
||||||
import { AppExtensionService, ViewerExtensionRef } from '@alfresco/adf-extensions';
|
import { AppExtensionService, ViewerExtensionRef } from '@alfresco/adf-extensions';
|
||||||
import { MatButtonModule } from '@angular/material/button';
|
|
||||||
import { MatIconModule } from '@angular/material/icon';
|
|
||||||
import { ContentInfo, Node, NodeEntry, VersionEntry } from '@alfresco/js-api';
|
import { ContentInfo, Node, NodeEntry, VersionEntry } from '@alfresco/js-api';
|
||||||
import { AlfrescoViewerComponent, ContentService, NodeActionsService, RenditionService } from '@alfresco/adf-content-services';
|
import { AlfrescoViewerComponent, ContentService, NodeActionsService, RenditionService } from '@alfresco/adf-content-services';
|
||||||
import {
|
import {
|
||||||
@ -30,12 +28,11 @@ import {
|
|||||||
AuthModule,
|
AuthModule,
|
||||||
CloseButtonPosition,
|
CloseButtonPosition,
|
||||||
EventMock,
|
EventMock,
|
||||||
TranslationMock,
|
|
||||||
TranslationService,
|
|
||||||
ViewUtilService,
|
ViewUtilService,
|
||||||
ViewerComponent,
|
ViewerComponent,
|
||||||
VIEWER_DIRECTIVES,
|
VIEWER_DIRECTIVES,
|
||||||
ViewerSidebarComponent
|
ViewerSidebarComponent,
|
||||||
|
NoopTranslateModule
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
import { NodesApiService } from '../../common/services/nodes-api.service';
|
import { NodesApiService } from '../../common/services/nodes-api.service';
|
||||||
import { UploadService } from '../../common/services/upload.service';
|
import { UploadService } from '../../common/services/upload.service';
|
||||||
@ -44,8 +41,6 @@ import { throwError } from 'rxjs';
|
|||||||
import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
||||||
import { ESCAPE } from '@angular/cdk/keycodes';
|
import { ESCAPE } from '@angular/cdk/keycodes';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-viewer-container-toolbar',
|
selector: 'adf-viewer-container-toolbar',
|
||||||
@ -100,7 +95,7 @@ class DummyDialogComponent {}
|
|||||||
<mat-icon>dialpad</mat-icon>
|
<mat-icon>dialpad</mat-icon>
|
||||||
<span>Option 1</span>
|
<span>Option 1</span>
|
||||||
</button>
|
</button>
|
||||||
<button mat-menu-item disabled>
|
<button mat-menu-item [disabled]="true">
|
||||||
<mat-icon>voicemail</mat-icon>
|
<mat-icon>voicemail</mat-icon>
|
||||||
<span>Option 2</span>
|
<span>Option 2</span>
|
||||||
</button>
|
</button>
|
||||||
@ -123,7 +118,7 @@ class ViewerWithCustomOpenWithComponent {}
|
|||||||
<mat-icon>dialpad</mat-icon>
|
<mat-icon>dialpad</mat-icon>
|
||||||
<span>Action One</span>
|
<span>Action One</span>
|
||||||
</button>
|
</button>
|
||||||
<button mat-menu-item disabled>
|
<button mat-menu-item [disabled]="true">
|
||||||
<mat-icon>voicemail</mat-icon>
|
<mat-icon>voicemail</mat-icon>
|
||||||
<span>Action Two</span>
|
<span>Action Two</span>
|
||||||
</button>
|
</button>
|
||||||
@ -152,15 +147,7 @@ describe('AlfrescoViewerComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [AuthModule.forRoot({ useHash: true }), MatDialogModule, NoopTranslateModule, ...VIEWER_DIRECTIVES],
|
||||||
AuthModule.forRoot({ useHash: true }),
|
|
||||||
TranslateModule.forRoot(),
|
|
||||||
MatButtonModule,
|
|
||||||
MatIconModule,
|
|
||||||
MatDialogModule,
|
|
||||||
HttpClientTestingModule,
|
|
||||||
...VIEWER_DIRECTIVES
|
|
||||||
],
|
|
||||||
declarations: [
|
declarations: [
|
||||||
ViewerWithCustomToolbarComponent,
|
ViewerWithCustomToolbarComponent,
|
||||||
ViewerWithCustomSidebarComponent,
|
ViewerWithCustomSidebarComponent,
|
||||||
@ -171,7 +158,6 @@ describe('AlfrescoViewerComponent', () => {
|
|||||||
providers: [
|
providers: [
|
||||||
ContentService,
|
ContentService,
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{
|
{
|
||||||
provide: RenditionService,
|
provide: RenditionService,
|
||||||
useValue: {
|
useValue: {
|
||||||
|
@ -17,13 +17,12 @@
|
|||||||
|
|
||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
|
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { FlagsComponent } from './flags.component';
|
import { FlagsComponent } from './flags.component';
|
||||||
import { FeaturesDirective } from '../../directives/features.directive';
|
import { FeaturesDirective } from '../../directives/features.directive';
|
||||||
import { WritableFeaturesServiceToken } from '../../interfaces/features.interface';
|
import { WritableFeaturesServiceToken } from '../../interfaces/features.interface';
|
||||||
import { provideMockFeatureFlags } from '../../mocks/features-service-mock.factory';
|
import { provideMockFeatureFlags } from '../../mocks/features-service-mock.factory';
|
||||||
import { StorageFeaturesService } from '../../services/storage-features.service';
|
import { StorageFeaturesService } from '../../services/storage-features.service';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('FlagsComponent', () => {
|
describe('FlagsComponent', () => {
|
||||||
let component: FlagsComponent;
|
let component: FlagsComponent;
|
||||||
@ -31,7 +30,7 @@ describe('FlagsComponent', () => {
|
|||||||
|
|
||||||
beforeEach(async () => {
|
beforeEach(async () => {
|
||||||
await TestBed.configureTestingModule({
|
await TestBed.configureTestingModule({
|
||||||
imports: [FlagsComponent, TranslateModule.forRoot(), FeaturesDirective, NoopAnimationsModule],
|
imports: [FlagsComponent, NoopTranslateModule, FeaturesDirective, NoopAnimationsModule],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: WritableFeaturesServiceToken, useClass: StorageFeaturesService },
|
{ provide: WritableFeaturesServiceToken, useClass: StorageFeaturesService },
|
||||||
provideMockFeatureFlags({
|
provideMockFeatureFlags({
|
||||||
|
@ -18,9 +18,8 @@
|
|||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { AboutServerSettingsComponent } from './about-server-settings.component';
|
import { AboutServerSettingsComponent } from './about-server-settings.component';
|
||||||
import { AppConfigService } from '../../app-config/app-config.service';
|
import { AppConfigService } from '../../app-config/app-config.service';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { AppConfigServiceMock } from '../../common';
|
import { AppConfigServiceMock } from '../../common';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
const aboutGithubDetails = {
|
const aboutGithubDetails = {
|
||||||
url: 'https://github.com/componany/repository/commits/',
|
url: 'https://github.com/componany/repository/commits/',
|
||||||
@ -38,7 +37,7 @@ describe('AboutServerSettingsComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule],
|
imports: [NoopTranslateModule],
|
||||||
providers: [{ provide: AppConfigService, useClass: AppConfigServiceMock }]
|
providers: [{ provide: AppConfigService, useClass: AppConfigServiceMock }]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(AboutServerSettingsComponent);
|
fixture = TestBed.createComponent(AboutServerSettingsComponent);
|
||||||
|
@ -21,12 +21,11 @@ import { AuthGuardBpm } from './auth-guard-bpm.service';
|
|||||||
import { AuthenticationService } from '../services/authentication.service';
|
import { AuthenticationService } from '../services/authentication.service';
|
||||||
import { RouterStateSnapshot, Router } from '@angular/router';
|
import { RouterStateSnapshot, Router } from '@angular/router';
|
||||||
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
|
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { BasicAlfrescoAuthService } from '../basic-auth/basic-alfresco-auth.service';
|
import { BasicAlfrescoAuthService } from '../basic-auth/basic-alfresco-auth.service';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { RedirectAuthService } from '../oidc/redirect-auth.service';
|
import { RedirectAuthService } from '../oidc/redirect-auth.service';
|
||||||
import { EMPTY, of } from 'rxjs';
|
import { EMPTY, of } from 'rxjs';
|
||||||
import { OidcAuthenticationService } from '../oidc/oidc-authentication.service';
|
import { OidcAuthenticationService } from '../oidc/oidc-authentication.service';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('AuthGuardService BPM', () => {
|
describe('AuthGuardService BPM', () => {
|
||||||
let authGuard: AuthGuardBpm;
|
let authGuard: AuthGuardBpm;
|
||||||
@ -39,7 +38,7 @@ describe('AuthGuardService BPM', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, MatDialogModule],
|
imports: [NoopTranslateModule, MatDialogModule],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, onTokenReceived: of() } },
|
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, onTokenReceived: of() } },
|
||||||
{
|
{
|
||||||
|
@ -21,13 +21,12 @@ import { AuthGuardEcm } from './auth-guard-ecm.service';
|
|||||||
import { AuthenticationService } from '../services/authentication.service';
|
import { AuthenticationService } from '../services/authentication.service';
|
||||||
import { RouterStateSnapshot, Router } from '@angular/router';
|
import { RouterStateSnapshot, Router } from '@angular/router';
|
||||||
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
|
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { BasicAlfrescoAuthService } from '../basic-auth/basic-alfresco-auth.service';
|
import { BasicAlfrescoAuthService } from '../basic-auth/basic-alfresco-auth.service';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { RouterTestingModule } from '@angular/router/testing';
|
import { RouterTestingModule } from '@angular/router/testing';
|
||||||
import { RedirectAuthService } from '../oidc/redirect-auth.service';
|
import { RedirectAuthService } from '../oidc/redirect-auth.service';
|
||||||
import { EMPTY, of } from 'rxjs';
|
import { EMPTY, of } from 'rxjs';
|
||||||
import { OidcAuthenticationService } from '../oidc/oidc-authentication.service';
|
import { OidcAuthenticationService } from '../oidc/oidc-authentication.service';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('AuthGuardService ECM', () => {
|
describe('AuthGuardService ECM', () => {
|
||||||
let authGuard: AuthGuardEcm;
|
let authGuard: AuthGuardEcm;
|
||||||
@ -39,7 +38,7 @@ describe('AuthGuardService ECM', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, RouterTestingModule, MatDialogModule],
|
imports: [NoopTranslateModule, RouterTestingModule, MatDialogModule],
|
||||||
providers: [
|
providers: [
|
||||||
BasicAlfrescoAuthService,
|
BasicAlfrescoAuthService,
|
||||||
AppConfigService,
|
AppConfigService,
|
||||||
|
@ -20,8 +20,7 @@ import { ActivatedRouteSnapshot, Router } from '@angular/router';
|
|||||||
import { AuthGuardSsoRoleService } from './auth-guard-sso-role.service';
|
import { AuthGuardSsoRoleService } from './auth-guard-sso-role.service';
|
||||||
import { JwtHelperService } from '../services/jwt-helper.service';
|
import { JwtHelperService } from '../services/jwt-helper.service';
|
||||||
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
|
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
|
|
||||||
describe('Auth Guard SSO role service', () => {
|
describe('Auth Guard SSO role service', () => {
|
||||||
let authGuard: AuthGuardSsoRoleService;
|
let authGuard: AuthGuardSsoRoleService;
|
||||||
@ -30,7 +29,7 @@ describe('Auth Guard SSO role service', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, MatDialogModule]
|
imports: [NoopTranslateModule, MatDialogModule]
|
||||||
});
|
});
|
||||||
localStorage.clear();
|
localStorage.clear();
|
||||||
authGuard = TestBed.inject(AuthGuardSsoRoleService);
|
authGuard = TestBed.inject(AuthGuardSsoRoleService);
|
||||||
|
@ -20,15 +20,14 @@ import { Router, RouterStateSnapshot } from '@angular/router';
|
|||||||
import { AppConfigService } from '../../app-config/app-config.service';
|
import { AppConfigService } from '../../app-config/app-config.service';
|
||||||
import { AuthGuard } from './auth-guard.service';
|
import { AuthGuard } from './auth-guard.service';
|
||||||
import { AuthenticationService } from '../services/authentication.service';
|
import { AuthenticationService } from '../services/authentication.service';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { StorageService } from '../../common/services/storage.service';
|
import { StorageService } from '../../common/services/storage.service';
|
||||||
import { OidcAuthenticationService } from '../oidc/oidc-authentication.service';
|
import { OidcAuthenticationService } from '../oidc/oidc-authentication.service';
|
||||||
import { BasicAlfrescoAuthService } from '../basic-auth/basic-alfresco-auth.service';
|
import { BasicAlfrescoAuthService } from '../basic-auth/basic-alfresco-auth.service';
|
||||||
import { RedirectAuthService } from '../oidc/redirect-auth.service';
|
import { RedirectAuthService } from '../oidc/redirect-auth.service';
|
||||||
import { EMPTY, of } from 'rxjs';
|
import { EMPTY, of } from 'rxjs';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { MatDialogModule } from '@angular/material/dialog';
|
import { MatDialogModule } from '@angular/material/dialog';
|
||||||
import { RouterTestingModule } from '@angular/router/testing';
|
import { RouterTestingModule } from '@angular/router/testing';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('AuthGuardService', () => {
|
describe('AuthGuardService', () => {
|
||||||
let state;
|
let state;
|
||||||
@ -42,7 +41,7 @@ describe('AuthGuardService', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, MatDialogModule, RouterTestingModule],
|
imports: [NoopTranslateModule, MatDialogModule, RouterTestingModule],
|
||||||
providers: [
|
providers: [
|
||||||
AppConfigService,
|
AppConfigService,
|
||||||
StorageService,
|
StorageService,
|
||||||
|
@ -19,7 +19,6 @@ import { fakeAsync, TestBed } from '@angular/core/testing';
|
|||||||
import { AuthenticationService } from './authentication.service';
|
import { AuthenticationService } from './authentication.service';
|
||||||
import { CookieService } from '../../common/services/cookie.service';
|
import { CookieService } from '../../common/services/cookie.service';
|
||||||
import { AppConfigService } from '../../app-config/app-config.service';
|
import { AppConfigService } from '../../app-config/app-config.service';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { BasicAlfrescoAuthService } from '../basic-auth/basic-alfresco-auth.service';
|
import { BasicAlfrescoAuthService } from '../basic-auth/basic-alfresco-auth.service';
|
||||||
import { AuthModule } from '../oidc/auth.module';
|
import { AuthModule } from '../oidc/auth.module';
|
||||||
import { HttpClientModule } from '@angular/common/http';
|
import { HttpClientModule } from '@angular/common/http';
|
||||||
@ -30,6 +29,7 @@ import { OAuthEvent } from 'angular-oauth2-oidc';
|
|||||||
import { Subject } from 'rxjs';
|
import { Subject } from 'rxjs';
|
||||||
import { RedirectAuthService } from '../oidc/redirect-auth.service';
|
import { RedirectAuthService } from '../oidc/redirect-auth.service';
|
||||||
import { Injector } from '@angular/core';
|
import { Injector } from '@angular/core';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
declare let jasmine: any;
|
declare let jasmine: any;
|
||||||
// eslint-disable-next-line
|
// eslint-disable-next-line
|
||||||
@ -42,7 +42,7 @@ xdescribe('AuthenticationService', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), AuthModule.forRoot({ useHash: true }), HttpClientModule],
|
imports: [NoopTranslateModule, AuthModule.forRoot({ useHash: true }), HttpClientModule],
|
||||||
providers: [
|
providers: [
|
||||||
{
|
{
|
||||||
provide: CookieService,
|
provide: CookieService,
|
||||||
|
@ -27,9 +27,8 @@ import {
|
|||||||
mockIdentityGroups,
|
mockIdentityGroups,
|
||||||
roleMappingMock
|
roleMappingMock
|
||||||
} from '../mock/identity-group.mock';
|
} from '../mock/identity-group.mock';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { AdfHttpClient } from '../../../../api/src';
|
import { AdfHttpClient } from '../../../../api/src';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('IdentityGroupService', () => {
|
describe('IdentityGroupService', () => {
|
||||||
let service: IdentityGroupService;
|
let service: IdentityGroupService;
|
||||||
@ -38,7 +37,7 @@ describe('IdentityGroupService', () => {
|
|||||||
|
|
||||||
beforeEach(fakeAsync(() => {
|
beforeEach(fakeAsync(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule],
|
imports: [NoopTranslateModule],
|
||||||
providers: [AdfHttpClient]
|
providers: [AdfHttpClient]
|
||||||
});
|
});
|
||||||
service = TestBed.inject(IdentityGroupService);
|
service = TestBed.inject(IdentityGroupService);
|
||||||
|
@ -32,10 +32,9 @@ import { IdentityUserService } from './identity-user.service';
|
|||||||
import { JwtHelperService } from './jwt-helper.service';
|
import { JwtHelperService } from './jwt-helper.service';
|
||||||
import { mockToken } from '../mock/jwt-helper.service.spec';
|
import { mockToken } from '../mock/jwt-helper.service.spec';
|
||||||
import { IdentityRoleModel } from '../models/identity-role.model';
|
import { IdentityRoleModel } from '../models/identity-role.model';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { AdfHttpClient } from '../../../../api/src';
|
import { AdfHttpClient } from '../../../../api/src';
|
||||||
import { StorageService } from '../../common/services/storage.service';
|
import { StorageService } from '../../common/services/storage.service';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('IdentityUserService', () => {
|
describe('IdentityUserService', () => {
|
||||||
const mockRoles = [
|
const mockRoles = [
|
||||||
@ -53,7 +52,7 @@ describe('IdentityUserService', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule],
|
imports: [NoopTranslateModule],
|
||||||
providers: [StorageService, AdfHttpClient]
|
providers: [StorageService, AdfHttpClient]
|
||||||
});
|
});
|
||||||
storageService = TestBed.inject(StorageService);
|
storageService = TestBed.inject(StorageService);
|
||||||
|
@ -21,7 +21,7 @@ import { MatCheckbox, MatCheckboxChange } from '@angular/material/checkbox';
|
|||||||
import { CardViewUpdateService } from '../../services/card-view-update.service';
|
import { CardViewUpdateService } from '../../services/card-view-update.service';
|
||||||
import { CardViewBoolItemComponent } from './card-view-boolitem.component';
|
import { CardViewBoolItemComponent } from './card-view-boolitem.component';
|
||||||
import { CardViewBoolItemModel } from '../../models/card-view-boolitem.model';
|
import { CardViewBoolItemModel } from '../../models/card-view-boolitem.model';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('CardViewBoolItemComponent', () => {
|
describe('CardViewBoolItemComponent', () => {
|
||||||
let fixture: ComponentFixture<CardViewBoolItemComponent>;
|
let fixture: ComponentFixture<CardViewBoolItemComponent>;
|
||||||
@ -29,7 +29,7 @@ describe('CardViewBoolItemComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot()]
|
imports: [NoopTranslateModule]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(CardViewBoolItemComponent);
|
fixture = TestBed.createComponent(CardViewBoolItemComponent);
|
||||||
component = fixture.componentInstance;
|
component = fixture.componentInstance;
|
||||||
|
@ -16,10 +16,10 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { SelectFilterInputComponent } from './select-filter-input.component';
|
import { SelectFilterInputComponent } from './select-filter-input.component';
|
||||||
import { MatSelect, MatSelectModule } from '@angular/material/select';
|
import { MatSelect, MatSelectModule } from '@angular/material/select';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('SelectFilterInputComponent', () => {
|
describe('SelectFilterInputComponent', () => {
|
||||||
let fixture: ComponentFixture<SelectFilterInputComponent>;
|
let fixture: ComponentFixture<SelectFilterInputComponent>;
|
||||||
@ -28,7 +28,7 @@ describe('SelectFilterInputComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [NoopAnimationsModule, TranslateModule.forRoot(), MatSelectModule],
|
imports: [NoopAnimationsModule, NoopTranslateModule, MatSelectModule],
|
||||||
providers: [MatSelect]
|
providers: [MatSelect]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -19,12 +19,8 @@ import { Component, ViewChild } from '@angular/core';
|
|||||||
import { ComponentFixture, TestBed, tick, fakeAsync } from '@angular/core/testing';
|
import { ComponentFixture, TestBed, tick, fakeAsync } from '@angular/core/testing';
|
||||||
import { ClipboardService } from './clipboard.service';
|
import { ClipboardService } from './clipboard.service';
|
||||||
import { ClipboardDirective } from './clipboard.directive';
|
import { ClipboardDirective } from './clipboard.directive';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
||||||
import { TranslationService } from '../translation';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { TranslationMock } from '../mock';
|
|
||||||
import { MatButtonModule } from '@angular/material/button';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-test-component',
|
selector: 'adf-test-component',
|
||||||
@ -42,8 +38,7 @@ describe('ClipboardDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, MatSnackBarModule, MatButtonModule, ClipboardDirective],
|
imports: [NoopTranslateModule, MatSnackBarModule, ClipboardDirective],
|
||||||
providers: [ClipboardService, { provide: TranslationService, useClass: TranslationMock }],
|
|
||||||
declarations: [TestTargetClipboardComponent]
|
declarations: [TestTargetClipboardComponent]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(TestTargetClipboardComponent);
|
fixture = TestBed.createComponent(TestTargetClipboardComponent);
|
||||||
@ -86,8 +81,7 @@ describe('CopyClipboardDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, MatSnackBarModule, ClipboardDirective],
|
imports: [NoopTranslateModule, MatSnackBarModule, ClipboardDirective],
|
||||||
providers: [ClipboardService, { provide: TranslationService, useClass: TranslationMock }],
|
|
||||||
declarations: [TestCopyClipboardComponent]
|
declarations: [TestCopyClipboardComponent]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(TestCopyClipboardComponent);
|
fixture = TestBed.createComponent(TestCopyClipboardComponent);
|
||||||
|
@ -19,20 +19,16 @@ import { NotificationService } from '../notifications/services/notification.serv
|
|||||||
import { TestBed } from '@angular/core/testing';
|
import { TestBed } from '@angular/core/testing';
|
||||||
import { ClipboardService } from './clipboard.service';
|
import { ClipboardService } from './clipboard.service';
|
||||||
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { TranslationService } from '../translation';
|
|
||||||
import { TranslationMock } from '../mock';
|
|
||||||
|
|
||||||
describe('ClipboardService', () => {
|
describe('ClipboardService', () => {
|
||||||
let clipboardService: ClipboardService;
|
let clipboardService: ClipboardService;
|
||||||
let notificationService: NotificationService;
|
let notificationService: NotificationService;
|
||||||
let inputElement;
|
let inputElement: HTMLInputElement;
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, MatSnackBarModule],
|
imports: [NoopTranslateModule, MatSnackBarModule]
|
||||||
providers: [ClipboardService, { provide: TranslationService, useClass: TranslationMock }]
|
|
||||||
});
|
});
|
||||||
clipboardService = TestBed.inject(ClipboardService);
|
clipboardService = TestBed.inject(ClipboardService);
|
||||||
notificationService = TestBed.inject(NotificationService);
|
notificationService = TestBed.inject(NotificationService);
|
||||||
|
@ -19,11 +19,10 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|||||||
import { CommentModel } from '../../models/comment.model';
|
import { CommentModel } from '../../models/comment.model';
|
||||||
import { CommentListComponent } from './comment-list.component';
|
import { CommentListComponent } from './comment-list.component';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { commentUserNoPictureDefined, commentUserPictureDefined, mockCommentOne, testUser } from './mocks/comment-list.mock';
|
import { commentUserNoPictureDefined, commentUserPictureDefined, mockCommentOne, testUser } from './mocks/comment-list.mock';
|
||||||
import { CommentListServiceMock } from './mocks/comment-list.service.mock';
|
import { CommentListServiceMock } from './mocks/comment-list.service.mock';
|
||||||
import { ADF_COMMENTS_SERVICE } from '../interfaces/comments.token';
|
import { ADF_COMMENTS_SERVICE } from '../interfaces/comments.token';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('CommentListComponent', () => {
|
describe('CommentListComponent', () => {
|
||||||
let commentList: CommentListComponent;
|
let commentList: CommentListComponent;
|
||||||
@ -32,7 +31,7 @@ describe('CommentListComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule],
|
imports: [NoopTranslateModule],
|
||||||
providers: [
|
providers: [
|
||||||
{
|
{
|
||||||
provide: ADF_COMMENTS_SERVICE,
|
provide: ADF_COMMENTS_SERVICE,
|
||||||
|
@ -18,13 +18,12 @@
|
|||||||
import { SimpleChange } from '@angular/core';
|
import { SimpleChange } from '@angular/core';
|
||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { CommentsComponent } from './comments.component';
|
import { CommentsComponent } from './comments.component';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { CommentsServiceMock, commentsResponseMock } from './mocks/comments.service.mock';
|
import { CommentsServiceMock, commentsResponseMock } from './mocks/comments.service.mock';
|
||||||
import { of, throwError } from 'rxjs';
|
import { of, throwError } from 'rxjs';
|
||||||
import { ADF_COMMENTS_SERVICE } from './interfaces/comments.token';
|
import { ADF_COMMENTS_SERVICE } from './interfaces/comments.token';
|
||||||
import { CommentsService } from './interfaces/comments-service.interface';
|
import { CommentsService } from './interfaces/comments-service.interface';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('CommentsComponent', () => {
|
describe('CommentsComponent', () => {
|
||||||
let component: CommentsComponent;
|
let component: CommentsComponent;
|
||||||
@ -35,7 +34,7 @@ describe('CommentsComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [NoopAnimationsModule, HttpClientTestingModule, TranslateModule.forRoot(), CommentsComponent],
|
imports: [NoopAnimationsModule, NoopTranslateModule, CommentsComponent],
|
||||||
providers: [
|
providers: [
|
||||||
{
|
{
|
||||||
provide: ADF_COMMENTS_SERVICE,
|
provide: ADF_COMMENTS_SERVICE,
|
||||||
|
@ -17,18 +17,17 @@
|
|||||||
|
|
||||||
import { TestBed } from '@angular/core/testing';
|
import { TestBed } from '@angular/core/testing';
|
||||||
import { UserPreferencesService } from './user-preferences.service';
|
import { UserPreferencesService } from './user-preferences.service';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { DirectionalityConfigService } from './directionality-config.service';
|
import { DirectionalityConfigService } from './directionality-config.service';
|
||||||
import { directionalityConfigFactory } from './directionality-config-factory';
|
import { directionalityConfigFactory } from './directionality-config-factory';
|
||||||
import { APP_INITIALIZER } from '@angular/core';
|
import { APP_INITIALIZER } from '@angular/core';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('DirectionalityConfigService', () => {
|
describe('DirectionalityConfigService', () => {
|
||||||
let userPreferencesService: UserPreferencesService;
|
let userPreferencesService: UserPreferencesService;
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule],
|
imports: [NoopTranslateModule],
|
||||||
providers: [
|
providers: [
|
||||||
UserPreferencesService,
|
UserPreferencesService,
|
||||||
{
|
{
|
||||||
|
@ -16,15 +16,14 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { TestBed } from '@angular/core/testing';
|
import { TestBed } from '@angular/core/testing';
|
||||||
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
import { TranslateService } from '@ngx-translate/core';
|
||||||
import { AppConfigService } from '../../app-config/app-config.service';
|
import { AppConfigService } from '../../app-config/app-config.service';
|
||||||
import { StorageService } from '../../common/services/storage.service';
|
import { StorageService } from '../../common/services/storage.service';
|
||||||
import { UserPreferencesService, UserPreferenceValues } from '../../common/services/user-preferences.service';
|
import { UserPreferencesService, UserPreferenceValues } from '../../common/services/user-preferences.service';
|
||||||
import { AppConfigServiceMock } from '../mock/app-config.service.mock';
|
import { AppConfigServiceMock } from '../mock/app-config.service.mock';
|
||||||
import { AlfrescoApiService } from '../../services/alfresco-api.service';
|
import { AlfrescoApiService } from '../../services/alfresco-api.service';
|
||||||
import { AlfrescoApiServiceMock, TranslationMock } from '../../mock';
|
import { AlfrescoApiServiceMock } from '../../mock';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { TranslationService } from '../../translation';
|
|
||||||
|
|
||||||
describe('UserPreferencesService', () => {
|
describe('UserPreferencesService', () => {
|
||||||
const supportedPaginationSize = [5, 10, 15, 20];
|
const supportedPaginationSize = [5, 10, 15, 20];
|
||||||
@ -36,11 +35,8 @@ describe('UserPreferencesService', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule],
|
imports: [NoopTranslateModule],
|
||||||
providers: [
|
providers: [
|
||||||
UserPreferencesService,
|
|
||||||
StorageService,
|
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
{ provide: AppConfigService, useClass: AppConfigServiceMock }
|
{ provide: AppConfigService, useClass: AppConfigServiceMock }
|
||||||
]
|
]
|
||||||
|
@ -20,11 +20,10 @@ import { DateCellComponent } from './date-cell.component';
|
|||||||
import { DataColumn, DateConfig } from '../../data/data-column.model';
|
import { DataColumn, DateConfig } from '../../data/data-column.model';
|
||||||
import { BehaviorSubject } from 'rxjs';
|
import { BehaviorSubject } from 'rxjs';
|
||||||
import { AppConfigService } from '../../../app-config';
|
import { AppConfigService } from '../../../app-config';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { LOCALE_ID } from '@angular/core';
|
import { LOCALE_ID } from '@angular/core';
|
||||||
import { registerLocaleData } from '@angular/common';
|
import { registerLocaleData } from '@angular/common';
|
||||||
import localePL from '@angular/common/locales/pl';
|
import localePL from '@angular/common/locales/pl';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
let component: DateCellComponent;
|
let component: DateCellComponent;
|
||||||
let appConfigService: AppConfigService;
|
let appConfigService: AppConfigService;
|
||||||
@ -62,11 +61,7 @@ const checkDisplayedTooltip = (expectedTooltip: string) => {
|
|||||||
|
|
||||||
const configureTestingModule = (providers: any[]) => {
|
const configureTestingModule = (providers: any[]) => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [DateCellComponent, NoopTranslateModule],
|
||||||
DateCellComponent,
|
|
||||||
HttpClientTestingModule,
|
|
||||||
TranslateModule.forRoot()
|
|
||||||
],
|
|
||||||
providers
|
providers
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(DateCellComponent);
|
fixture = TestBed.createComponent(DateCellComponent);
|
||||||
|
@ -20,7 +20,7 @@ import { MatDialogRef, MAT_DIALOG_DATA, MatDialogModule } from '@angular/materia
|
|||||||
import { ConfirmDialogComponent } from './confirm.dialog';
|
import { ConfirmDialogComponent } from './confirm.dialog';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('Confirm Dialog Component', () => {
|
describe('Confirm Dialog Component', () => {
|
||||||
let fixture: ComponentFixture<ConfirmDialogComponent>;
|
let fixture: ComponentFixture<ConfirmDialogComponent>;
|
||||||
@ -39,7 +39,7 @@ describe('Confirm Dialog Component', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [MatDialogModule, NoopAnimationsModule, TranslateModule.forRoot()],
|
imports: [MatDialogModule, NoopAnimationsModule, NoopTranslateModule],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: MatDialogRef, useValue: dialogRef },
|
{ provide: MatDialogRef, useValue: dialogRef },
|
||||||
{ provide: MAT_DIALOG_DATA, useValue: data }
|
{ provide: MAT_DIALOG_DATA, useValue: data }
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { JsonPipe, NgClass, NgForOf, NgIf, NgStyle, NgTemplateOutlet, UpperCasePipe } from '@angular/common';
|
import { JsonPipe, NgClass, NgForOf, NgIf, NgStyle, NgTemplateOutlet, UpperCasePipe } from '@angular/common';
|
||||||
import { Component, Inject, Injector, Input, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
|
import { Component, Inject, Injector, Input, OnDestroy, OnInit, Optional, ViewEncapsulation } from '@angular/core';
|
||||||
import { FormsModule } from '@angular/forms';
|
import { FormsModule } from '@angular/forms';
|
||||||
import { MatButtonModule } from '@angular/material/button';
|
import { MatButtonModule } from '@angular/material/button';
|
||||||
import { MatIconModule } from '@angular/material/icon';
|
import { MatIconModule } from '@angular/material/icon';
|
||||||
@ -77,8 +77,9 @@ export class FormRendererComponent<T> implements OnInit, OnDestroy {
|
|||||||
constructor(
|
constructor(
|
||||||
public formService: FormService,
|
public formService: FormService,
|
||||||
private formRulesManager: FormRulesManager<T>,
|
private formRulesManager: FormRulesManager<T>,
|
||||||
|
@Optional()
|
||||||
@Inject(FORM_FIELD_MODEL_RENDER_MIDDLEWARE)
|
@Inject(FORM_FIELD_MODEL_RENDER_MIDDLEWARE)
|
||||||
private middlewareServices: FormFieldModelRenderMiddleware[]
|
private middlewareServices?: FormFieldModelRenderMiddleware[]
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
@ -161,14 +162,16 @@ export class FormRendererComponent<T> implements OnInit, OnDestroy {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private runMiddlewareServices(): void {
|
private runMiddlewareServices(): void {
|
||||||
const formFields = this.formDefinition.getFormFields();
|
if (this.middlewareServices && this.middlewareServices.length > 0) {
|
||||||
|
const formFields = this.formDefinition.getFormFields();
|
||||||
|
|
||||||
formFields.forEach((field) => {
|
formFields.forEach((field) => {
|
||||||
this.middlewareServices.forEach((middlewareService) => {
|
this.middlewareServices.forEach((middlewareService) => {
|
||||||
if (middlewareService.type === field.type) {
|
if (middlewareService.type === field.type) {
|
||||||
field = middlewareService.getParsedField(field);
|
field = middlewareService.getParsedField(field);
|
||||||
}
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -20,13 +20,13 @@ import { FormFieldModel } from '../core/form-field.model';
|
|||||||
import { AmountWidgetComponent, ADF_AMOUNT_SETTINGS } from './amount.widget';
|
import { AmountWidgetComponent, ADF_AMOUNT_SETTINGS } from './amount.widget';
|
||||||
import { FormBaseModule } from '../../../form-base.module';
|
import { FormBaseModule } from '../../../form-base.module';
|
||||||
import { FormFieldTypes } from '../core/form-field-types';
|
import { FormFieldTypes } from '../core/form-field-types';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { FormModel } from '../core/form.model';
|
import { FormModel } from '../core/form.model';
|
||||||
import { HarnessLoader } from '@angular/cdk/testing';
|
import { HarnessLoader } from '@angular/cdk/testing';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { MatInputHarness } from '@angular/material/input/testing';
|
import { MatInputHarness } from '@angular/material/input/testing';
|
||||||
import { MatFormFieldHarness } from '@angular/material/form-field/testing';
|
import { MatFormFieldHarness } from '@angular/material/form-field/testing';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('AmountWidgetComponent', () => {
|
describe('AmountWidgetComponent', () => {
|
||||||
let loader: HarnessLoader;
|
let loader: HarnessLoader;
|
||||||
@ -36,7 +36,7 @@ describe('AmountWidgetComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), NoopAnimationsModule, FormBaseModule]
|
imports: [NoopTranslateModule, NoopAnimationsModule, FormBaseModule]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(AmountWidgetComponent);
|
fixture = TestBed.createComponent(AmountWidgetComponent);
|
||||||
widget = fixture.componentInstance;
|
widget = fixture.componentInstance;
|
||||||
@ -135,7 +135,7 @@ describe('AmountWidgetComponent - rendering', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), NoopAnimationsModule, FormBaseModule]
|
imports: [NoopTranslateModule, NoopAnimationsModule, FormBaseModule]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(AmountWidgetComponent);
|
fixture = TestBed.createComponent(AmountWidgetComponent);
|
||||||
widget = fixture.componentInstance;
|
widget = fixture.componentInstance;
|
||||||
@ -331,7 +331,7 @@ describe('AmountWidgetComponent settings', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), NoopAnimationsModule, FormBaseModule],
|
imports: [NoopTranslateModule, NoopAnimationsModule, FormBaseModule],
|
||||||
providers: [
|
providers: [
|
||||||
{
|
{
|
||||||
provide: ADF_AMOUNT_SETTINGS,
|
provide: ADF_AMOUNT_SETTINGS,
|
||||||
|
@ -19,7 +19,6 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|||||||
import { FormFieldModel } from '../core/form-field.model';
|
import { FormFieldModel } from '../core/form-field.model';
|
||||||
import { FormModel } from '../core/form.model';
|
import { FormModel } from '../core/form.model';
|
||||||
import { DateTimeWidgetComponent } from './date-time.widget';
|
import { DateTimeWidgetComponent } from './date-time.widget';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { FormFieldTypes } from '../core/form-field-types';
|
import { FormFieldTypes } from '../core/form-field-types';
|
||||||
import { HarnessLoader } from '@angular/cdk/testing';
|
import { HarnessLoader } from '@angular/cdk/testing';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
@ -29,7 +28,7 @@ import { MatDialogModule } from '@angular/material/dialog';
|
|||||||
import { MatDatetimepickerModule, MatNativeDatetimeModule } from '@mat-datetimepicker/core';
|
import { MatDatetimepickerModule, MatNativeDatetimeModule } from '@mat-datetimepicker/core';
|
||||||
import { MatDatepickerModule } from '@angular/material/datepicker';
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('DateTimeWidgetComponent', () => {
|
describe('DateTimeWidgetComponent', () => {
|
||||||
let loader: HarnessLoader;
|
let loader: HarnessLoader;
|
||||||
@ -41,8 +40,7 @@ describe('DateTimeWidgetComponent', () => {
|
|||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [
|
||||||
TranslateModule.forRoot(),
|
NoopTranslateModule,
|
||||||
HttpClientTestingModule,
|
|
||||||
NoopAnimationsModule,
|
NoopAnimationsModule,
|
||||||
MatDialogModule,
|
MatDialogModule,
|
||||||
MatNativeDatetimeModule,
|
MatNativeDatetimeModule,
|
||||||
|
@ -23,10 +23,8 @@ import { FormModel } from '../core/form.model';
|
|||||||
import { FormFieldModel } from '../core/form-field.model';
|
import { FormFieldModel } from '../core/form-field.model';
|
||||||
import { FormFieldTypes } from '../core/form-field-types';
|
import { FormFieldTypes } from '../core/form-field-types';
|
||||||
import { MultilineTextWidgetComponentComponent } from './multiline-text.widget';
|
import { MultilineTextWidgetComponentComponent } from './multiline-text.widget';
|
||||||
import { ComponentFixture, getTestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { TranslationService } from '../../../../translation/translation.service';
|
|
||||||
import { TranslationMock } from '../../../../mock/translation.service.mock';
|
|
||||||
|
|
||||||
describe('MultilineTextWidgetComponentComponent', () => {
|
describe('MultilineTextWidgetComponentComponent', () => {
|
||||||
let loader: HarnessLoader;
|
let loader: HarnessLoader;
|
||||||
@ -35,11 +33,10 @@ describe('MultilineTextWidgetComponentComponent', () => {
|
|||||||
let element: HTMLElement;
|
let element: HTMLElement;
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
getTestBed().configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), NoopAnimationsModule],
|
imports: [NoopTranslateModule, NoopAnimationsModule, MultilineTextWidgetComponentComponent]
|
||||||
providers: [{ provide: TranslationService, useClass: TranslationMock }]
|
|
||||||
});
|
});
|
||||||
fixture = getTestBed().createComponent(MultilineTextWidgetComponentComponent);
|
fixture = TestBed.createComponent(MultilineTextWidgetComponentComponent);
|
||||||
widget = fixture.componentInstance;
|
widget = fixture.componentInstance;
|
||||||
element = fixture.nativeElement;
|
element = fixture.nativeElement;
|
||||||
loader = TestbedHarnessEnvironment.loader(fixture);
|
loader = TestbedHarnessEnvironment.loader(fixture);
|
||||||
|
@ -20,11 +20,11 @@ import { FormFieldTypes } from '../core/form-field-types';
|
|||||||
import { FormFieldModel } from '../core/form-field.model';
|
import { FormFieldModel } from '../core/form-field.model';
|
||||||
import { FormModel } from '../core/form.model';
|
import { FormModel } from '../core/form.model';
|
||||||
import { TextWidgetComponent } from './text.widget';
|
import { TextWidgetComponent } from './text.widget';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { HarnessLoader } from '@angular/cdk/testing';
|
import { HarnessLoader } from '@angular/cdk/testing';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { MatInputHarness } from '@angular/material/input/testing';
|
import { MatInputHarness } from '@angular/material/input/testing';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('TextWidgetComponent', () => {
|
describe('TextWidgetComponent', () => {
|
||||||
const form = new FormModel({ taskId: 'fake-task-id' });
|
const form = new FormModel({ taskId: 'fake-task-id' });
|
||||||
@ -37,7 +37,7 @@ describe('TextWidgetComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), NoopAnimationsModule, TextWidgetComponent]
|
imports: [NoopTranslateModule, NoopAnimationsModule, TextWidgetComponent]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(TextWidgetComponent);
|
fixture = TestBed.createComponent(TextWidgetComponent);
|
||||||
widget = fixture.componentInstance;
|
widget = fixture.componentInstance;
|
||||||
|
@ -24,9 +24,9 @@ export interface LangChangeEvent {
|
|||||||
translations: any;
|
translations: any;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** @deprecated use `NoopTranslateModule` instead */
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class TranslationMock implements TranslationService {
|
export class TranslationMock implements TranslationService {
|
||||||
|
|
||||||
defaultLang: string = 'en';
|
defaultLang: string = 'en';
|
||||||
userLang: string;
|
userLang: string;
|
||||||
customLoader: any;
|
customLoader: any;
|
||||||
@ -50,5 +50,4 @@ export class TranslationMock implements TranslationService {
|
|||||||
instant(key: string | Array<string>): string | any {
|
instant(key: string | Array<string>): string | any {
|
||||||
return key;
|
return key;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -20,14 +20,12 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|||||||
import { MatSnackBarConfig, MatSnackBarModule } from '@angular/material/snack-bar';
|
import { MatSnackBarConfig, MatSnackBarModule } from '@angular/material/snack-bar';
|
||||||
import { NotificationService } from './notification.service';
|
import { NotificationService } from './notification.service';
|
||||||
import { TranslationService } from '../../translation/translation.service';
|
import { TranslationService } from '../../translation/translation.service';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { HarnessLoader } from '@angular/cdk/testing';
|
import { HarnessLoader } from '@angular/cdk/testing';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { MatIconHarness } from '@angular/material/icon/testing';
|
import { MatIconHarness } from '@angular/material/icon/testing';
|
||||||
import {MatSnackBarHarness} from '@angular/material/snack-bar/testing';
|
import { MatSnackBarHarness } from '@angular/material/snack-bar/testing';
|
||||||
import { HttpClientModule } from '@angular/common/http';
|
|
||||||
import { TranslationMock } from '../../mock';
|
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
template: '',
|
template: '',
|
||||||
@ -94,10 +92,8 @@ describe('NotificationService', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), NoopAnimationsModule, HttpClientModule, MatSnackBarModule],
|
imports: [NoopTranslateModule, NoopAnimationsModule, MatSnackBarModule],
|
||||||
declarations: [ProvidesNotificationServiceComponent],
|
declarations: [ProvidesNotificationServiceComponent]
|
||||||
providers:[
|
|
||||||
{ provide: TranslationService, useClass: TranslationMock }]
|
|
||||||
});
|
});
|
||||||
translationService = TestBed.inject(TranslationService);
|
translationService = TestBed.inject(TranslationService);
|
||||||
fixture = TestBed.createComponent(ProvidesNotificationServiceComponent);
|
fixture = TestBed.createComponent(ProvidesNotificationServiceComponent);
|
||||||
|
@ -19,13 +19,9 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|||||||
import { PaginationComponent } from './pagination.component';
|
import { PaginationComponent } from './pagination.component';
|
||||||
import { PaginatedComponent } from './paginated-component.interface';
|
import { PaginatedComponent } from './paginated-component.interface';
|
||||||
import { BehaviorSubject } from 'rxjs';
|
import { BehaviorSubject } from 'rxjs';
|
||||||
import { TranslateFakeLoader, TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { PaginationModel } from '../models/pagination.model';
|
import { PaginationModel } from '../models/pagination.model';
|
||||||
import { TranslationService } from '../translation/translation.service';
|
|
||||||
import { TranslationMock } from '../mock/translation.service.mock';
|
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { HttpClientModule } from '@angular/common/http';
|
import { NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
import { MatMenuModule } from '@angular/material/menu';
|
|
||||||
|
|
||||||
class FakePaginationInput implements PaginationModel {
|
class FakePaginationInput implements PaginationModel {
|
||||||
count = 25;
|
count = 25;
|
||||||
@ -46,17 +42,7 @@ describe('PaginationComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [NoopAnimationsModule, NoopTranslateModule, PaginationComponent]
|
||||||
NoopAnimationsModule,
|
|
||||||
HttpClientModule,
|
|
||||||
MatMenuModule,
|
|
||||||
TranslateModule.forRoot({
|
|
||||||
loader: {provide: TranslateLoader, useClass: TranslateFakeLoader}
|
|
||||||
})
|
|
||||||
],
|
|
||||||
providers:[
|
|
||||||
{ provide: TranslationService, useClass: TranslationMock }
|
|
||||||
]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(PaginationComponent);
|
fixture = TestBed.createComponent(PaginationComponent);
|
||||||
component = fixture.componentInstance;
|
component = fixture.componentInstance;
|
||||||
@ -68,7 +54,7 @@ describe('PaginationComponent', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should have an "empty" class if no items present', async () => {
|
it('should have an "empty" class if no items present', async () => {
|
||||||
fixture.detectChanges();
|
fixture.detectChanges();
|
||||||
await fixture.whenStable();
|
await fixture.whenStable();
|
||||||
|
|
||||||
expect(fixture.nativeElement.classList.contains('adf-pagination__empty')).toBeTruthy();
|
expect(fixture.nativeElement.classList.contains('adf-pagination__empty')).toBeTruthy();
|
||||||
|
@ -18,14 +18,11 @@
|
|||||||
import { NgModule, APP_INITIALIZER } from '@angular/core';
|
import { NgModule, APP_INITIALIZER } from '@angular/core';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { RouterTestingModule } from '@angular/router/testing';
|
import { RouterTestingModule } from '@angular/router/testing';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { CoreModule } from '../core.module';
|
import { CoreModule } from '../core.module';
|
||||||
import { AlfrescoApiService } from '../services/alfresco-api.service';
|
import { AlfrescoApiService } from '../services/alfresco-api.service';
|
||||||
import { AlfrescoApiServiceMock } from '../mock/alfresco-api.service.mock';
|
import { AlfrescoApiServiceMock } from '../mock/alfresco-api.service.mock';
|
||||||
import { AppConfigService } from '../app-config/app-config.service';
|
import { AppConfigService } from '../app-config/app-config.service';
|
||||||
import { AppConfigServiceMock } from '../common/mock/app-config.service.mock';
|
import { AppConfigServiceMock } from '../common/mock/app-config.service.mock';
|
||||||
import { TranslationService } from '../translation/translation.service';
|
|
||||||
import { TranslationMock } from '../mock/translation.service.mock';
|
|
||||||
import { DatePipe } from '@angular/common';
|
import { DatePipe } from '@angular/common';
|
||||||
import { CookieService } from '../common/services/cookie.service';
|
import { CookieService } from '../common/services/cookie.service';
|
||||||
import { CookieServiceMock } from '../mock/cookie.service.mock';
|
import { CookieServiceMock } from '../mock/cookie.service.mock';
|
||||||
@ -34,6 +31,7 @@ import { directionalityConfigFactory } from '../common/services/directionality-c
|
|||||||
import { DirectionalityConfigService } from '../common/services/directionality-config.service';
|
import { DirectionalityConfigService } from '../common/services/directionality-config.service';
|
||||||
import { AuthModule, RedirectAuthService } from '../auth';
|
import { AuthModule, RedirectAuthService } from '../auth';
|
||||||
import { EMPTY, of } from 'rxjs';
|
import { EMPTY, of } from 'rxjs';
|
||||||
|
import { NoopTranslateModule } from './noop-translate.module';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@ -41,14 +39,13 @@ import { EMPTY, of } from 'rxjs';
|
|||||||
NoopAnimationsModule,
|
NoopAnimationsModule,
|
||||||
RouterTestingModule,
|
RouterTestingModule,
|
||||||
HttpClientModule,
|
HttpClientModule,
|
||||||
TranslateModule.forRoot(),
|
CoreModule.forRoot(),
|
||||||
CoreModule.forRoot()
|
NoopTranslateModule
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
DatePipe,
|
DatePipe,
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{ provide: CookieService, useClass: CookieServiceMock },
|
{ provide: CookieService, useClass: CookieServiceMock },
|
||||||
{
|
{
|
||||||
provide: APP_INITIALIZER,
|
provide: APP_INITIALIZER,
|
||||||
@ -58,6 +55,6 @@ import { EMPTY, of } from 'rxjs';
|
|||||||
},
|
},
|
||||||
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, init: () => {}, onTokenReceived: of() } }
|
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, init: () => {}, onTokenReceived: of() } }
|
||||||
],
|
],
|
||||||
exports: [NoopAnimationsModule, CoreModule, TranslateModule, RouterTestingModule]
|
exports: [NoopAnimationsModule, CoreModule, RouterTestingModule]
|
||||||
})
|
})
|
||||||
export class CoreTestingModule {}
|
export class CoreTestingModule {}
|
||||||
|
@ -18,3 +18,4 @@
|
|||||||
export * from './setup-test-bed';
|
export * from './setup-test-bed';
|
||||||
export * from './core.testing.module';
|
export * from './core.testing.module';
|
||||||
export * from './core.story.module';
|
export * from './core.story.module';
|
||||||
|
export * from './noop-translate.module';
|
||||||
|
53
lib/core/src/lib/testing/noop-translate.module.ts
Normal file
53
lib/core/src/lib/testing/noop-translate.module.ts
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
/*!
|
||||||
|
* @license
|
||||||
|
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { EventEmitter, NgModule } from '@angular/core';
|
||||||
|
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||||
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
|
import { TranslationService } from '../translation/translation.service';
|
||||||
|
import { LangChangeEvent } from '../mock';
|
||||||
|
import { Observable, of } from 'rxjs';
|
||||||
|
|
||||||
|
export class NoopTranslationService implements TranslationService {
|
||||||
|
defaultLang: string = 'en';
|
||||||
|
userLang: string;
|
||||||
|
customLoader: any;
|
||||||
|
|
||||||
|
translate: any = {
|
||||||
|
onLangChange: new EventEmitter<LangChangeEvent>()
|
||||||
|
};
|
||||||
|
|
||||||
|
addTranslationFolder() {}
|
||||||
|
onTranslationChanged() {}
|
||||||
|
use(): any {}
|
||||||
|
loadTranslation() {}
|
||||||
|
|
||||||
|
get(key: string | Array<string>): Observable<string | any> {
|
||||||
|
return of(key);
|
||||||
|
}
|
||||||
|
|
||||||
|
instant(key: string | Array<string>): string | any {
|
||||||
|
return key;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [HttpClientTestingModule, TranslateModule.forRoot()],
|
||||||
|
providers: [{ provide: TranslationService, useClass: NoopTranslationService }],
|
||||||
|
exports: [TranslateModule]
|
||||||
|
})
|
||||||
|
export class NoopTranslateModule {}
|
@ -19,6 +19,8 @@ import { SimpleChange } from '@angular/core';
|
|||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { TxtViewerComponent } from './txt-viewer.component';
|
import { TxtViewerComponent } from './txt-viewer.component';
|
||||||
import { CoreTestingModule } from '../../../testing';
|
import { CoreTestingModule } from '../../../testing';
|
||||||
|
import { HttpClient } from '@angular/common/http';
|
||||||
|
import { of } from 'rxjs';
|
||||||
|
|
||||||
describe('Text View component', () => {
|
describe('Text View component', () => {
|
||||||
let component: TxtViewerComponent;
|
let component: TxtViewerComponent;
|
||||||
@ -27,41 +29,42 @@ describe('Text View component', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [CoreTestingModule]
|
imports: [CoreTestingModule, TxtViewerComponent]
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(TxtViewerComponent);
|
fixture = TestBed.createComponent(TxtViewerComponent);
|
||||||
|
|
||||||
|
const httpClient = TestBed.inject(HttpClient);
|
||||||
|
spyOn(httpClient, 'get').and.returnValue(of('example'));
|
||||||
|
|
||||||
element = fixture.nativeElement;
|
element = fixture.nativeElement;
|
||||||
component = fixture.componentInstance;
|
component = fixture.componentInstance;
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('View', () => {
|
describe('View', () => {
|
||||||
it('Should text container be present with urlFile', (done) => {
|
it('Should text container be present with urlFile', async () => {
|
||||||
fixture.detectChanges();
|
fixture.detectChanges();
|
||||||
const urlFile = './fake-test-file.txt';
|
const urlFile = './fake-test-file.txt';
|
||||||
const change = new SimpleChange(null, urlFile, true);
|
const change = new SimpleChange(null, urlFile, true);
|
||||||
|
|
||||||
component.ngOnChanges({ urlFile: change }).then(() => {
|
await component.ngOnChanges({ urlFile: change });
|
||||||
fixture.detectChanges();
|
|
||||||
fixture.whenStable().then(() => {
|
fixture.detectChanges();
|
||||||
expect(element.querySelector('.adf-txt-viewer-content').textContent).toContain('example');
|
await fixture.whenStable();
|
||||||
done();
|
|
||||||
});
|
expect(element.querySelector('.adf-txt-viewer-content').textContent).toContain('example');
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Should text container be present with Blob file', (done) => {
|
it('Should text container be present with Blob file', async () => {
|
||||||
const blobFile = new Blob(['text example'], { type: 'text/txt' });
|
const blobFile = new Blob(['text example'], { type: 'text/txt' });
|
||||||
|
|
||||||
const change = new SimpleChange(null, blobFile, true);
|
const change = new SimpleChange(null, blobFile, true);
|
||||||
|
|
||||||
component.ngOnChanges({ blobFile: change }).then(() => {
|
await component.ngOnChanges({ blobFile: change });
|
||||||
fixture.detectChanges();
|
|
||||||
fixture.whenStable().then(() => {
|
fixture.detectChanges();
|
||||||
expect(element.querySelector('.adf-txt-viewer-content').textContent).toContain('example');
|
await fixture.whenStable();
|
||||||
done();
|
|
||||||
});
|
expect(element.querySelector('.adf-txt-viewer-content').textContent).toContain('example');
|
||||||
});
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -17,25 +17,21 @@
|
|||||||
|
|
||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import {
|
import {
|
||||||
AlfrescoApiService,
|
AlfrescoApiService,
|
||||||
AlfrescoApiServiceMock,
|
AlfrescoApiServiceMock,
|
||||||
AppConfigService,
|
AppConfigService,
|
||||||
AppConfigServiceMock,
|
AppConfigServiceMock,
|
||||||
TranslationService,
|
AuthModule,
|
||||||
TranslationMock,
|
NoopTranslateModule
|
||||||
AuthModule
|
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [AuthModule.forRoot({ useHash: true }), NoopAnimationsModule, HttpClientTestingModule, TranslateModule.forRoot()],
|
imports: [AuthModule.forRoot({ useHash: true }), NoopAnimationsModule, NoopTranslateModule],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
{ provide: AppConfigService, useClass: AppConfigServiceMock }
|
||||||
{ provide: TranslationService, useClass: TranslationMock }
|
|
||||||
],
|
],
|
||||||
exports: [NoopAnimationsModule, TranslateModule]
|
exports: [NoopAnimationsModule]
|
||||||
})
|
})
|
||||||
export class InsightsTestingModule {}
|
export class InsightsTestingModule {}
|
||||||
|
@ -16,9 +16,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { Component, ViewEncapsulation, Input, Inject, OnDestroy } from '@angular/core';
|
import { Component, ViewEncapsulation, Input, Inject, OnDestroy } from '@angular/core';
|
||||||
import {
|
import { AppConfigService, UserPreferencesService } from '@alfresco/adf-core';
|
||||||
AppConfigService, UserPreferencesService
|
|
||||||
} from '@alfresco/adf-core';
|
|
||||||
import { ServiceTaskQueryCloudRequestModel } from '../models/service-task-cloud.model';
|
import { ServiceTaskQueryCloudRequestModel } from '../models/service-task-cloud.model';
|
||||||
import { BaseTaskListCloudComponent } from './base-task-list-cloud.component';
|
import { BaseTaskListCloudComponent } from './base-task-list-cloud.component';
|
||||||
import { ServiceTaskListCloudService } from '../services/service-task-list-cloud.service';
|
import { ServiceTaskListCloudService } from '../services/service-task-list-cloud.service';
|
||||||
@ -42,19 +40,17 @@ export class ServiceTaskListCloudComponent extends BaseTaskListCloudComponent im
|
|||||||
private onDestroyServiceTaskList$ = new Subject<boolean>();
|
private onDestroyServiceTaskList$ = new Subject<boolean>();
|
||||||
|
|
||||||
private isReloadingSubject$ = new BehaviorSubject<boolean>(false);
|
private isReloadingSubject$ = new BehaviorSubject<boolean>(false);
|
||||||
isLoading$ = combineLatest([
|
isLoading$ = combineLatest([this.isLoadingPreferences$, this.isReloadingSubject$]).pipe(
|
||||||
this.isLoadingPreferences$,
|
|
||||||
this.isReloadingSubject$
|
|
||||||
]).pipe(
|
|
||||||
map(([isLoadingPreferences, isReloading]) => isLoadingPreferences || isReloading)
|
map(([isLoadingPreferences, isReloading]) => isLoadingPreferences || isReloading)
|
||||||
);
|
);
|
||||||
|
|
||||||
constructor(private serviceTaskListCloudService: ServiceTaskListCloudService,
|
constructor(
|
||||||
appConfigService: AppConfigService,
|
private serviceTaskListCloudService: ServiceTaskListCloudService,
|
||||||
taskCloudService: TaskCloudService,
|
appConfigService: AppConfigService,
|
||||||
userPreferences: UserPreferencesService,
|
taskCloudService: TaskCloudService,
|
||||||
@Inject(TASK_LIST_PREFERENCES_SERVICE_TOKEN) cloudPreferenceService: PreferenceCloudServiceInterface
|
userPreferences: UserPreferencesService,
|
||||||
) {
|
@Inject(TASK_LIST_PREFERENCES_SERVICE_TOKEN) cloudPreferenceService: PreferenceCloudServiceInterface
|
||||||
|
) {
|
||||||
super(appConfigService, taskCloudService, userPreferences, PRESET_KEY, cloudPreferenceService);
|
super(appConfigService, taskCloudService, userPreferences, PRESET_KEY, cloudPreferenceService);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -69,22 +65,20 @@ export class ServiceTaskListCloudComponent extends BaseTaskListCloudComponent im
|
|||||||
this.requestNode = this.createRequestNode();
|
this.requestNode = this.createRequestNode();
|
||||||
|
|
||||||
if (this.requestNode.appName || this.requestNode.appName === '') {
|
if (this.requestNode.appName || this.requestNode.appName === '') {
|
||||||
|
combineLatest([this.serviceTaskListCloudService.getServiceTaskByRequest(this.requestNode), this.isColumnSchemaCreated$])
|
||||||
combineLatest([
|
.pipe(takeUntil(this.onDestroyServiceTaskList$))
|
||||||
this.serviceTaskListCloudService.getServiceTaskByRequest(this.requestNode),
|
.subscribe(
|
||||||
this.isColumnSchemaCreated$
|
([tasks]) => {
|
||||||
]).pipe(
|
this.rows = tasks.list.entries;
|
||||||
takeUntil(this.onDestroyServiceTaskList$)
|
this.success.emit(tasks);
|
||||||
).subscribe(
|
this.pagination.next(tasks.list.pagination);
|
||||||
([tasks]) => {
|
this.isReloadingSubject$.next(false);
|
||||||
this.rows = tasks.list.entries;
|
},
|
||||||
this.success.emit(tasks);
|
(error) => {
|
||||||
this.pagination.next(tasks.list.pagination);
|
this.error.emit(error);
|
||||||
this.isReloadingSubject$.next(false);
|
this.isReloadingSubject$.next(false);
|
||||||
}, (error) => {
|
}
|
||||||
this.error.emit(error);
|
);
|
||||||
this.isReloadingSubject$.next(false);
|
|
||||||
});
|
|
||||||
} else {
|
} else {
|
||||||
this.rows = [];
|
this.rows = [];
|
||||||
}
|
}
|
||||||
|
@ -151,20 +151,18 @@ export class TaskListCloudComponent extends BaseTaskListCloudComponent<ProcessLi
|
|||||||
dataAdapter: TasksListDatatableAdapter | undefined;
|
dataAdapter: TasksListDatatableAdapter | undefined;
|
||||||
|
|
||||||
private isReloadingSubject$ = new BehaviorSubject<boolean>(false);
|
private isReloadingSubject$ = new BehaviorSubject<boolean>(false);
|
||||||
isLoading$ = combineLatest([
|
isLoading$ = combineLatest([this.isLoadingPreferences$, this.isReloadingSubject$]).pipe(
|
||||||
this.isLoadingPreferences$,
|
|
||||||
this.isReloadingSubject$
|
|
||||||
]).pipe(
|
|
||||||
map(([isLoadingPreferences, isReloading]) => isLoadingPreferences || isReloading)
|
map(([isLoadingPreferences, isReloading]) => isLoadingPreferences || isReloading)
|
||||||
);
|
);
|
||||||
|
|
||||||
constructor(@Inject(TASK_LIST_CLOUD_TOKEN) public taskListCloudService: TaskListCloudServiceInterface,
|
constructor(
|
||||||
appConfigService: AppConfigService,
|
@Inject(TASK_LIST_CLOUD_TOKEN) public taskListCloudService: TaskListCloudServiceInterface,
|
||||||
taskCloudService: TaskCloudService,
|
appConfigService: AppConfigService,
|
||||||
userPreferences: UserPreferencesService,
|
taskCloudService: TaskCloudService,
|
||||||
@Inject(TASK_LIST_PREFERENCES_SERVICE_TOKEN) cloudPreferenceService: PreferenceCloudServiceInterface,
|
userPreferences: UserPreferencesService,
|
||||||
private viewModelCreator: VariableMapperService
|
@Inject(TASK_LIST_PREFERENCES_SERVICE_TOKEN) cloudPreferenceService: PreferenceCloudServiceInterface,
|
||||||
) {
|
private viewModelCreator: VariableMapperService
|
||||||
|
) {
|
||||||
super(appConfigService, taskCloudService, userPreferences, PRESET_KEY, cloudPreferenceService);
|
super(appConfigService, taskCloudService, userPreferences, PRESET_KEY, cloudPreferenceService);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -176,31 +174,33 @@ export class TaskListCloudComponent extends BaseTaskListCloudComponent<ProcessLi
|
|||||||
reload() {
|
reload() {
|
||||||
this.isReloadingSubject$.next(true);
|
this.isReloadingSubject$.next(true);
|
||||||
|
|
||||||
this.isColumnSchemaCreated$.pipe(
|
this.isColumnSchemaCreated$
|
||||||
switchMap(() => of(this.createRequestNode())),
|
.pipe(
|
||||||
tap((requestNode) => this.requestNode = requestNode),
|
switchMap(() => of(this.createRequestNode())),
|
||||||
switchMap((requestNode) => this.taskListCloudService.getTaskByRequest(requestNode)),
|
tap((requestNode) => (this.requestNode = requestNode)),
|
||||||
takeUntil(this.onDestroyTaskList$)
|
switchMap((requestNode) => this.taskListCloudService.getTaskByRequest(requestNode)),
|
||||||
).subscribe((tasks: { list: PaginatedEntries<TaskCloudModel> }) => {
|
takeUntil(this.onDestroyTaskList$)
|
||||||
const tasksWithVariables = tasks.list.entries.map((task) => ({
|
)
|
||||||
...task,
|
.subscribe(
|
||||||
variables: task.processVariables
|
(tasks: { list: PaginatedEntries<TaskCloudModel> }) => {
|
||||||
}));
|
const tasksWithVariables = tasks.list.entries.map((task) => ({
|
||||||
|
...task,
|
||||||
|
variables: task.processVariables
|
||||||
|
}));
|
||||||
|
|
||||||
this.rows = this.viewModelCreator.mapVariablesByColumnTitle(
|
this.rows = this.viewModelCreator.mapVariablesByColumnTitle(tasksWithVariables, this.columns);
|
||||||
tasksWithVariables,
|
|
||||||
this.columns
|
this.dataAdapter = new TasksListDatatableAdapter(this.rows, this.columns);
|
||||||
|
|
||||||
|
this.success.emit(tasks);
|
||||||
|
this.isReloadingSubject$.next(false);
|
||||||
|
this.pagination.next(tasks.list.pagination);
|
||||||
|
},
|
||||||
|
(error) => {
|
||||||
|
this.error.emit(error);
|
||||||
|
this.isReloadingSubject$.next(false);
|
||||||
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
this.dataAdapter = new TasksListDatatableAdapter(this.rows, this.columns);
|
|
||||||
|
|
||||||
this.success.emit(tasks);
|
|
||||||
this.isReloadingSubject$.next(false);
|
|
||||||
this.pagination.next(tasks.list.pagination);
|
|
||||||
}, (error) => {
|
|
||||||
this.error.emit(error);
|
|
||||||
this.isReloadingSubject$.next(false);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
createRequestNode(): TaskQueryCloudRequestModel {
|
createRequestNode(): TaskQueryCloudRequestModel {
|
||||||
@ -242,11 +242,8 @@ export class TaskListCloudComponent extends BaseTaskListCloudComponent<ProcessLi
|
|||||||
|
|
||||||
private getRequestNodeVariables(): string[] | undefined {
|
private getRequestNodeVariables(): string[] | undefined {
|
||||||
const displayedVariableColumns: string[] = (this.columns ?? [])
|
const displayedVariableColumns: string[] = (this.columns ?? [])
|
||||||
.filter(column =>
|
.filter((column) => column.customData?.columnType === 'process-variable-column' && column.isHidden !== true)
|
||||||
column.customData?.columnType === 'process-variable-column' &&
|
.map((column) => {
|
||||||
column.isHidden !== true
|
|
||||||
)
|
|
||||||
.map(column => {
|
|
||||||
const variableDefinitionsPayload = column.customData.variableDefinitionsPayload;
|
const variableDefinitionsPayload = column.customData.variableDefinitionsPayload;
|
||||||
return variableDefinitionsPayload;
|
return variableDefinitionsPayload;
|
||||||
})
|
})
|
||||||
|
@ -1,30 +0,0 @@
|
|||||||
/*!
|
|
||||||
* @license
|
|
||||||
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import { TaskListCloudModule } from './task-list-cloud.module';
|
|
||||||
|
|
||||||
describe('TaskListCloudModule', () => {
|
|
||||||
let taskListCloudModule: TaskListCloudModule;
|
|
||||||
|
|
||||||
beforeEach(() => {
|
|
||||||
taskListCloudModule = new TaskListCloudModule();
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should create an instance', () => {
|
|
||||||
expect(taskListCloudModule).toBeTruthy();
|
|
||||||
});
|
|
||||||
});
|
|
@ -26,19 +26,9 @@ import { TaskListCloudService } from './services/task-list-cloud.service';
|
|||||||
import { LocalPreferenceCloudService } from '../../services/local-preference-cloud.service';
|
import { LocalPreferenceCloudService } from '../../services/local-preference-cloud.service';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [CommonModule, MaterialModule, CoreModule],
|
||||||
CommonModule,
|
declarations: [TaskListCloudComponent, ServiceTaskListCloudComponent],
|
||||||
MaterialModule,
|
exports: [TaskListCloudComponent, ServiceTaskListCloudComponent],
|
||||||
CoreModule
|
|
||||||
],
|
|
||||||
declarations: [
|
|
||||||
TaskListCloudComponent,
|
|
||||||
ServiceTaskListCloudComponent
|
|
||||||
],
|
|
||||||
exports: [
|
|
||||||
TaskListCloudComponent,
|
|
||||||
ServiceTaskListCloudComponent
|
|
||||||
],
|
|
||||||
providers: [
|
providers: [
|
||||||
{
|
{
|
||||||
provide: TASK_LIST_CLOUD_TOKEN,
|
provide: TASK_LIST_CLOUD_TOKEN,
|
||||||
@ -50,4 +40,4 @@ import { LocalPreferenceCloudService } from '../../services/local-preference-clo
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
export class TaskListCloudModule { }
|
export class TaskListCloudModule {}
|
||||||
|
@ -25,7 +25,8 @@ import {
|
|||||||
AppConfigServiceMock,
|
AppConfigServiceMock,
|
||||||
TranslationService,
|
TranslationService,
|
||||||
TranslationMock,
|
TranslationMock,
|
||||||
CoreModule, AuthModule
|
CoreModule,
|
||||||
|
AuthModule
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import { ProcessServicesCloudModule } from '../process-services-cloud.module';
|
import { ProcessServicesCloudModule } from '../process-services-cloud.module';
|
||||||
@ -46,11 +47,6 @@ import { RouterTestingModule } from '@angular/router/testing';
|
|||||||
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
||||||
{ provide: TranslationService, useClass: TranslationMock }
|
{ provide: TranslationService, useClass: TranslationMock }
|
||||||
],
|
],
|
||||||
exports: [
|
exports: [NoopAnimationsModule, TranslateModule, CoreModule, ProcessServicesCloudModule]
|
||||||
NoopAnimationsModule,
|
|
||||||
TranslateModule,
|
|
||||||
CoreModule,
|
|
||||||
ProcessServicesCloudModule
|
|
||||||
]
|
|
||||||
})
|
})
|
||||||
export class ProcessServiceCloudTestingModule {}
|
export class ProcessServiceCloudTestingModule {}
|
||||||
|
@ -27,6 +27,7 @@ import { HarnessLoader } from '@angular/cdk/testing';
|
|||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { MatProgressSpinnerHarness } from '@angular/material/progress-spinner/testing';
|
import { MatProgressSpinnerHarness } from '@angular/material/progress-spinner/testing';
|
||||||
import { AppDefinitionRepresentation } from '@alfresco/js-api';
|
import { AppDefinitionRepresentation } from '@alfresco/js-api';
|
||||||
|
import { CustomEmptyContentTemplateDirective } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('AppsListComponent', () => {
|
describe('AppsListComponent', () => {
|
||||||
let loader: HarnessLoader;
|
let loader: HarnessLoader;
|
||||||
@ -37,6 +38,8 @@ describe('AppsListComponent', () => {
|
|||||||
let getAppsSpy: jasmine.Spy;
|
let getAppsSpy: jasmine.Spy;
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [CustomEmptyContentTemplateDirective, AppsListComponent],
|
||||||
template: `
|
template: `
|
||||||
<adf-apps>
|
<adf-apps>
|
||||||
<adf-custom-empty-content-template>
|
<adf-custom-empty-content-template>
|
||||||
@ -49,8 +52,7 @@ describe('AppsListComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, CustomEmptyAppListTemplateComponent]
|
||||||
declarations: [CustomEmptyAppListTemplateComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(AppsListComponent);
|
fixture = TestBed.createComponent(AppsListComponent);
|
||||||
component = fixture.componentInstance;
|
component = fixture.componentInstance;
|
||||||
|
@ -27,6 +27,7 @@ import { ProcessTestingModule } from '../../testing/process.testing.module';
|
|||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-dialog-test',
|
selector: 'adf-dialog-test',
|
||||||
|
standalone: true,
|
||||||
template: ''
|
template: ''
|
||||||
})
|
})
|
||||||
export class DialogSelectAppTestComponent {
|
export class DialogSelectAppTestComponent {
|
||||||
@ -57,8 +58,7 @@ describe('Select app dialog', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, DialogSelectAppTestComponent],
|
||||||
declarations: [DialogSelectAppTestComponent],
|
|
||||||
providers: [
|
providers: [
|
||||||
{
|
{
|
||||||
provide: OverlayContainer,
|
provide: OverlayContainer,
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { SimpleChange, Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
import { SimpleChange, Component } from '@angular/core';
|
||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import { By } from '@angular/platform-browser';
|
import { By } from '@angular/platform-browser';
|
||||||
import { of, throwError } from 'rxjs';
|
import { of, throwError } from 'rxjs';
|
||||||
@ -26,6 +26,7 @@ import { ProcessContentService } from '../../form/services/process-content.servi
|
|||||||
import { HarnessLoader } from '@angular/cdk/testing';
|
import { HarnessLoader } from '@angular/cdk/testing';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { MatMenuHarness } from '@angular/material/menu/testing';
|
import { MatMenuHarness } from '@angular/material/menu/testing';
|
||||||
|
import { EmptyListComponent, EmptyListHeaderDirective } from '@alfresco/adf-core';
|
||||||
|
|
||||||
describe('ProcessAttachmentListComponent', () => {
|
describe('ProcessAttachmentListComponent', () => {
|
||||||
let loader: HarnessLoader;
|
let loader: HarnessLoader;
|
||||||
@ -239,6 +240,8 @@ describe('ProcessAttachmentListComponent', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [EmptyListHeaderDirective, EmptyListComponent, ProcessAttachmentListComponent],
|
||||||
template: `
|
template: `
|
||||||
<adf-process-attachment-list>
|
<adf-process-attachment-list>
|
||||||
<adf-empty-list>
|
<adf-empty-list>
|
||||||
@ -254,9 +257,7 @@ describe('Custom CustomEmptyTemplateComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, CustomEmptyTemplateComponent]
|
||||||
declarations: [CustomEmptyTemplateComponent],
|
|
||||||
schemas: [CUSTOM_ELEMENTS_SCHEMA]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(CustomEmptyTemplateComponent);
|
fixture = TestBed.createComponent(CustomEmptyTemplateComponent);
|
||||||
fixture.detectChanges();
|
fixture.detectChanges();
|
||||||
|
@ -39,6 +39,8 @@ import { TaskFormService } from './services/task-form.service';
|
|||||||
import { TaskService } from './services/task.service';
|
import { TaskService } from './services/task.service';
|
||||||
import { EditorService } from './services/editor.service';
|
import { EditorService } from './services/editor.service';
|
||||||
import { ModelService } from './services/model.service';
|
import { ModelService } from './services/model.service';
|
||||||
|
import { FormCustomOutcomesComponent } from '@alfresco/adf-process-services';
|
||||||
|
import { MatButtonModule } from '@angular/material/button';
|
||||||
|
|
||||||
describe('FormComponent', () => {
|
describe('FormComponent', () => {
|
||||||
let fixture: ComponentFixture<FormComponent>;
|
let fixture: ComponentFixture<FormComponent>;
|
||||||
@ -981,6 +983,8 @@ describe('FormComponent', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [FormCustomOutcomesComponent, MatButtonModule, FormComponent],
|
||||||
selector: 'adf-form-with-custom-outcomes',
|
selector: 'adf-form-with-custom-outcomes',
|
||||||
template: ` <adf-form #adfForm>
|
template: ` <adf-form #adfForm>
|
||||||
<adf-form-custom-outcomes>
|
<adf-form-custom-outcomes>
|
||||||
@ -1005,8 +1009,7 @@ describe('FormWithCustomOutComesComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, FormWithCustomOutComesComponent]
|
||||||
declarations: [FormWithCustomOutComesComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(FormWithCustomOutComesComponent);
|
fixture = TestBed.createComponent(FormWithCustomOutComesComponent);
|
||||||
customComponent = fixture.componentInstance;
|
customComponent = fixture.componentInstance;
|
||||||
|
@ -17,18 +17,8 @@
|
|||||||
|
|
||||||
import { FileViewerWidgetComponent } from './file-viewer.widget';
|
import { FileViewerWidgetComponent } from './file-viewer.widget';
|
||||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||||
import {
|
import { FormModel, FormService, FormFieldModel, RedirectAuthService, NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
FormModel,
|
|
||||||
FormService,
|
|
||||||
FormFieldModel,
|
|
||||||
TranslationService,
|
|
||||||
TranslationMock,
|
|
||||||
AuthenticationService,
|
|
||||||
RedirectAuthService
|
|
||||||
} from '@alfresco/adf-core';
|
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { EMPTY, of } from 'rxjs';
|
import { EMPTY, of } from 'rxjs';
|
||||||
|
|
||||||
describe('FileViewerWidgetComponent', () => {
|
describe('FileViewerWidgetComponent', () => {
|
||||||
@ -54,11 +44,9 @@ describe('FileViewerWidgetComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), FileViewerWidgetComponent, HttpClientTestingModule],
|
imports: [NoopTranslateModule, FileViewerWidgetComponent],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: FormService, useValue: formServiceStub },
|
{ provide: FormService, useValue: formServiceStub },
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
AuthenticationService,
|
|
||||||
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, onTokenReceived: of() } }
|
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, onTokenReceived: of() } }
|
||||||
],
|
],
|
||||||
schemas: [CUSTOM_ELEMENTS_SCHEMA]
|
schemas: [CUSTOM_ELEMENTS_SCHEMA]
|
||||||
|
@ -24,26 +24,18 @@ import {
|
|||||||
FormFieldOption,
|
FormFieldOption,
|
||||||
FormFieldModel,
|
FormFieldModel,
|
||||||
FormModel,
|
FormModel,
|
||||||
ErrorWidgetComponent,
|
|
||||||
TranslationMock,
|
|
||||||
AlfrescoApiServiceMock,
|
AlfrescoApiServiceMock,
|
||||||
AppConfigServiceMock,
|
AppConfigServiceMock,
|
||||||
AppConfigService,
|
AppConfigService,
|
||||||
AlfrescoApiService,
|
AlfrescoApiService,
|
||||||
TranslationService
|
NoopTranslateModule
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
import { RadioButtonsWidgetComponent } from './radio-buttons.widget';
|
import { RadioButtonsWidgetComponent } from './radio-buttons.widget';
|
||||||
import { MatIconModule } from '@angular/material/icon';
|
|
||||||
import { MatRadioModule } from '@angular/material/radio';
|
|
||||||
import { FormsModule } from '@angular/forms';
|
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { TaskFormService } from '../../services/task-form.service';
|
import { TaskFormService } from '../../services/task-form.service';
|
||||||
import { ProcessDefinitionService } from '../../services/process-definition.service';
|
import { ProcessDefinitionService } from '../../services/process-definition.service';
|
||||||
import { HarnessLoader } from '@angular/cdk/testing';
|
import { HarnessLoader } from '@angular/cdk/testing';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { MatRadioButtonHarness, MatRadioGroupHarness } from '@angular/material/radio/testing';
|
import { MatRadioButtonHarness, MatRadioGroupHarness } from '@angular/material/radio/testing';
|
||||||
import { MatButtonModule } from '@angular/material/button';
|
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
|
|
||||||
describe('RadioButtonsWidgetComponent', () => {
|
describe('RadioButtonsWidgetComponent', () => {
|
||||||
let formService: FormService;
|
let formService: FormService;
|
||||||
@ -53,18 +45,8 @@ describe('RadioButtonsWidgetComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
getTestBed().configureTestingModule({
|
getTestBed().configureTestingModule({
|
||||||
imports: [
|
imports: [NoopTranslateModule, RadioButtonsWidgetComponent],
|
||||||
TranslateModule.forRoot(),
|
|
||||||
MatRadioModule,
|
|
||||||
MatButtonModule,
|
|
||||||
FormsModule,
|
|
||||||
HttpClientTestingModule,
|
|
||||||
MatIconModule,
|
|
||||||
ErrorWidgetComponent,
|
|
||||||
RadioButtonsWidgetComponent
|
|
||||||
],
|
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
{ provide: AppConfigService, useClass: AppConfigServiceMock }
|
{ provide: AppConfigService, useClass: AppConfigServiceMock }
|
||||||
]
|
]
|
||||||
|
@ -22,9 +22,12 @@ import { ProcessService } from '../../services/process.service';
|
|||||||
import { DownloadService } from '@alfresco/adf-core';
|
import { DownloadService } from '@alfresco/adf-core';
|
||||||
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
||||||
import { ProcessInstanceAuditInfoRepresentation } from '@alfresco/js-api';
|
import { ProcessInstanceAuditInfoRepresentation } from '@alfresco/js-api';
|
||||||
|
import { ProcessAuditDirective } from '@alfresco/adf-process-services';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-basic-button',
|
selector: 'adf-basic-button',
|
||||||
|
standalone: true,
|
||||||
|
imports: [ProcessAuditDirective],
|
||||||
template: ` <button
|
template: ` <button
|
||||||
id="auditButton"
|
id="auditButton"
|
||||||
adf-process-audit
|
adf-process-audit
|
||||||
@ -79,8 +82,7 @@ describe('ProcessAuditDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, BasicButtonComponent]
|
||||||
declarations: [BasicButtonComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(BasicButtonComponent);
|
fixture = TestBed.createComponent(BasicButtonComponent);
|
||||||
component = fixture.componentInstance;
|
component = fixture.componentInstance;
|
||||||
|
@ -28,7 +28,11 @@ import {
|
|||||||
ObjectDataRow,
|
ObjectDataRow,
|
||||||
ObjectDataTableAdapter,
|
ObjectDataTableAdapter,
|
||||||
DataCellEvent,
|
DataCellEvent,
|
||||||
ObjectDataColumn
|
ObjectDataColumn,
|
||||||
|
DataColumnComponent,
|
||||||
|
DataColumnListComponent,
|
||||||
|
FullNamePipe,
|
||||||
|
CustomEmptyContentTemplateDirective
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
import { fakeProcessInstance, fakeProcessInstancesWithNoName, fakeProcessInstancesEmpty, fakeProcessColumnSchema } from '../../../testing/mock';
|
import { fakeProcessInstance, fakeProcessInstancesWithNoName, fakeProcessInstancesEmpty, fakeProcessColumnSchema } from '../../../testing/mock';
|
||||||
import { ProcessService } from '../../services/process.service';
|
import { ProcessService } from '../../services/process.service';
|
||||||
@ -438,6 +442,8 @@ describe('ProcessInstanceListComponent', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [ProcessInstanceListComponent, DataColumnListComponent, DataColumnComponent, FullNamePipe],
|
||||||
template: ` <adf-process-instance-list #processListComponentInstance>
|
template: ` <adf-process-instance-list #processListComponentInstance>
|
||||||
<data-columns>
|
<data-columns>
|
||||||
<data-column key="name" title="ADF_PROCESS_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column" [order]="3"></data-column>
|
<data-column key="name" title="ADF_PROCESS_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column" [order]="3"></data-column>
|
||||||
@ -461,8 +467,7 @@ describe('CustomProcessListComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, CustomProcessListComponent]
|
||||||
declarations: [CustomProcessListComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(CustomProcessListComponent);
|
fixture = TestBed.createComponent(CustomProcessListComponent);
|
||||||
fixture.detectChanges();
|
fixture.detectChanges();
|
||||||
@ -480,6 +485,8 @@ describe('CustomProcessListComponent', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [CustomEmptyContentTemplateDirective, ProcessInstanceListComponent],
|
||||||
template: `
|
template: `
|
||||||
<adf-process-instance-list [appId]="1">
|
<adf-process-instance-list [appId]="1">
|
||||||
<adf-custom-empty-content-template>
|
<adf-custom-empty-content-template>
|
||||||
@ -489,14 +496,14 @@ describe('CustomProcessListComponent', () => {
|
|||||||
`
|
`
|
||||||
})
|
})
|
||||||
class EmptyTemplateComponent {}
|
class EmptyTemplateComponent {}
|
||||||
|
|
||||||
describe('Process List: Custom EmptyTemplateComponent', () => {
|
describe('Process List: Custom EmptyTemplateComponent', () => {
|
||||||
let fixture: ComponentFixture<EmptyTemplateComponent>;
|
let fixture: ComponentFixture<EmptyTemplateComponent>;
|
||||||
let processService: ProcessService;
|
let processService: ProcessService;
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, EmptyTemplateComponent]
|
||||||
declarations: [EmptyTemplateComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(EmptyTemplateComponent);
|
fixture = TestBed.createComponent(EmptyTemplateComponent);
|
||||||
processService = TestBed.inject(ProcessService);
|
processService = TestBed.inject(ProcessService);
|
||||||
@ -521,6 +528,8 @@ describe('Process List: Custom EmptyTemplateComponent', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [ProcessInstanceListComponent, DataColumnComponent, DataColumnListComponent, FullNamePipe],
|
||||||
template: ` <adf-process-instance-list
|
template: ` <adf-process-instance-list
|
||||||
[appId]="appId"
|
[appId]="appId"
|
||||||
[showContextMenu]="true"
|
[showContextMenu]="true"
|
||||||
@ -591,8 +600,7 @@ describe('ProcessListContextMenuComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, ProcessListContextMenuComponent]
|
||||||
declarations: [ProcessListContextMenuComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(ProcessListContextMenuComponent);
|
fixture = TestBed.createComponent(ProcessListContextMenuComponent);
|
||||||
customComponent = fixture.componentInstance;
|
customComponent = fixture.componentInstance;
|
||||||
|
@ -17,14 +17,7 @@
|
|||||||
|
|
||||||
import { SimpleChange } from '@angular/core';
|
import { SimpleChange } from '@angular/core';
|
||||||
import { ComponentFixture, getTestBed } from '@angular/core/testing';
|
import { ComponentFixture, getTestBed } from '@angular/core/testing';
|
||||||
import {
|
import { AppConfigService, AppConfigServiceMock, FormRenderingService, LocalizedDatePipe, NoopTranslateModule } from '@alfresco/adf-core';
|
||||||
AppConfigService,
|
|
||||||
AppConfigServiceMock,
|
|
||||||
FormRenderingService,
|
|
||||||
LocalizedDatePipe,
|
|
||||||
TranslationMock,
|
|
||||||
TranslationService
|
|
||||||
} from '@alfresco/adf-core';
|
|
||||||
import { of, throwError } from 'rxjs';
|
import { of, throwError } from 'rxjs';
|
||||||
import { MatSelectChange } from '@angular/material/select';
|
import { MatSelectChange } from '@angular/material/select';
|
||||||
import { ProcessService } from '../../services/process.service';
|
import { ProcessService } from '../../services/process.service';
|
||||||
@ -37,19 +30,15 @@ import {
|
|||||||
testProcessDefinitions
|
testProcessDefinitions
|
||||||
} from '../../../testing/mock';
|
} from '../../../testing/mock';
|
||||||
import { StartProcessInstanceComponent } from './start-process.component';
|
import { StartProcessInstanceComponent } from './start-process.component';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { HarnessLoader } from '@angular/cdk/testing';
|
import { HarnessLoader } from '@angular/cdk/testing';
|
||||||
import { MatFormFieldHarness } from '@angular/material/form-field/testing';
|
import { MatFormFieldHarness } from '@angular/material/form-field/testing';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { MatAutocompleteHarness } from '@angular/material/autocomplete/testing';
|
import { MatAutocompleteHarness } from '@angular/material/autocomplete/testing';
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
import { RestVariable } from '@alfresco/js-api';
|
import { RestVariable } from '@alfresco/js-api';
|
||||||
import { ActivitiContentService } from '../../../form/services/activiti-alfresco.service';
|
import { ActivitiContentService } from '../../../form/services/activiti-alfresco.service';
|
||||||
import { AppsProcessService } from '../../../services/apps-process.service';
|
import { AppsProcessService } from '../../../services/apps-process.service';
|
||||||
|
|
||||||
import { ProcessFormRenderingService } from '../../../form';
|
import { ProcessFormRenderingService } from '../../../form';
|
||||||
import { FORM_FIELD_MODEL_RENDER_MIDDLEWARE } from 'lib/core/src/lib/form/components/middlewares/middleware';
|
|
||||||
import { deployedApps } from '../../../testing/mock/apps-list.mock';
|
import { deployedApps } from '../../../testing/mock/apps-list.mock';
|
||||||
|
|
||||||
describe('StartProcessComponent', () => {
|
describe('StartProcessComponent', () => {
|
||||||
@ -68,17 +57,11 @@ describe('StartProcessComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
getTestBed().configureTestingModule({
|
getTestBed().configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), NoopAnimationsModule, HttpClientTestingModule, StartProcessInstanceComponent],
|
imports: [NoopTranslateModule, NoopAnimationsModule, StartProcessInstanceComponent],
|
||||||
providers: [
|
providers: [
|
||||||
LocalizedDatePipe,
|
LocalizedDatePipe,
|
||||||
ActivitiContentService,
|
|
||||||
ProcessService,
|
|
||||||
AppsProcessService,
|
|
||||||
FormRenderingService,
|
|
||||||
{ provide: FormRenderingService, useClass: ProcessFormRenderingService },
|
{ provide: FormRenderingService, useClass: ProcessFormRenderingService },
|
||||||
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
{ provide: AppConfigService, useClass: AppConfigServiceMock }
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
{ provide: FORM_FIELD_MODEL_RENDER_MIDDLEWARE, useValue: [] }
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -20,12 +20,15 @@ import { ComponentFixture, fakeAsync, TestBed } from '@angular/core/testing';
|
|||||||
import { of } from 'rxjs';
|
import { of } from 'rxjs';
|
||||||
import { TaskListService } from '../../services/tasklist.service';
|
import { TaskListService } from '../../services/tasklist.service';
|
||||||
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
||||||
|
import { TaskAuditDirective } from '@alfresco/adf-process-services';
|
||||||
|
|
||||||
declare let jasmine: any;
|
declare let jasmine: any;
|
||||||
|
|
||||||
describe('TaskAuditDirective', () => {
|
describe('TaskAuditDirective', () => {
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-basic-button',
|
selector: 'adf-basic-button',
|
||||||
|
standalone: true,
|
||||||
|
imports: [TaskAuditDirective],
|
||||||
template: ` <button
|
template: ` <button
|
||||||
id="auditButton"
|
id="auditButton"
|
||||||
adf-task-audit
|
adf-task-audit
|
||||||
@ -71,8 +74,7 @@ describe('TaskAuditDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, BasicButtonComponent]
|
||||||
declarations: [BasicButtonComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(BasicButtonComponent);
|
fixture = TestBed.createComponent(BasicButtonComponent);
|
||||||
component = fixture.componentInstance;
|
component = fixture.componentInstance;
|
||||||
|
@ -20,11 +20,13 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|||||||
import { of } from 'rxjs';
|
import { of } from 'rxjs';
|
||||||
import { TaskListService } from '../../services/tasklist.service';
|
import { TaskListService } from '../../services/tasklist.service';
|
||||||
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
||||||
|
import { ClaimTaskDirective } from '@alfresco/adf-process-services';
|
||||||
|
|
||||||
describe('ClaimTaskDirective', () => {
|
describe('ClaimTaskDirective', () => {
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-claim-test-component',
|
standalone: true,
|
||||||
|
imports: [ClaimTaskDirective],
|
||||||
|
selector: 'adf-claim-test-component',
|
||||||
template: '<button adf-claim-task [taskId]="taskId" (success)="onClaim($event)">Claim</button>'
|
template: '<button adf-claim-task [taskId]="taskId" (success)="onClaim($event)">Claim</button>'
|
||||||
})
|
})
|
||||||
class TestComponent {
|
class TestComponent {
|
||||||
@ -43,12 +45,7 @@ describe('ClaimTaskDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [ProcessTestingModule, TestComponent]
|
||||||
ProcessTestingModule
|
|
||||||
],
|
|
||||||
declarations: [
|
|
||||||
TestComponent
|
|
||||||
]
|
|
||||||
});
|
});
|
||||||
taskListService = TestBed.inject(TaskListService);
|
taskListService = TestBed.inject(TaskListService);
|
||||||
fixture = TestBed.createComponent(TestComponent);
|
fixture = TestBed.createComponent(TestComponent);
|
||||||
@ -78,30 +75,27 @@ describe('ClaimTaskDirective', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
describe('Claim Task Directive validation errors', () => {
|
describe('Claim Task Directive validation errors', () => {
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-claim-no-fields-validation-component',
|
standalone: true,
|
||||||
|
imports: [ClaimTaskDirective],
|
||||||
|
selector: 'adf-claim-no-fields-validation-component',
|
||||||
template: '<button adf-claim-task></button>'
|
template: '<button adf-claim-task></button>'
|
||||||
})
|
})
|
||||||
class ClaimTestMissingInputDirectiveComponent { }
|
class ClaimTestMissingInputDirectiveComponent {}
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-claim-no-taskid-validation-component',
|
standalone: true,
|
||||||
|
imports: [ClaimTaskDirective],
|
||||||
|
selector: 'adf-claim-no-taskid-validation-component',
|
||||||
template: '<button adf-claim-task [taskId]=""></button>'
|
template: '<button adf-claim-task [taskId]=""></button>'
|
||||||
})
|
})
|
||||||
class ClaimTestMissingTaskIdDirectiveComponent { }
|
class ClaimTestMissingTaskIdDirectiveComponent {}
|
||||||
|
|
||||||
let fixture: ComponentFixture<any>;
|
let fixture: ComponentFixture<any>;
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [ProcessTestingModule, ClaimTestMissingTaskIdDirectiveComponent, ClaimTestMissingInputDirectiveComponent]
|
||||||
ProcessTestingModule
|
|
||||||
],
|
|
||||||
declarations: [
|
|
||||||
ClaimTestMissingTaskIdDirectiveComponent,
|
|
||||||
ClaimTestMissingInputDirectiveComponent
|
|
||||||
]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(ClaimTestMissingInputDirectiveComponent);
|
fixture = TestBed.createComponent(ClaimTestMissingInputDirectiveComponent);
|
||||||
});
|
});
|
||||||
@ -115,6 +109,6 @@ describe('Claim Task Directive validation errors', () => {
|
|||||||
it('should throw error when taskId is not set', () => {
|
it('should throw error when taskId is not set', () => {
|
||||||
fixture = TestBed.createComponent(ClaimTestMissingTaskIdDirectiveComponent);
|
fixture = TestBed.createComponent(ClaimTestMissingTaskIdDirectiveComponent);
|
||||||
|
|
||||||
expect( () => fixture.detectChanges()).toThrowError('Attribute taskId is required');
|
expect(() => fixture.detectChanges()).toThrowError('Attribute taskId is required');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -20,11 +20,13 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|||||||
import { of } from 'rxjs';
|
import { of } from 'rxjs';
|
||||||
import { TaskListService } from '../../services/tasklist.service';
|
import { TaskListService } from '../../services/tasklist.service';
|
||||||
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
||||||
|
import { UnclaimTaskDirective } from '@alfresco/adf-process-services';
|
||||||
|
|
||||||
describe('UnclaimTaskDirective', () => {
|
describe('UnclaimTaskDirective', () => {
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-unclaim-test-component',
|
standalone: true,
|
||||||
|
imports: [UnclaimTaskDirective],
|
||||||
|
selector: 'adf-unclaim-test-component',
|
||||||
template: '<button adf-unclaim-task [taskId]="taskId" (success)="onUnclaim($event)">Unclaim</button>'
|
template: '<button adf-unclaim-task [taskId]="taskId" (success)="onUnclaim($event)">Unclaim</button>'
|
||||||
})
|
})
|
||||||
class TestComponent {
|
class TestComponent {
|
||||||
@ -43,12 +45,7 @@ describe('UnclaimTaskDirective', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [ProcessTestingModule, TestComponent]
|
||||||
ProcessTestingModule
|
|
||||||
],
|
|
||||||
declarations: [
|
|
||||||
TestComponent
|
|
||||||
]
|
|
||||||
});
|
});
|
||||||
taskListService = TestBed.inject(TaskListService);
|
taskListService = TestBed.inject(TaskListService);
|
||||||
fixture = TestBed.createComponent(TestComponent);
|
fixture = TestBed.createComponent(TestComponent);
|
||||||
@ -78,34 +75,27 @@ describe('UnclaimTaskDirective', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
describe('Claim Task Directive validation errors', () => {
|
describe('Claim Task Directive validation errors', () => {
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-unclaim-no-fields-validation-component',
|
standalone: true,
|
||||||
|
imports: [UnclaimTaskDirective],
|
||||||
|
selector: 'adf-unclaim-no-fields-validation-component',
|
||||||
template: '<button adf-unclaim-task></button>'
|
template: '<button adf-unclaim-task></button>'
|
||||||
})
|
})
|
||||||
class ClaimTestMissingInputDirectiveComponent {
|
class ClaimTestMissingInputDirectiveComponent {}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'adf-claim-no-taskid-validation-component',
|
standalone: true,
|
||||||
|
imports: [UnclaimTaskDirective],
|
||||||
|
selector: 'adf-claim-no-taskid-validation-component',
|
||||||
template: '<button adf-unclaim-task [taskId]=""></button>'
|
template: '<button adf-unclaim-task [taskId]=""></button>'
|
||||||
})
|
})
|
||||||
class ClaimTestMissingTaskIdDirectiveComponent {
|
class ClaimTestMissingTaskIdDirectiveComponent {}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
let fixture: ComponentFixture<any>;
|
let fixture: ComponentFixture<any>;
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [
|
imports: [ProcessTestingModule, ClaimTestMissingTaskIdDirectiveComponent, ClaimTestMissingInputDirectiveComponent]
|
||||||
ProcessTestingModule
|
|
||||||
],
|
|
||||||
declarations: [
|
|
||||||
ClaimTestMissingTaskIdDirectiveComponent,
|
|
||||||
ClaimTestMissingInputDirectiveComponent
|
|
||||||
]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(ClaimTestMissingInputDirectiveComponent);
|
fixture = TestBed.createComponent(ClaimTestMissingInputDirectiveComponent);
|
||||||
});
|
});
|
||||||
@ -119,6 +109,6 @@ describe('Claim Task Directive validation errors', () => {
|
|||||||
it('should throw error when taskId is not set', () => {
|
it('should throw error when taskId is not set', () => {
|
||||||
fixture = TestBed.createComponent(ClaimTestMissingTaskIdDirectiveComponent);
|
fixture = TestBed.createComponent(ClaimTestMissingTaskIdDirectiveComponent);
|
||||||
|
|
||||||
expect( () => fixture.detectChanges()).toThrowError('Attribute taskId is required');
|
expect(() => fixture.detectChanges()).toThrowError('Attribute taskId is required');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -26,21 +26,25 @@ import {
|
|||||||
ObjectDataColumn,
|
ObjectDataColumn,
|
||||||
AppConfigServiceMock,
|
AppConfigServiceMock,
|
||||||
AlfrescoApiServiceMock,
|
AlfrescoApiServiceMock,
|
||||||
AlfrescoApiService
|
AlfrescoApiService,
|
||||||
|
DataColumnComponent,
|
||||||
|
DataColumnListComponent,
|
||||||
|
FullNamePipe,
|
||||||
|
NoopTranslateModule,
|
||||||
|
CustomEmptyContentTemplateDirective
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
import { TaskListService } from '../../services/tasklist.service';
|
import { TaskListService } from '../../services/tasklist.service';
|
||||||
import { TaskListComponent } from './task-list.component';
|
import { TaskListComponent } from './task-list.component';
|
||||||
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
import { ProcessTestingModule } from '../../../testing/process.testing.module';
|
||||||
import { fakeGlobalTask, fakeEmptyTask, paginatedTask, fakeColumnSchema, fakeCustomSchema } from '../../../testing/mock';
|
import { fakeGlobalTask, fakeEmptyTask, paginatedTask, fakeColumnSchema, fakeCustomSchema } from '../../../testing/mock';
|
||||||
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
import { TranslateService } from '@ngx-translate/core';
|
||||||
import { of, Subject } from 'rxjs';
|
import { of, Subject } from 'rxjs';
|
||||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||||
import { HarnessLoader } from '@angular/cdk/testing';
|
import { HarnessLoader } from '@angular/cdk/testing';
|
||||||
import { MatCheckboxHarness } from '@angular/material/checkbox/testing';
|
import { MatCheckboxHarness } from '@angular/material/checkbox/testing';
|
||||||
import { MatMenuItemHarness } from '@angular/material/menu/testing';
|
import { MatMenuItemHarness } from '@angular/material/menu/testing';
|
||||||
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
||||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
import { CommonModule } from '@angular/common';
|
||||||
|
|
||||||
declare let jasmine: any;
|
declare let jasmine: any;
|
||||||
|
|
||||||
@ -105,7 +109,7 @@ describe('TaskListComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), NoopAnimationsModule, MatProgressSpinnerModule, HttpClientTestingModule, TaskListComponent],
|
imports: [NoopTranslateModule, NoopAnimationsModule, TaskListComponent],
|
||||||
providers: [
|
providers: [
|
||||||
TaskListService,
|
TaskListService,
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
@ -644,6 +648,8 @@ describe('TaskListComponent', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [DataColumnComponent, DataColumnListComponent, TaskListComponent, FullNamePipe],
|
||||||
template: ` <adf-tasklist #taskList>
|
template: ` <adf-tasklist #taskList>
|
||||||
<data-columns>
|
<data-columns>
|
||||||
<data-column key="name" title="ADF_TASK_LIST.PROPERTIES.NAME" class="full-width name-column" [order]="3"></data-column>
|
<data-column key="name" title="ADF_TASK_LIST.PROPERTIES.NAME" class="full-width name-column" [order]="3"></data-column>
|
||||||
@ -667,8 +673,7 @@ describe('CustomTaskListComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, CustomTaskListComponent, CustomTaskListComponent]
|
||||||
declarations: [CustomTaskListComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(CustomTaskListComponent);
|
fixture = TestBed.createComponent(CustomTaskListComponent);
|
||||||
fixture.detectChanges();
|
fixture.detectChanges();
|
||||||
@ -690,6 +695,8 @@ describe('CustomTaskListComponent', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [CustomEmptyContentTemplateDirective, TaskListComponent],
|
||||||
template: `
|
template: `
|
||||||
<adf-tasklist [appId]="1">
|
<adf-tasklist [appId]="1">
|
||||||
<adf-custom-empty-content-template>
|
<adf-custom-empty-content-template>
|
||||||
@ -707,8 +714,7 @@ describe('Task List: Custom EmptyTemplateComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [ProcessTestingModule],
|
imports: [ProcessTestingModule, EmptyTemplateComponent]
|
||||||
declarations: [EmptyTemplateComponent]
|
|
||||||
});
|
});
|
||||||
translateService = TestBed.inject(TranslateService);
|
translateService = TestBed.inject(TranslateService);
|
||||||
taskListService = TestBed.inject(TaskListService);
|
taskListService = TestBed.inject(TaskListService);
|
||||||
@ -733,6 +739,8 @@ describe('Task List: Custom EmptyTemplateComponent', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
standalone: true,
|
||||||
|
imports: [CommonModule, TaskListComponent, DataColumnComponent, DataColumnListComponent, FullNamePipe],
|
||||||
template: ` <adf-tasklist [showContextMenu]="true" (showRowContextMenu)="onShowRowContextMenu($event)" #taskList>
|
template: ` <adf-tasklist [showContextMenu]="true" (showRowContextMenu)="onShowRowContextMenu($event)" #taskList>
|
||||||
<data-columns>
|
<data-columns>
|
||||||
<data-column key="name" title="ADF_TASK_LIST.PROPERTIES.NAME" class="full-width name-column"></data-column>
|
<data-column key="name" title="ADF_TASK_LIST.PROPERTIES.NAME" class="full-width name-column"></data-column>
|
||||||
@ -795,8 +803,7 @@ describe('TaskListContextMenuComponent', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [TranslateModule.forRoot(), MatProgressSpinnerModule, ProcessTestingModule],
|
imports: [ProcessTestingModule, TaskListContextMenuComponent]
|
||||||
declarations: [TaskListContextMenuComponent]
|
|
||||||
});
|
});
|
||||||
fixture = TestBed.createComponent(TaskListContextMenuComponent);
|
fixture = TestBed.createComponent(TaskListContextMenuComponent);
|
||||||
customComponent = fixture.componentInstance;
|
customComponent = fixture.componentInstance;
|
||||||
|
@ -23,34 +23,29 @@ import {
|
|||||||
AlfrescoApiServiceMock,
|
AlfrescoApiServiceMock,
|
||||||
AppConfigService,
|
AppConfigService,
|
||||||
AppConfigServiceMock,
|
AppConfigServiceMock,
|
||||||
TranslationService,
|
|
||||||
TranslationMock,
|
|
||||||
CoreModule,
|
CoreModule,
|
||||||
FormRenderingService,
|
FormRenderingService,
|
||||||
AuthModule
|
AuthModule,
|
||||||
|
NoopTranslateModule
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
|
||||||
import { ProcessFormRenderingService } from '../form/process-form-rendering.service';
|
import { ProcessFormRenderingService } from '../form/process-form-rendering.service';
|
||||||
import { RouterTestingModule } from '@angular/router/testing';
|
import { RouterTestingModule } from '@angular/router/testing';
|
||||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
AuthModule.forRoot({ useHash: true }),
|
AuthModule.forRoot({ useHash: true }),
|
||||||
NoopAnimationsModule,
|
NoopAnimationsModule,
|
||||||
HttpClientTestingModule,
|
|
||||||
TranslateModule.forRoot(),
|
|
||||||
CoreModule.forRoot(),
|
CoreModule.forRoot(),
|
||||||
ProcessModule.forRoot(),
|
ProcessModule.forRoot(),
|
||||||
RouterTestingModule
|
RouterTestingModule,
|
||||||
|
NoopTranslateModule
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||||
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
{ provide: AppConfigService, useClass: AppConfigServiceMock },
|
||||||
{ provide: TranslationService, useClass: TranslationMock },
|
|
||||||
FormRenderingService,
|
FormRenderingService,
|
||||||
{ provide: FormRenderingService, useClass: ProcessFormRenderingService }
|
{ provide: FormRenderingService, useClass: ProcessFormRenderingService }
|
||||||
],
|
],
|
||||||
exports: [NoopAnimationsModule, TranslateModule, CoreModule, ProcessModule]
|
exports: [NoopAnimationsModule, CoreModule, ProcessModule]
|
||||||
})
|
})
|
||||||
export class ProcessTestingModule {}
|
export class ProcessTestingModule {}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user