mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[affected:*][ci:force] - REBASED
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
adf-aspect-list-dialog {
|
||||
display: block;
|
||||
padding: 24px 24px 8px 24px;
|
||||
padding: 24px 24px 8px;
|
||||
}
|
||||
|
||||
.adf {
|
||||
|
@@ -19,8 +19,12 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { By } from '@angular/platform-browser';
|
||||
import { CardViewKeyValuePairsItemModel } from '../../models/card-view-keyvaluepairs.model';
|
||||
import { CardViewKeyValuePairsItemComponent } from './card-view-keyvaluepairsitem.component';
|
||||
import { CoreTestingModule } from '../../../testing/core.testing.module';
|
||||
import { CardViewUpdateService } from '../../services/card-view-update.service';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { MatIconModule } from '@angular/material/icon';
|
||||
import { MatTableModule } from '@angular/material/table';
|
||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
import { FormsModule } from '@angular/forms';
|
||||
|
||||
describe('CardViewKeyValuePairsItemComponent', () => {
|
||||
let fixture: ComponentFixture<CardViewKeyValuePairsItemComponent>;
|
||||
@@ -31,7 +35,9 @@ describe('CardViewKeyValuePairsItemComponent', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule]
|
||||
imports: [NoopAnimationsModule, TranslateModule.forRoot(), MatIconModule, MatTableModule, FormsModule],
|
||||
providers: [CardViewUpdateService],
|
||||
declarations: [CardViewKeyValuePairsItemComponent]
|
||||
});
|
||||
fixture = TestBed.createComponent(CardViewKeyValuePairsItemComponent);
|
||||
cardViewUpdateService = TestBed.inject(CardViewUpdateService);
|
||||
|
@@ -21,7 +21,7 @@ import { By } from '@angular/platform-browser';
|
||||
import { CardViewMapItemModel } from '../../models/card-view-mapitem.model';
|
||||
import { CardViewUpdateService } from '../../services/card-view-update.service';
|
||||
import { CardViewMapItemComponent } from './card-view-mapitem.component';
|
||||
import { CoreTestingModule } from '../../../testing/core.testing.module';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
describe('CardViewMapItemComponent', () => {
|
||||
let service: CardViewUpdateService;
|
||||
@@ -33,7 +33,7 @@ describe('CardViewMapItemComponent', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule]
|
||||
imports: [TranslateModule.forRoot()]
|
||||
});
|
||||
fixture = TestBed.createComponent(CardViewMapItemComponent);
|
||||
service = TestBed.inject(CardViewUpdateService);
|
||||
|
@@ -19,13 +19,15 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { By } from '@angular/platform-browser';
|
||||
import { CardViewSelectItemModel } from '../../models/card-view-selectitem.model';
|
||||
import { CardViewSelectItemComponent } from './card-view-selectitem.component';
|
||||
import { CoreTestingModule } from '../../../testing/core.testing.module';
|
||||
import { of } from 'rxjs';
|
||||
import { AppConfigService } from '../../../app-config/app-config.service';
|
||||
import { HarnessLoader } from '@angular/cdk/testing';
|
||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||
import { MatSelectHarness } from '@angular/material/select/testing';
|
||||
import { MatFormFieldHarness } from '@angular/material/form-field/testing';
|
||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||
import { MatSelectModule } from '@angular/material/select';
|
||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
|
||||
describe('CardViewSelectItemComponent', () => {
|
||||
let loader: HarnessLoader;
|
||||
@@ -59,7 +61,7 @@ describe('CardViewSelectItemComponent', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule]
|
||||
imports: [NoopAnimationsModule, TranslateModule.forRoot(), HttpClientTestingModule, MatSelectModule]
|
||||
});
|
||||
fixture = TestBed.createComponent(CardViewSelectItemComponent);
|
||||
component = fixture.componentInstance;
|
||||
|
@@ -16,9 +16,10 @@
|
||||
*/
|
||||
|
||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { CoreTestingModule } from '../../../../testing/core.testing.module';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { SelectFilterInputComponent } from './select-filter-input.component';
|
||||
import { MatSelect } from '@angular/material/select';
|
||||
import { MatSelect, MatSelectModule } from '@angular/material/select';
|
||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
|
||||
describe('SelectFilterInputComponent', () => {
|
||||
let fixture: ComponentFixture<SelectFilterInputComponent>;
|
||||
@@ -27,7 +28,7 @@ describe('SelectFilterInputComponent', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule],
|
||||
imports: [NoopAnimationsModule, TranslateModule.forRoot(), MatSelectModule],
|
||||
providers: [MatSelect]
|
||||
});
|
||||
|
||||
|
@@ -20,7 +20,6 @@ import { By } from '@angular/platform-browser';
|
||||
import { CardViewTextItemModel } from '../../models/card-view-textitem.model';
|
||||
import { CardViewUpdateService } from '../../services/card-view-update.service';
|
||||
import { CardViewTextItemComponent } from './card-view-textitem.component';
|
||||
import { CoreTestingModule } from '../../../testing/core.testing.module';
|
||||
import { CardViewItemFloatValidator } from '../../validators/card-view-item-float.validator';
|
||||
import { CardViewItemIntValidator } from '../../validators/card-view-item-int.validator';
|
||||
import { CardViewIntItemModel } from '../../models/card-view-intitem.model';
|
||||
@@ -33,6 +32,12 @@ import { HarnessLoader } from '@angular/cdk/testing';
|
||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||
import { MatChipGridHarness, MatChipHarness } from '@angular/material/chips/testing';
|
||||
import { MatInputHarness } from '@angular/material/input/testing';
|
||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
||||
import { TranslationService } from '../../../translation';
|
||||
import { TranslationMock } from '../../../mock';
|
||||
import { MatTooltipModule } from '@angular/material/tooltip';
|
||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
|
||||
describe('CardViewTextItemComponent', () => {
|
||||
let loader: HarnessLoader;
|
||||
@@ -110,7 +115,8 @@ describe('CardViewTextItemComponent', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule, MatChipsModule]
|
||||
imports: [HttpClientTestingModule, NoopAnimationsModule, TranslateModule.forRoot(), MatSnackBarModule, MatTooltipModule, MatChipsModule],
|
||||
providers: [{ provide: TranslationService, useClass: TranslationMock }]
|
||||
});
|
||||
fixture = TestBed.createComponent(CardViewTextItemComponent);
|
||||
component = fixture.componentInstance;
|
||||
|
@@ -20,7 +20,7 @@ import { By } from '@angular/platform-browser';
|
||||
import { CardViewDateItemModel } from '../../models/card-view-dateitem.model';
|
||||
import { CardViewTextItemModel } from '../../models/card-view-textitem.model';
|
||||
import { CardViewComponent } from './card-view.component';
|
||||
import { CoreTestingModule } from '../../../testing/core.testing.module';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { CardViewSelectItemModel } from '../../models/card-view-selectitem.model';
|
||||
import { of } from 'rxjs';
|
||||
import { CardViewSelectItemOption } from '../../interfaces/card-view-selectitem-properties.interface';
|
||||
@@ -29,6 +29,15 @@ import { CardViewItemDispatcherComponent } from '../card-view-item-dispatcher/ca
|
||||
import { HarnessLoader } from '@angular/cdk/testing';
|
||||
import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed';
|
||||
import { MatSelectHarness } from '@angular/material/select/testing';
|
||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
||||
import { TranslationService } from '../../../translation';
|
||||
import { TranslationMock } from '../../../mock';
|
||||
import { MatTooltipModule } from '@angular/material/tooltip';
|
||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
import { MatDialogModule } from '@angular/material/dialog';
|
||||
import { MatDatepickerModule } from '@angular/material/datepicker';
|
||||
import { MatSelectModule } from '@angular/material/select';
|
||||
|
||||
describe('CardViewComponent', () => {
|
||||
let loader: HarnessLoader;
|
||||
@@ -37,7 +46,17 @@ describe('CardViewComponent', () => {
|
||||
|
||||
beforeEach(async () => {
|
||||
await TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule]
|
||||
imports: [
|
||||
TranslateModule.forRoot(),
|
||||
NoopAnimationsModule,
|
||||
MatSnackBarModule,
|
||||
MatTooltipModule,
|
||||
MatDialogModule,
|
||||
MatDatepickerModule,
|
||||
MatSelectModule,
|
||||
HttpClientTestingModule
|
||||
],
|
||||
providers: [{ provide: TranslationService, useClass: TranslationMock }]
|
||||
}).compileComponents();
|
||||
|
||||
fixture = TestBed.createComponent(CardViewComponent);
|
||||
|
@@ -19,7 +19,12 @@ import { Component, ViewChild } from '@angular/core';
|
||||
import { ComponentFixture, TestBed, tick, fakeAsync } from '@angular/core/testing';
|
||||
import { ClipboardService } from './clipboard.service';
|
||||
import { ClipboardDirective } from './clipboard.directive';
|
||||
import { CoreTestingModule } from '../testing/core.testing.module';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
||||
import { TranslationService } from '../translation';
|
||||
import { TranslationMock } from '../mock';
|
||||
import { MatButtonModule } from '@angular/material/button';
|
||||
|
||||
@Component({
|
||||
selector: 'adf-test-component',
|
||||
@@ -37,8 +42,9 @@ describe('ClipboardDirective', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule],
|
||||
declarations: [TestTargetClipboardComponent]
|
||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, MatSnackBarModule, MatButtonModule],
|
||||
providers: [ClipboardService, { provide: TranslationService, useClass: TranslationMock }],
|
||||
declarations: [TestTargetClipboardComponent, ClipboardDirective]
|
||||
});
|
||||
fixture = TestBed.createComponent(TestTargetClipboardComponent);
|
||||
clipboardService = TestBed.inject(ClipboardService);
|
||||
@@ -80,8 +86,9 @@ describe('CopyClipboardDirective', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule],
|
||||
declarations: [TestCopyClipboardComponent]
|
||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, MatSnackBarModule],
|
||||
providers: [ClipboardService, { provide: TranslationService, useClass: TranslationMock }],
|
||||
declarations: [TestCopyClipboardComponent, ClipboardDirective]
|
||||
});
|
||||
fixture = TestBed.createComponent(TestCopyClipboardComponent);
|
||||
element = fixture.debugElement.nativeElement;
|
||||
|
@@ -19,7 +19,10 @@ import { NotificationService } from '../notifications/services/notification.serv
|
||||
import { TestBed } from '@angular/core/testing';
|
||||
import { ClipboardService } from './clipboard.service';
|
||||
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
||||
import { CoreTestingModule } from '../testing';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||
import { TranslationService } from '../translation';
|
||||
import { TranslationMock } from '../mock';
|
||||
|
||||
describe('ClipboardService', () => {
|
||||
let clipboardService: ClipboardService;
|
||||
@@ -28,7 +31,8 @@ describe('ClipboardService', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule, MatSnackBarModule]
|
||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule, MatSnackBarModule],
|
||||
providers: [ClipboardService, { provide: TranslationService, useClass: TranslationMock }]
|
||||
});
|
||||
clipboardService = TestBed.inject(ClipboardService);
|
||||
notificationService = TestBed.inject(NotificationService);
|
||||
|
@@ -15,14 +15,15 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { ComponentFixture, fakeAsync, TestBed } from '@angular/core/testing';
|
||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { CommentModel } from '../../models/comment.model';
|
||||
import { CommentListComponent } from './comment-list.component';
|
||||
import { By } from '@angular/platform-browser';
|
||||
import { CoreTestingModule } from '../../testing/core.testing.module';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { commentUserNoPictureDefined, commentUserPictureDefined, mockCommentOne, testUser } from './mocks/comment-list.mock';
|
||||
import { CommentListServiceMock } from './mocks/comment-list.service.mock';
|
||||
import { ADF_COMMENTS_SERVICE } from '../interfaces/comments.token';
|
||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||
|
||||
describe('CommentListComponent', () => {
|
||||
let commentList: CommentListComponent;
|
||||
@@ -31,7 +32,7 @@ describe('CommentListComponent', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule],
|
||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule],
|
||||
providers: [
|
||||
{
|
||||
provide: ADF_COMMENTS_SERVICE,
|
||||
@@ -50,22 +51,21 @@ describe('CommentListComponent', () => {
|
||||
fixture.destroy();
|
||||
});
|
||||
|
||||
it('should emit row click event', fakeAsync(() => {
|
||||
it('should emit row click event', (done) => {
|
||||
commentList.comments = [mockCommentOne];
|
||||
|
||||
commentList.clickRow.subscribe((selectedComment: CommentModel) => {
|
||||
expect(selectedComment.id).toEqual(1);
|
||||
expect(selectedComment.message).toEqual('Test Comment');
|
||||
expect(selectedComment.createdBy).toEqual(testUser);
|
||||
expect(selectedComment.isSelected).toBeTruthy();
|
||||
done();
|
||||
});
|
||||
|
||||
fixture.detectChanges();
|
||||
fixture.whenStable().then(() => {
|
||||
const comment = fixture.debugElement.query(By.css('.adf-comment-list:first-child'));
|
||||
|
||||
const comment = fixture.debugElement.query(By.css('.adf-comment-list-item'));
|
||||
comment.triggerEventHandler('click', null);
|
||||
});
|
||||
}));
|
||||
|
||||
it('should not show comment list if no input is given', async () => {
|
||||
fixture.detectChanges();
|
||||
|
@@ -18,11 +18,13 @@
|
||||
import { SimpleChange } from '@angular/core';
|
||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { CommentsComponent } from './comments.component';
|
||||
import { CoreTestingModule } from '../testing/core.testing.module';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { CommentsServiceMock, commentsResponseMock } from './mocks/comments.service.mock';
|
||||
import { of, throwError } from 'rxjs';
|
||||
import { ADF_COMMENTS_SERVICE } from './interfaces/comments.token';
|
||||
import { CommentsService } from './interfaces/comments-service.interface';
|
||||
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||
|
||||
describe('CommentsComponent', () => {
|
||||
let component: CommentsComponent;
|
||||
@@ -33,7 +35,7 @@ describe('CommentsComponent', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule],
|
||||
imports: [NoopAnimationsModule, HttpClientTestingModule, TranslateModule.forRoot()],
|
||||
providers: [
|
||||
{
|
||||
provide: ADF_COMMENTS_SERVICE,
|
||||
|
@@ -16,15 +16,28 @@
|
||||
*/
|
||||
|
||||
import { TestBed } from '@angular/core/testing';
|
||||
import { CoreTestingModule } from '../../testing/core.testing.module';
|
||||
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 { directionalityConfigFactory } from './directionality-config-factory';
|
||||
import { APP_INITIALIZER } from '@angular/core';
|
||||
|
||||
describe('DirectionalityConfigService', () => {
|
||||
let userPreferencesService: UserPreferencesService;
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule]
|
||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule],
|
||||
providers: [
|
||||
UserPreferencesService,
|
||||
{
|
||||
provide: APP_INITIALIZER,
|
||||
useFactory: directionalityConfigFactory,
|
||||
deps: [DirectionalityConfigService],
|
||||
multi: true
|
||||
}
|
||||
]
|
||||
});
|
||||
userPreferencesService = TestBed.inject(UserPreferencesService);
|
||||
});
|
||||
|
@@ -18,26 +18,23 @@
|
||||
import { TestBed } from '@angular/core/testing';
|
||||
import { AppConfigService } from '../../app-config/app-config.service';
|
||||
import { StorageService } from '../../common/services/storage.service';
|
||||
import { CoreTestingModule } from '../../testing/core.testing.module';
|
||||
import { AppConfigServiceMock } from '../mock/app-config.service.mock';
|
||||
import { CoreTestingModule } from '../../testing';
|
||||
import { RedirectAuthService } from '../../auth';
|
||||
import { EMPTY } from 'rxjs';
|
||||
|
||||
describe('StorageService', () => {
|
||||
let storage: StorageService;
|
||||
let appConfig: AppConfigServiceMock;
|
||||
let appConfig: AppConfigService;
|
||||
const key = 'test_key';
|
||||
const value = 'test_value';
|
||||
|
||||
describe('StorageService', () => {
|
||||
describe('with prefix', () => {
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule]
|
||||
imports: [CoreTestingModule],
|
||||
providers: [{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, init: () => [] } }]
|
||||
});
|
||||
appConfig = TestBed.inject(AppConfigService);
|
||||
appConfig.config = {
|
||||
application: {
|
||||
storagePrefix: 'ADF_APP'
|
||||
}
|
||||
};
|
||||
storage = TestBed.inject(StorageService);
|
||||
});
|
||||
|
||||
@@ -71,10 +68,11 @@ describe('StorageService', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('StorageService', () => {
|
||||
describe('without prefix', () => {
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule]
|
||||
imports: [CoreTestingModule],
|
||||
providers: [{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, init: () => [] } }]
|
||||
});
|
||||
appConfig = TestBed.inject(AppConfigService);
|
||||
|
||||
|
@@ -20,10 +20,11 @@ import { TranslateService } from '@ngx-translate/core';
|
||||
import { AppConfigService } from '../../app-config/app-config.service';
|
||||
import { StorageService } from '../../common/services/storage.service';
|
||||
import { UserPreferencesService, UserPreferenceValues } from '../../common/services/user-preferences.service';
|
||||
import { CoreTestingModule } from '../../testing/core.testing.module';
|
||||
import { AppConfigServiceMock } from '../mock/app-config.service.mock';
|
||||
import { AlfrescoApiService } from '../../services/alfresco-api.service';
|
||||
import { AlfrescoApiServiceMock } from '../../mock';
|
||||
import { AlfrescoApiServiceMock, TranslationMock } from '../../mock';
|
||||
import { HttpClientTestingModule } from '@angular/common/http/testing';
|
||||
import { TranslationService } from '../../translation';
|
||||
|
||||
describe('UserPreferencesService', () => {
|
||||
const supportedPaginationSize = [5, 10, 15, 20];
|
||||
@@ -35,7 +36,14 @@ describe('UserPreferencesService', () => {
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({
|
||||
imports: [CoreTestingModule]
|
||||
imports: [TranslateModule.forRoot(), HttpClientTestingModule],
|
||||
providers: [
|
||||
UserPreferencesService,
|
||||
StorageService,
|
||||
{ provide: TranslationService, useClass: TranslationMock },
|
||||
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
|
||||
{ provide: AppConfigService, useClass: AppConfigServiceMock }
|
||||
]
|
||||
});
|
||||
appConfig = TestBed.inject(AppConfigService);
|
||||
appConfig.config = {
|
||||
|
@@ -53,16 +53,11 @@ import { EMPTY } from 'rxjs';
|
||||
{
|
||||
provide: APP_INITIALIZER,
|
||||
useFactory: directionalityConfigFactory,
|
||||
deps: [ DirectionalityConfigService ],
|
||||
deps: [DirectionalityConfigService],
|
||||
multi: true
|
||||
},
|
||||
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY } }
|
||||
{ provide: RedirectAuthService, useValue: { onLogin: EMPTY, init: () => {} } }
|
||||
],
|
||||
exports: [
|
||||
NoopAnimationsModule,
|
||||
CoreModule,
|
||||
TranslateModule,
|
||||
RouterTestingModule
|
||||
]
|
||||
exports: [NoopAnimationsModule, CoreModule, TranslateModule, RouterTestingModule]
|
||||
})
|
||||
export class CoreTestingModule {}
|
||||
|
Reference in New Issue
Block a user