WayrApp Backend & Ecosystem Documentation - v1.0.0
    Preparing search index...
    • Standard pattern for service tests Sets up a service test environment with repository mocks and common dependencies

      Type Parameters

      • T

        Type of the service being tested

      Parameters

      • ServiceClass: Object

        The service class constructor

      • mockRepository: any

        Mock repository instance

      • additionalDependencies: Record<string, any> = {}

        Additional mock dependencies (optional)

      Returns {
          service: T;
          mockRepository: any;
          mockAuth: any;
          mockLogger: any;
          additionalDependencies: Record<string, any>;
          helpers: {
              reset: () => void;
              mockRepositoryMethod: (methodName: string, returnValue: any) => void;
              mockRepositoryError: (methodName: string, error: Error) => void;
              mockAuthMethods: (hashResult?: string, compareResult?: boolean) => void;
              createMockPaginatedResult: <TData>(
                  data: TData[],
                  options?: QueryOptions,
              ) => PaginatedResult<TData>;
              expectRepositoryCall: (methodName: string, ...expectedArgs: any[]) => void;
              expectRepositoryCallCount: (methodName: string, times: number) => void;
              expectLoggerCall: (
                  level: "error" | "warn" | "info" | "debug",
                  message: string,
                  meta?: any,
              ) => void;
          };
      }

      Test setup object with service instance and helper methods