Okta is failing on npm test
- Lenguaje dominante
- TypeScript
- Estrellas
- 8.1k
- Forks
- 1.5k
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
### Issue type
**I'm submitting a ...** (check one with "x")
* [ x] bug report
* [ ] feature request
### Issue description
**Current behavior:**
While executing npm test, okta service fails with injector error.
**Expected behavior:**
It should not fail, it should have injecton
**Steps to reproduce:**
**1. At component level**
Imports:
`import { anyServiceWithOkta } from '../services/anyServiceWithOkta.service';`
**2. AnyServiceWithOkta service file**
```
import { OktaAuth } from '@okta/okta-auth-js';
import { OKTA_CONFIG } from '@okta/okta-angular';
constructor(@Inject(OKTA_AUTH) private oktaAuth: OktaAuth, private http: HttpClient) { }
```
**3. AnyServiceWithOkta Spec file for testing**
```
import { CustomerService } from './customer.service';
import { OktaAuth } from '@okta/okta-auth-js';
import { OKTA_CONFIG } from '@okta/okta-angular';
describe('CustomerService', () => {
const oktaConfig = {
issuer: 'issuerlink',
clientId: 'client-id',
redirectUri: 'http://localhost:4200/callback'
};
const oktaAuth = new OktaAuth(oktaConfig);
beforeEach(() => TestBed.configureTestingModule({
imports: [ ],
providers: [{provide: OKTA_CONFIG, useValue: { oktaAuth },
useClass: MockAuthorizationService
}]
}));
```
**Error at service level:**
```
Chrome Headless 108.0.5351.0 (Windows 10) UserMigrationSearchResultsPage should have an empty array in case of a search error FAILED
Failed: R3InjectorError(DynamicTestModule)[UserMigrationService -> InjectionToken okta.auth -> InjectionToken okta.auth]:
*NullInjectorError: No provider for InjectionToken okta.auth!*
error properties: Object({ ngTempTokenPath: null, ngTokenPath: [ 'UserMigrationService', 'InjectionToken okta.auth', 'InjectionToken okta.auth' ] })
at NullInjector.get (node_modules/@angular/core/fesm2015/core.mjs:6344:27)
at R3Injector.get (node_modules/@angular/core/fesm2015/core.mjs:6771:33)
at R3Injector.get (node_modules/@angular/core/fesm2015/core.mjs:6771:33)
at injectInjectorOnly (node_modules/@angular/core/fesm2015/core.mjs:4761:33)
at ɵɵinject (node_modules/@angular/core/fesm2015/core.mjs:4765:12)
at Object.factory (ng:///UserMigrationService/ɵfac.js:4:48)
at Object.factory (node_modules/@angular/core/fesm2015/core.mjs:6925:45)
at R3Injector.hydrate (node_modules/@angular/core/fesm2015/core.mjs:6872:35)
at R3Injector.get (node_modules/@angular/core/fesm2015/core.mjs:6760:33)
at ChainedInjector.get (node_modules/@angular/core/fesm2015/core.mjs:13756:36)
```
Main issue is to run test case with Okta with in service file. Means service is accessing
```
import { OktaAuth } from '@okta/okta-auth-js';
import { OKTA_CONFIG } from '@okta/okta-angular';
```
with okta config, creating okta instance in service.
Thanks, and Regards
Gautam
Guía de contribución
Evaluación
Este issue todavía no se ha evaluado.