(t *testing.T)
| 689 | } |
| 690 | |
| 691 | func TestBypassSingleChannelCache(t *testing.T) { |
| 692 | base.SetUpTestLogging(t, base.LevelInfo, base.KeyCache) |
| 693 | |
| 694 | terminator := make(chan bool) |
| 695 | defer close(terminator) |
| 696 | |
| 697 | // Seed the query handler with 100 docs across 10 channels |
| 698 | queryHandler := &testQueryHandler{} |
| 699 | for seq := 1; seq <= 100; seq++ { |
| 700 | channelName := fmt.Sprintf("chan_%d", seq%10) |
| 701 | queryEntry := testLogEntryForChannels(seq, []string{channelName}) |
| 702 | queryHandler.seedEntries(LogEntries{queryEntry}) |
| 703 | } |
| 704 | |
| 705 | bypassCache := &bypassChannelCache{ |
| 706 | channel: channels.NewID("chan_1", base.DefaultCollectionID), |
| 707 | queryHandler: queryHandler, |
| 708 | } |
| 709 | |
| 710 | entries, err := bypassCache.GetChanges(base.TestCtx(t), getChangesOptionsWithZeroSeq(t)) |
| 711 | assert.NoError(t, err) |
| 712 | require.Len(t, entries, 10) |
| 713 | |
| 714 | validFrom, cachedEntries := bypassCache.GetCachedChanges(getChangesOptionsWithZeroSeq(t)) |
| 715 | assert.Equal(t, uint64(math.MaxUint64), validFrom) |
| 716 | require.Len(t, cachedEntries, 0) |
| 717 | } |
| 718 | |
| 719 | func BenchmarkChannelCacheUniqueDocs_Ordered(b *testing.B) { |
| 720 |
nothing calls this directly
no test coverage detected