Skip to content

Commit a4e953f

Browse files
committed
Update calculator.service.spec.ts
1 parent 2bb9053 commit a4e953f

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

src/app/courses/services/calculator.service.spec.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { TestBed } from "@angular/core/testing";
12
import { CalculatorService } from "./calculator.service";
23
import { LoggerService } from "./logger.service";
34

@@ -15,6 +16,20 @@ describe("CalculatorService", () => {
1516
console.log("calling beforeEach");
1617
loggerSpy = jasmine.createSpyObj("LoggerService", ["log"]);
1718
calculator = new CalculatorService(loggerSpy);
19+
20+
// instead of initializing the instances by calling constructor explicitly
21+
// we can provide depedency injection here using testbed utility
22+
23+
TestBed.configureTestingModule({
24+
providers: [
25+
CalculatorService, // using Real instance of calculator service
26+
// using angular dependency mechanism to swap actual implementation of dependencies by jasmine
27+
{ provide: LoggerService, useValue: loggerSpy }, //Since we are not using actual instance
28+
// Logger service is dependency of CalculatorService
29+
],
30+
});
31+
// TestBed.get in deprecated
32+
calculator = TestBed.inject(CalculatorService);
1833
});
1934

2035
// Specification (and each test are independent and does not interfere with each other)

0 commit comments

Comments
 (0)