refactor: remove dead mock-mode branches in PRODUCT_DATA_PROVIDER/CATEGORY_REPOSITORY
Some checks failed
Architecture Governance / architecture (push) Has been cancelled
Some checks failed
Architecture Governance / architecture (push) Has been cancelled
Both tokens switched on getProductProviderMode()/getCategoryProviderMode() but every case (including 'mock') fell through to the same real API provider - no mock implementation of either interface exists. Removed the dead switch instead of leaving code that implies a mock mode which was never built. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,20 +1,13 @@
|
||||
import { InjectionToken, inject } from '@angular/core';
|
||||
import { RuntimeProviderStrategyService } from '../providers/runtime-provider-strategy.service';
|
||||
import { ApiCategoryRepository } from './repositories/api-category.repository';
|
||||
import { CategoryRepository } from './repositories/category.repository';
|
||||
|
||||
/**
|
||||
* No mock CategoryRepository implementation exists - same dead branch as
|
||||
* PRODUCT_DATA_PROVIDER. Always resolved to the real API repository
|
||||
* regardless of getCategoryProviderMode(); removed the dead switch.
|
||||
*/
|
||||
export const CATEGORY_REPOSITORY = new InjectionToken<CategoryRepository>('CATEGORY_REPOSITORY', {
|
||||
providedIn: 'root',
|
||||
factory: () => {
|
||||
const strategy = inject(RuntimeProviderStrategyService);
|
||||
const apiRepository = inject(ApiCategoryRepository);
|
||||
|
||||
switch (strategy.getCategoryProviderMode()) {
|
||||
case 'mock':
|
||||
case 'remote-config':
|
||||
case 'api':
|
||||
default:
|
||||
return apiRepository;
|
||||
}
|
||||
}
|
||||
factory: () => inject(ApiCategoryRepository)
|
||||
});
|
||||
@@ -1,20 +1,14 @@
|
||||
import { InjectionToken, inject } from '@angular/core';
|
||||
import { RuntimeProviderStrategyService } from '../providers/runtime-provider-strategy.service';
|
||||
import { ApiProductDataProvider } from './providers/api-product-data.provider';
|
||||
import { ProductDataProvider } from './providers/product-data-provider.interface';
|
||||
|
||||
/**
|
||||
* No mock ProductDataProvider implementation exists - RuntimeProviderStrategyService.
|
||||
* getProductProviderMode() can report 'mock', but there was never a branch that acted
|
||||
* on it, so this always resolved to the real API provider regardless. Removed the dead
|
||||
* switch instead of leaving code that implies a mock mode which doesn't exist.
|
||||
*/
|
||||
export const PRODUCT_DATA_PROVIDER = new InjectionToken<ProductDataProvider>('PRODUCT_DATA_PROVIDER', {
|
||||
providedIn: 'root',
|
||||
factory: () => {
|
||||
const strategy = inject(RuntimeProviderStrategyService);
|
||||
const apiProvider = inject(ApiProductDataProvider);
|
||||
|
||||
switch (strategy.getProductProviderMode()) {
|
||||
case 'mock':
|
||||
case 'remote-config':
|
||||
case 'api':
|
||||
default:
|
||||
return apiProvider;
|
||||
}
|
||||
}
|
||||
factory: () => inject(ApiProductDataProvider)
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user