* Should return `false` if no `teamId` is passed to `getShouldServeCache` * Change to falsey check * test: Add comprehensive tests for shouldServeCache fix - Add tests for CacheService.getShouldServeCache to verify it returns false when no teamId is provided (instead of undefined) - Add tests for GoogleCalendarService.getFreeBusyResult to verify the falsey check properly handles undefined, null, 0, empty string, and false values - All tests verify the fix in PR #24465 which changes undefined return to false and changes === false check to !shouldServeCache Co-Authored-By: joe@cal.com <j.auyeung419@gmail.com> * fix: Resolve type errors in test files - Fix private credential property access by using type assertion - Add missing IFeaturesRepository methods to mock Co-Authored-By: joe@cal.com <j.auyeung419@gmail.com> --------- Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Co-authored-by: Alex van Andel <me@alexvanandel.com>
16 lines
574 B
TypeScript
16 lines
574 B
TypeScript
import type { IFeaturesRepository } from "@calcom/features/flags/features.repository.interface";
|
|
|
|
export interface ICacheService {
|
|
featuresRepository: IFeaturesRepository;
|
|
}
|
|
|
|
export class CacheService {
|
|
constructor(private readonly dependencies: ICacheService) {}
|
|
|
|
async getShouldServeCache(shouldServeCache?: boolean | undefined, teamId?: number) {
|
|
if (typeof shouldServeCache === "boolean") return shouldServeCache;
|
|
if (!teamId) return false;
|
|
return await this.dependencies.featuresRepository.checkIfTeamHasFeature(teamId, "calendar-cache-serve");
|
|
}
|
|
}
|