prismock icon indicating copy to clipboard operation
prismock copied to clipboard

For `findMany`, when matching to multiple where criteria (using `OR`), it fails

Open PDSpotter opened this issue 6 months ago • 1 comments

We have a function that includes an OR matching, like the following:

prismaClient.model.findMany({
  where: {
    AND: [{
      OR: [
        {
          field: {
            contains: 'value',
            mode: 'insensitive',
          }
        },
        {
          field2: {
            contains: 'value',
            mode: 'insensitive',
          }
        },
        {
          field3: {
            contains: 'value',
            mode: 'insensitive',
          }
        },
        // ...
      ]
    }]
  }
});

Will fail with the following error:

      Error in myCall: TypeError: Cannot read properties of null (reading 'indexOf')
          at match (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:148:23)
          at matchMultiple (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:180:10)
          at /Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:31:47
          at Array.some (<anonymous>)
          at matchOr (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:31:18)
          at match (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:47:32)
          at matchMultiple (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:180:10)
          at /Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:27:49
          at Array.filter (<anonymous>)
          at matchAnd (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:27:18)
          at match (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:48:33)
          at matchMultiple (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/match.ts:180:10)
          at /Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/find.ts:32:58
          at /Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/find.ts:259:84
          at Array.filter (<anonymous>)
          at /Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/find.ts:259:30
          at /Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/helpers.ts:61:14
          at Array.reduce (<anonymous>)
          at /Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/helpers.ts:60:22
          at findMany (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/operations/find/find.ts:263:4)
          at Object.findMany (/Users/user/Documents/Development/my-project/node_modules/.pnpm/[email protected]_@[email protected]/node_modules/prismock/src/lib/delegate.ts:93:38)

PDSpotter avatar Aug 06 '24 21:08 PDSpotter