Skip to content

Commit 07c130e

Browse files
scastillo-jpAngeluz-07
authored andcommitted
feat: #571 technology report - test create component
1 parent 6d17a87 commit 07c130e

File tree

2 files changed

+69
-75
lines changed

2 files changed

+69
-75
lines changed

src/app/app.module.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
33
import { ToastrModule } from 'ngx-toastr';
44
import { CommonModule, DatePipe } from '@angular/common';
55
import { BrowserModule } from '@angular/platform-browser';
6-
import { NgModule } from '@angular/core';
6+
import { NgModule, Component } from '@angular/core';
77
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
88
import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
99
import { DataTablesModule } from 'angular-datatables';
@@ -127,7 +127,7 @@ const maskConfig: Partial<IConfig> = {
127127
UsersComponent,
128128
UsersListComponent,
129129
TechnologyReportComponent,
130-
TechnologyReportTableComponent
130+
TechnologyReportTableComponent,
131131
],
132132
imports: [
133133
NgxMaskModule.forRoot(maskConfig),
Lines changed: 67 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -1,83 +1,77 @@
1-
// import { async, ComponentFixture, TestBed } from '@angular/core/testing';
2-
// import { MockStore, provideMockStore } from '@ngrx/store/testing';
3-
// import { Entry } from 'src/app/modules/shared/models';
4-
// import { SubstractDatePipe } from 'src/app/modules/shared/pipes/substract-date/substract-date.pipe';
5-
// import { getReportDataSource } from 'src/app/modules/time-clock/store/entry.selectors';
6-
// import { EntryState } from '../../../time-clock/store/entry.reducer';
7-
// import { TimeEntriesTableComponent } from './time-entries-table.component';
1+
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
2+
import { MockStore, provideMockStore } from '@ngrx/store/testing';
3+
import { Entry } from 'src/app/modules/shared/models';
4+
import { SubstractDatePipe } from 'src/app/modules/shared/pipes/substract-date/substract-date.pipe';
5+
import { getReportDataSource } from 'src/app/modules/time-clock/store/entry.selectors';
6+
import { EntryState } from '../../../time-clock/store/entry.reducer';
7+
import { TechnologyReportTableComponent } from './technology-report-table.component';
88

9-
// describe('Reports Page', () => {
10-
// describe('TimeEntriesTableComponent', () => {
11-
// let component: TimeEntriesTableComponent;
12-
// let fixture: ComponentFixture<TimeEntriesTableComponent>;
13-
// let store: MockStore<EntryState>;
14-
// let getReportDataSourceSelectorMock;
15-
// const timeEntry: Entry = {
16-
// id: '123',
17-
// start_date: new Date(),
18-
// end_date: new Date(),
19-
// activity_id: '123',
20-
// technologies: ['react', 'redux'],
21-
// description: 'any comment',
22-
// uri: 'custom uri',
23-
// project_id: '123',
24-
// project_name: 'Time-Tracker'
25-
// };
9+
describe('Reports Page', () => {
10+
describe('TimeEntriesTableComponent', () => {
11+
let component: TechnologyReportTableComponent;
12+
let fixture: ComponentFixture<TechnologyReportTableComponent>;
13+
let store: MockStore<EntryState>;
14+
let getReportDataSourceSelectorMock;
15+
const timeEntry: Entry = {
16+
start_date: new Date(),
17+
end_date: new Date(),
18+
technologies: ['react', 'redux'],
19+
};
2620

27-
// const state: EntryState = {
28-
// active: timeEntry,
29-
// isLoading: false,
30-
// message: '',
31-
// createError: false,
32-
// updateError: false,
33-
// timeEntriesSummary: null,
34-
// timeEntriesDataSource: {
35-
// data: [timeEntry],
36-
// isLoading: false
37-
// },
38-
// reportDataSource: {
39-
// data: [timeEntry],
40-
// isLoading: false
41-
// }
42-
// };
21+
const state: EntryState = {
22+
active: timeEntry,
23+
isLoading: false,
24+
message: '',
25+
createError: false,
26+
updateError: false,
27+
timeEntriesSummary: null,
28+
timeEntriesDataSource: {
29+
data: [timeEntry],
30+
isLoading: false
31+
},
32+
reportDataSource: {
33+
data: [timeEntry],
34+
isLoading: false
35+
}
36+
};
4337

44-
// beforeEach(async(() => {
45-
// TestBed.configureTestingModule({
46-
// imports: [],
47-
// declarations: [TimeEntriesTableComponent, SubstractDatePipe],
48-
// providers: [provideMockStore({ initialState: state })],
49-
// }).compileComponents();
50-
// store = TestBed.inject(MockStore);
38+
beforeEach(async(() => {
39+
TestBed.configureTestingModule({
40+
imports: [],
41+
declarations: [TechnologyReportTableComponent, SubstractDatePipe],
42+
providers: [provideMockStore({ initialState: state })],
43+
}).compileComponents();
44+
store = TestBed.inject(MockStore);
5145

52-
// }));
46+
}));
5347

54-
// beforeEach(async(() => {
55-
// fixture = TestBed.createComponent(TimeEntriesTableComponent);
56-
// component = fixture.componentInstance;
57-
// store.setState(state);
58-
// getReportDataSourceSelectorMock = store.overrideSelector(getReportDataSource, state.reportDataSource);
59-
// fixture.detectChanges();
60-
// }));
48+
beforeEach(async(() => {
49+
fixture = TestBed.createComponent(TechnologyReportTableComponent);
50+
component = fixture.componentInstance;
51+
store.setState(state);
52+
getReportDataSourceSelectorMock = store.overrideSelector(getReportDataSource, state.reportDataSource);
53+
fixture.detectChanges();
54+
}));
6155

62-
// it('component should be created', async () => {
63-
// expect(component).toBeTruthy();
64-
// });
56+
fit('component should be created', async () => {
57+
expect(component).toBeTruthy();
58+
});
6559

66-
// it('on success load time entries, the report should be populated', () => {
67-
// component.reportDataSource$.subscribe(ds => {
68-
// expect(ds.data).toEqual(state.reportDataSource.data);
69-
// });
70-
// });
60+
// it('on success load time entries, the report should be populated', () => {
61+
// component.reportDataSource$.subscribe(ds => {
62+
// expect(ds.data).toEqual(state.reportDataSource.data);
63+
// });
64+
// });
7165

72-
// it('after the component is initialized it should initialize the table', () => {
73-
// spyOn(component.dtTrigger, 'next');
74-
// component.ngAfterViewInit();
66+
// it('after the component is initialized it should initialize the table', () => {
67+
// spyOn(component.dtTrigger, 'next');
68+
// component.ngAfterViewInit();
7569

76-
// expect(component.dtTrigger.next).toHaveBeenCalled();
77-
// });
70+
// expect(component.dtTrigger.next).toHaveBeenCalled();
71+
// });
7872

79-
// afterEach(() => {
80-
// fixture.destroy();
81-
// });
82-
// });
83-
// });
73+
afterEach(() => {
74+
fixture.destroy();
75+
});
76+
});
77+
});

0 commit comments

Comments
 (0)