Cómo probar correctamente métodos privados en Angular/TypeScript con Jasmine
¡Hola a todos! Soy nuevo en Angular y TypeScript, y tengo un problema al escribir unit tests para métodos privados. Tengo un servicio que realiza cálculos complejos y he extraído parte de la lógica en un método privado para mejorar la legibilidad. Aquí hay un ejemplo de mi código:
```typescript
import { Injectable } from '@angular/core';
@Injectable({ providedIn: 'root' })
export class CalculationService {
public calculateTotal(items: number[]): number {
const filtered = this.filterInvalidItems(items);
return filtered.reduce((sum, item) => sum + item, 0);
}
private filterInvalidItems(items: number[]): number[] {
return items.filter(item => item > 0 && item < 1000);
}
}
```
Cuando intento escribir un test para `filterInvalidItems` usando Jasmine, recibo un error de que el método es privado y no es accesible desde el test:
```typescript
describe('CalculationService', () => {
let service: CalculationService;
beforeEach(() => {
service = new CalculationService(