@@ -135,37 +135,37 @@ public static function provideQueryBuilderToMql(): iterable
135135 'find ' => [
136136 [
137137 '$or ' => [
138- ['id ' => 1 ],
139- ['id ' => ['$in ' => [1 , 2 , 3 ]]],
138+ ['foo ' => 1 ],
139+ ['foo ' => ['$in ' => [1 , 2 , 3 ]]],
140140 ],
141141 ],
142142 [], // options
143143 ],
144144 ],
145- fn (Builder $ builder ) => $ builder ->where ('id ' , '= ' , 1 )
146- ->orWhereIn ('id ' , [1 , 2 , 3 ]),
145+ fn (Builder $ builder ) => $ builder ->where ('foo ' , '= ' , 1 )
146+ ->orWhereIn ('foo ' , [1 , 2 , 3 ]),
147147 ];
148148
149149 /** @see DatabaseQueryBuilderTest::testBasicWhereNotIns */
150150 yield 'whereNotIn ' => [
151- ['find ' => [['id ' => ['$nin ' => [1 , 2 , 3 ]]], []]],
152- fn (Builder $ builder ) => $ builder ->whereNotIn ('id ' , [1 , 2 , 3 ]),
151+ ['find ' => [['foo ' => ['$nin ' => [1 , 2 , 3 ]]], []]],
152+ fn (Builder $ builder ) => $ builder ->whereNotIn ('foo ' , [1 , 2 , 3 ]),
153153 ];
154154
155155 yield 'orWhereNotIn ' => [
156156 [
157157 'find ' => [
158158 [
159159 '$or ' => [
160- ['id ' => 1 ],
161- ['id ' => ['$nin ' => [1 , 2 , 3 ]]],
160+ ['foo ' => 1 ],
161+ ['foo ' => ['$nin ' => [1 , 2 , 3 ]]],
162162 ],
163163 ],
164164 [], // options
165165 ],
166166 ],
167- fn (Builder $ builder ) => $ builder ->where ('id ' , '= ' , 1 )
168- ->orWhereNotIn ('id ' , [1 , 2 , 3 ]),
167+ fn (Builder $ builder ) => $ builder ->where ('foo ' , '= ' , 1 )
168+ ->orWhereNotIn ('foo ' , [1 , 2 , 3 ]),
169169 ];
170170
171171 /** @see DatabaseQueryBuilderTest::testEmptyWhereIns */
@@ -220,15 +220,15 @@ public static function provideQueryBuilderToMql(): iterable
220220 'find ' => [
221221 [
222222 '$or ' => [
223- ['id ' => 1 ],
223+ ['age ' => 1 ],
224224 ['email ' => 'foo ' ],
225225 ],
226226 ],
227227 [], // options
228228 ],
229229 ],
230230 fn (Builder $ builder ) => $ builder
231- ->where ('id ' , '= ' , 1 )
231+ ->where ('age ' , '= ' , 1 )
232232 ->orWhere ('email ' , '= ' , 'foo ' ),
233233 ];
234234
@@ -589,16 +589,16 @@ function (Builder $builder) {
589589 'find ' => [
590590 [
591591 '$or ' => [
592- ['id ' => 1 ],
593- ['id ' => ['$gte ' => 3 , '$lte ' => 5 ]],
592+ ['age ' => 1 ],
593+ ['age ' => ['$gte ' => 3 , '$lte ' => 5 ]],
594594 ],
595595 ],
596596 [], // options
597597 ],
598598 ],
599599 fn (Builder $ builder ) => $ builder
600- ->where ('id ' , '= ' , 1 )
601- ->orWhereBetween ('id ' , [3 , 5 ]),
600+ ->where ('age ' , '= ' , 1 )
601+ ->orWhereBetween ('age ' , [3 , 5 ]),
602602 ];
603603
604604 /** @link https://www.mongodb.com/docs/manual/reference/bson-type-comparison-order/#arrays */
@@ -607,48 +607,48 @@ function (Builder $builder) {
607607 'find ' => [
608608 [
609609 '$or ' => [
610- ['id ' => 1 ],
611- ['id ' => ['$gte ' => [4 ], '$lte ' => [6 , 8 ]]],
610+ ['age ' => 1 ],
611+ ['age ' => ['$gte ' => [4 ], '$lte ' => [6 , 8 ]]],
612612 ],
613613 ],
614614 [], // options
615615 ],
616616 ],
617617 fn (Builder $ builder ) => $ builder
618- ->where ('id ' , '= ' , 1 )
619- ->orWhereBetween ('id ' , [[4 ], [6 , 8 ]]),
618+ ->where ('age ' , '= ' , 1 )
619+ ->orWhereBetween ('age ' , [[4 ], [6 , 8 ]]),
620620 ];
621621
622622 yield 'orWhereBetween collection ' => [
623623 [
624624 'find ' => [
625625 [
626626 '$or ' => [
627- ['id ' => 1 ],
628- ['id ' => ['$gte ' => 3 , '$lte ' => 4 ]],
627+ ['age ' => 1 ],
628+ ['age ' => ['$gte ' => 3 , '$lte ' => 4 ]],
629629 ],
630630 ],
631631 [], // options
632632 ],
633633 ],
634634 fn (Builder $ builder ) => $ builder
635- ->where ('id ' , '= ' , 1 )
636- ->orWhereBetween ('id ' , collect ([3 , 4 ])),
635+ ->where ('age ' , '= ' , 1 )
636+ ->orWhereBetween ('age ' , collect ([3 , 4 ])),
637637 ];
638638
639639 yield 'whereNotBetween array of numbers ' => [
640640 [
641641 'find ' => [
642642 [
643643 '$or ' => [
644- ['id ' => ['$lte ' => 1 ]],
645- ['id ' => ['$gte ' => 2 ]],
644+ ['age ' => ['$lte ' => 1 ]],
645+ ['age ' => ['$gte ' => 2 ]],
646646 ],
647647 ],
648648 [], // options
649649 ],
650650 ],
651- fn (Builder $ builder ) => $ builder ->whereNotBetween ('id ' , [1 , 2 ]),
651+ fn (Builder $ builder ) => $ builder ->whereNotBetween ('age ' , [1 , 2 ]),
652652 ];
653653
654654 /** @see DatabaseQueryBuilderTest::testOrWhereNotBetween() */
@@ -657,11 +657,11 @@ function (Builder $builder) {
657657 'find ' => [
658658 [
659659 '$or ' => [
660- ['id ' => 1 ],
660+ ['age ' => 1 ],
661661 [
662662 '$or ' => [
663- ['id ' => ['$lte ' => 3 ]],
664- ['id ' => ['$gte ' => 5 ]],
663+ ['age ' => ['$lte ' => 3 ]],
664+ ['age ' => ['$gte ' => 5 ]],
665665 ],
666666 ],
667667 ],
@@ -670,20 +670,20 @@ function (Builder $builder) {
670670 ],
671671 ],
672672 fn (Builder $ builder ) => $ builder
673- ->where ('id ' , '= ' , 1 )
674- ->orWhereNotBetween ('id ' , [3 , 5 ]),
673+ ->where ('age ' , '= ' , 1 )
674+ ->orWhereNotBetween ('age ' , [3 , 5 ]),
675675 ];
676676
677677 yield 'orWhereNotBetween nested array of numbers ' => [
678678 [
679679 'find ' => [
680680 [
681681 '$or ' => [
682- ['id ' => 1 ],
682+ ['age ' => 1 ],
683683 [
684684 '$or ' => [
685- ['id ' => ['$lte ' => [2 , 3 ]]],
686- ['id ' => ['$gte ' => [5 ]]],
685+ ['age ' => ['$lte ' => [2 , 3 ]]],
686+ ['age ' => ['$gte ' => [5 ]]],
687687 ],
688688 ],
689689 ],
@@ -692,20 +692,20 @@ function (Builder $builder) {
692692 ],
693693 ],
694694 fn (Builder $ builder ) => $ builder
695- ->where ('id ' , '= ' , 1 )
696- ->orWhereNotBetween ('id ' , [[2 , 3 ], [5 ]]),
695+ ->where ('age ' , '= ' , 1 )
696+ ->orWhereNotBetween ('age ' , [[2 , 3 ], [5 ]]),
697697 ];
698698
699699 yield 'orWhereNotBetween collection ' => [
700700 [
701701 'find ' => [
702702 [
703703 '$or ' => [
704- ['id ' => 1 ],
704+ ['age ' => 1 ],
705705 [
706706 '$or ' => [
707- ['id ' => ['$lte ' => 3 ]],
708- ['id ' => ['$gte ' => 4 ]],
707+ ['age ' => ['$lte ' => 3 ]],
708+ ['age ' => ['$gte ' => 4 ]],
709709 ],
710710 ],
711711 ],
@@ -714,8 +714,8 @@ function (Builder $builder) {
714714 ],
715715 ],
716716 fn (Builder $ builder ) => $ builder
717- ->where ('id ' , '= ' , 1 )
718- ->orWhereNotBetween ('id ' , collect ([3 , 4 ])),
717+ ->where ('age ' , '= ' , 1 )
718+ ->orWhereNotBetween ('age ' , collect ([3 , 4 ])),
719719 ];
720720
721721 yield 'where like ' => [
@@ -1160,6 +1160,16 @@ function (Builder $elemMatchQuery): void {
11601160 ),
11611161 ];
11621162
1163+ yield 'id alias for _id ' => [
1164+ ['find ' => [['_id ' => 1 ], []]],
1165+ fn (Builder $ builder ) => $ builder ->where ('id ' , 1 ),
1166+ ];
1167+ 1168+ yield 'id alias for _id with $or ' => [
1169+ ['find ' => [['$or ' => [['_id ' => 1 ], ['_id ' => 2 ]]], []]],
1170+ fn (Builder $ builder ) => $ builder ->where ('id ' , 1 )->orWhere ('id ' , 2 ),
1171+ ];
1172+ 11631173 // Method added in Laravel v10.47.0
11641174 if (method_exists (Builder::class, 'whereAll ' )) {
11651175 /** @see DatabaseQueryBuilderTest::testWhereAll */
0 commit comments