Skip to content

Commit f7370ac

Browse files
committed
fix: resolve all CI issues - tests, turbo config, demo types
- Fix Turbo v2 config: rename 'pipeline' to 'tasks' - Mock @prisma/client in test files (no generated client in CI) - Export Item interface in demo app service - All lint, typecheck, build, and test pass locally
1 parent 593186c commit f7370ac

5 files changed

Lines changed: 30 additions & 10 deletions

File tree

apps/demo/src/items/items.service.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { Injectable } from '@nestjs/common';
22
import { PrismaService } from '@bbv/nestjs-prisma';
33
import { PaginationDto, PaginatedResponseDto, paginate } from '@bbv/nestjs-pagination';
44

5-
interface Item {
5+
export interface Item {
66
id: string;
77
name: string;
88
description: string | null;

packages/nestjs-prisma/src/prisma.module.spec.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
jest.mock('@prisma/client', () => {
2+
return {
3+
PrismaClient: class MockPrismaClient {
4+
$connect = jest.fn().mockResolvedValue(undefined);
5+
$disconnect = jest.fn().mockResolvedValue(undefined);
6+
},
7+
};
8+
});
9+
110
import { Test, TestingModule } from '@nestjs/testing';
211
import { PrismaModule } from './prisma.module';
312
import { PrismaService } from './prisma.service';

packages/nestjs-prisma/src/prisma.service.spec.ts

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
// Mock @prisma/client before importing anything
2+
jest.mock('@prisma/client', () => {
3+
return {
4+
PrismaClient: class MockPrismaClient {
5+
$connect = jest.fn().mockResolvedValue(undefined);
6+
$disconnect = jest.fn().mockResolvedValue(undefined);
7+
},
8+
};
9+
});
10+
111
import { Test, TestingModule } from '@nestjs/testing';
212
import { PrismaService } from './prisma.service';
313

@@ -10,14 +20,6 @@ describe('PrismaService', () => {
1020
}).compile();
1121

1222
service = module.get<PrismaService>(PrismaService);
13-
14-
// Mock the underlying PrismaClient methods to avoid real DB connections
15-
jest.spyOn(service, '$connect').mockResolvedValue();
16-
jest.spyOn(service, '$disconnect').mockResolvedValue();
17-
});
18-
19-
afterEach(() => {
20-
jest.restoreAllMocks();
2123
});
2224

2325
it('should be defined', () => {

packages/nestjs-prisma/test/prisma.e2e-spec.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
jest.mock('@prisma/client', () => {
2+
return {
3+
PrismaClient: class MockPrismaClient {
4+
$connect = jest.fn().mockResolvedValue(undefined);
5+
$disconnect = jest.fn().mockResolvedValue(undefined);
6+
},
7+
};
8+
});
9+
110
import { Test, TestingModule } from '@nestjs/testing';
211
import { INestApplication } from '@nestjs/common';
312
import { PrismaModule } from '../src/prisma.module';

turbo.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://turbo.build/schema.json",
3-
"pipeline": {
3+
"tasks": {
44
"lint": {},
55
"typecheck": {
66
"dependsOn": ["^build"]

0 commit comments

Comments
 (0)