Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
1 line
4.6 KiB
Plaintext
1 line
4.6 KiB
Plaintext
{"version":3,"sources":["../../src/utilities/combineWhereConstraints.spec.ts"],"sourcesContent":["import { describe, it, expect } from 'vitest'\nimport { Where } from '../types/index.js'\nimport { combineWhereConstraints } from './combineWhereConstraints.js'\n\ndescribe('combineWhereConstraints', () => {\n it('should merge matching constraint keys', async () => {\n const constraint: Where = {\n test: {\n equals: 'value',\n },\n }\n\n // should merge and queries\n const andConstraint: Where = {\n and: [constraint],\n }\n expect(combineWhereConstraints([andConstraint], 'and')).toEqual(andConstraint)\n // should merge multiple and queries\n expect(combineWhereConstraints([andConstraint, andConstraint], 'and')).toEqual({\n and: [constraint, constraint],\n })\n\n // should merge or queries\n const orConstraint: Where = {\n or: [constraint],\n }\n expect(combineWhereConstraints([orConstraint], 'or')).toEqual(orConstraint)\n // should merge multiple or queries\n expect(combineWhereConstraints([orConstraint, orConstraint], 'or')).toEqual({\n or: [constraint, constraint],\n })\n })\n\n it('should push mismatching constraints keys into `as` key', async () => {\n const constraint: Where = {\n test: {\n equals: 'value',\n },\n }\n\n // should push `and` into `or` key\n const andConstraint: Where = {\n and: [constraint],\n }\n expect(combineWhereConstraints([andConstraint], 'or')).toEqual({\n or: [andConstraint],\n })\n\n // should push `or` into `and` key\n const orConstraint: Where = {\n or: [constraint],\n }\n expect(combineWhereConstraints([orConstraint], 'and')).toEqual({\n and: [orConstraint],\n })\n\n // should merge `and` but push `or` into `and` key\n expect(combineWhereConstraints([andConstraint, orConstraint], 'and')).toEqual({\n and: [constraint, orConstraint],\n })\n })\n\n it('should push non and/or constraint key into `as` key', async () => {\n const basicConstraint: Where = {\n test: {\n equals: 'value',\n },\n }\n\n expect(combineWhereConstraints([basicConstraint], 'and')).toEqual({\n and: [basicConstraint],\n })\n expect(combineWhereConstraints([basicConstraint], 'or')).toEqual({\n or: [basicConstraint],\n })\n })\n\n it('should return an empty object when no constraints are provided', async () => {\n expect(combineWhereConstraints([], 'and')).toEqual({})\n expect(combineWhereConstraints([], 'or')).toEqual({})\n })\n\n it('should return an empty object when all constraints are empty', async () => {\n expect(combineWhereConstraints([{}, {}, undefined], 'and')).toEqual({})\n expect(combineWhereConstraints([{}, {}, undefined], 'or')).toEqual({})\n })\n})\n"],"names":["describe","it","expect","combineWhereConstraints","constraint","test","equals","andConstraint","and","toEqual","orConstraint","or","basicConstraint","undefined"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,EAAE,EAAEC,MAAM,QAAQ,SAAQ;AAE7C,SAASC,uBAAuB,QAAQ,+BAA8B;AAEtEH,SAAS,2BAA2B;IAClCC,GAAG,yCAAyC;QAC1C,MAAMG,aAAoB;YACxBC,MAAM;gBACJC,QAAQ;YACV;QACF;QAEA,2BAA2B;QAC3B,MAAMC,gBAAuB;YAC3BC,KAAK;gBAACJ;aAAW;QACnB;QACAF,OAAOC,wBAAwB;YAACI;SAAc,EAAE,QAAQE,OAAO,CAACF;QAChE,oCAAoC;QACpCL,OAAOC,wBAAwB;YAACI;YAAeA;SAAc,EAAE,QAAQE,OAAO,CAAC;YAC7ED,KAAK;gBAACJ;gBAAYA;aAAW;QAC/B;QAEA,0BAA0B;QAC1B,MAAMM,eAAsB;YAC1BC,IAAI;gBAACP;aAAW;QAClB;QACAF,OAAOC,wBAAwB;YAACO;SAAa,EAAE,OAAOD,OAAO,CAACC;QAC9D,mCAAmC;QACnCR,OAAOC,wBAAwB;YAACO;YAAcA;SAAa,EAAE,OAAOD,OAAO,CAAC;YAC1EE,IAAI;gBAACP;gBAAYA;aAAW;QAC9B;IACF;IAEAH,GAAG,0DAA0D;QAC3D,MAAMG,aAAoB;YACxBC,MAAM;gBACJC,QAAQ;YACV;QACF;QAEA,kCAAkC;QAClC,MAAMC,gBAAuB;YAC3BC,KAAK;gBAACJ;aAAW;QACnB;QACAF,OAAOC,wBAAwB;YAACI;SAAc,EAAE,OAAOE,OAAO,CAAC;YAC7DE,IAAI;gBAACJ;aAAc;QACrB;QAEA,kCAAkC;QAClC,MAAMG,eAAsB;YAC1BC,IAAI;gBAACP;aAAW;QAClB;QACAF,OAAOC,wBAAwB;YAACO;SAAa,EAAE,QAAQD,OAAO,CAAC;YAC7DD,KAAK;gBAACE;aAAa;QACrB;QAEA,kDAAkD;QAClDR,OAAOC,wBAAwB;YAACI;YAAeG;SAAa,EAAE,QAAQD,OAAO,CAAC;YAC5ED,KAAK;gBAACJ;gBAAYM;aAAa;QACjC;IACF;IAEAT,GAAG,uDAAuD;QACxD,MAAMW,kBAAyB;YAC7BP,MAAM;gBACJC,QAAQ;YACV;QACF;QAEAJ,OAAOC,wBAAwB;YAACS;SAAgB,EAAE,QAAQH,OAAO,CAAC;YAChED,KAAK;gBAACI;aAAgB;QACxB;QACAV,OAAOC,wBAAwB;YAACS;SAAgB,EAAE,OAAOH,OAAO,CAAC;YAC/DE,IAAI;gBAACC;aAAgB;QACvB;IACF;IAEAX,GAAG,kEAAkE;QACnEC,OAAOC,wBAAwB,EAAE,EAAE,QAAQM,OAAO,CAAC,CAAC;QACpDP,OAAOC,wBAAwB,EAAE,EAAE,OAAOM,OAAO,CAAC,CAAC;IACrD;IAEAR,GAAG,gEAAgE;QACjEC,OAAOC,wBAAwB;YAAC,CAAC;YAAG,CAAC;YAAGU;SAAU,EAAE,QAAQJ,OAAO,CAAC,CAAC;QACrEP,OAAOC,wBAAwB;YAAC,CAAC;YAAG,CAAC;YAAGU;SAAU,EAAE,OAAOJ,OAAO,CAAC,CAAC;IACtE;AACF"} |