|
23 | 23 | import static com.google.firebase.firestore.testutil.TestUtil.query; |
24 | 24 | import static org.junit.Assert.assertFalse; |
25 | 25 | import static org.junit.Assert.assertTrue; |
26 | | -import static org.junit.Assume.assumeTrue; |
27 | 26 |
|
28 | 27 | import com.google.firebase.firestore.core.Query; |
29 | 28 | import com.google.firebase.firestore.core.Target; |
@@ -450,164 +449,6 @@ public void withMultipleNotIn() { |
450 | 449 | validateServesTarget(q, "a", FieldIndex.Segment.Kind.ASCENDING); |
451 | 450 | } |
452 | 451 |
|
453 | | - @Test |
454 | | - public void buildTargetIndex() { |
455 | | - Query q = |
456 | | - query("collId") |
457 | | - .filter(filter("a", "==", 1)) |
458 | | - .filter(filter("b", "==", 2)) |
459 | | - .orderBy(orderBy("__name__", "desc")); |
460 | | - TargetIndexMatcher targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
461 | | - FieldIndex expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
462 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
463 | | - |
464 | | - q = query("collId").orderBy(orderBy("a")); |
465 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
466 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
467 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
468 | | - |
469 | | - q = query("collId").orderBy(orderBy("a")).orderBy(orderBy("b")); |
470 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
471 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
472 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
473 | | - |
474 | | - q = query("collId").filter(filter("a", "array-contains", "a")).orderBy(orderBy("b")); |
475 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
476 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
477 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
478 | | - |
479 | | - q = query("collId").orderBy(orderBy("b")); |
480 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
481 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
482 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
483 | | - |
484 | | - q = query("collId").orderBy(orderBy("a")); |
485 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
486 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
487 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
488 | | - |
489 | | - q = query("collId").filter(filter("a", ">", 1)).filter(filter("a", "<", 10)); |
490 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
491 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
492 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
493 | | - |
494 | | - q = query("collId").filter(filter("a", "in", Arrays.asList(1, 2))).filter(filter("b", "==", 5)); |
495 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
496 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
497 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
498 | | - |
499 | | - q = query("collId").filter(filter("value", "array-contains", "foo")).orderBy(orderBy("value")); |
500 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
501 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
502 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
503 | | - |
504 | | - q = |
505 | | - query("collId") |
506 | | - .filter(filter("a", "array-contains", "a")) |
507 | | - .filter(filter("a", ">", "b")) |
508 | | - .orderBy(orderBy("a", "asc")); |
509 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
510 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
511 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
512 | | - |
513 | | - q = query("collId").filter(filter("a", "==", 1)).orderBy(orderBy("__name__", "desc")); |
514 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
515 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
516 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
517 | | - |
518 | | - q = query("collId").filter(filter("a1", "==", "a")).filter(filter("a2", "==", "b")); |
519 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
520 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
521 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
522 | | - |
523 | | - q = |
524 | | - query("collId") |
525 | | - .filter(filter("equality1", "==", "a")) |
526 | | - .filter(filter("equality2", "==", "b")) |
527 | | - .filter(filter("inequality", ">=", "c")); |
528 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
529 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
530 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
531 | | - |
532 | | - q = |
533 | | - query("collId") |
534 | | - .filter(filter("equality1", "==", "a")) |
535 | | - .filter(filter("inequality", ">=", "c")) |
536 | | - .filter(filter("equality2", "==", "b")); |
537 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
538 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
539 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
540 | | - |
541 | | - q = query("collId").orderBy(orderBy("a")); |
542 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
543 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
544 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
545 | | - |
546 | | - q = query("collId").orderBy(orderBy("a", "desc")); |
547 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
548 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
549 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
550 | | - |
551 | | - q = query("collId").orderBy(orderBy("a")).orderBy(orderBy("__name__")); |
552 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
553 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
554 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
555 | | - |
556 | | - q = query("collId").filter(filter("a", "!=", 1)); |
557 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
558 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
559 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
560 | | - |
561 | | - q = query("collId").filter(filter("a", "!=", 1)).orderBy(orderBy("a")).orderBy(orderBy("b")); |
562 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
563 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
564 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
565 | | - |
566 | | - q = query("collId").filter(filter("a", "==", "a")).filter(filter("b", ">", "b")); |
567 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
568 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
569 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
570 | | - |
571 | | - q = |
572 | | - query("collId") |
573 | | - .filter(filter("a1", "==", "a")) |
574 | | - .filter(filter("a2", ">", "b")) |
575 | | - .orderBy(orderBy("a2", "asc")); |
576 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
577 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
578 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
579 | | - |
580 | | - q = |
581 | | - query("collId") |
582 | | - .filter(filter("a", ">=", 1)) |
583 | | - .filter(filter("a", "==", 5)) |
584 | | - .filter(filter("a", "<=", 10)); |
585 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
586 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
587 | | - // assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
588 | | - |
589 | | - q = |
590 | | - query("collId") |
591 | | - .filter(filter("a", "not-in", Arrays.asList(1, 2, 3))) |
592 | | - .filter(filter("a", ">=", 2)); |
593 | | - targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
594 | | - expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
595 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
596 | | - } |
597 | | - |
598 | | - @Test |
599 | | - public void failedTest() { |
600 | | - assumeTrue("Skip this test due to a bug in CSI.", false); |
601 | | - Query q = |
602 | | - query("collId") |
603 | | - .filter(filter("a", ">=", 1)) |
604 | | - .filter(filter("a", "==", 5)) |
605 | | - .filter(filter("a", "<=", 10)); |
606 | | - TargetIndexMatcher targetIndexMatcher = new TargetIndexMatcher(q.toTarget()); |
607 | | - FieldIndex expectedIndex = targetIndexMatcher.BuildTargetIndex(); |
608 | | - assertTrue(targetIndexMatcher.servedByIndex(expectedIndex)); |
609 | | - } |
610 | | - |
611 | 452 | @Test |
612 | 453 | public void withMultipleOrderBys() { |
613 | 454 | Query q = |
|
0 commit comments