MCPcopy Create free account
hub / github.com/couchbase/sync_gateway / TestChannelView

Function TestChannelView

db/database_test.go:2919–2954  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

2917}
2918
2919func TestChannelView(t *testing.T) {
2920
2921 db, ctx := setupTestDBWithViewsEnabled(t)
2922 defer db.Close(ctx)
2923 collection, err := db.GetDefaultDatabaseCollectionWithUser()
2924 require.NoError(t, err)
2925 ctx = collection.AddCollectionContext(ctx)
2926
2927 // Create doc
2928 log.Printf("Create doc 1...")
2929 body := Body{"key1": "value1", "key2": 1234}
2930 rev1id, _, err := collection.Put(ctx, "doc1", body)
2931 assert.NoError(t, err, "Couldn't create document")
2932 assert.Equal(t, "1-cb0c9a22be0e5a1b01084ec019defa81", rev1id)
2933
2934 var entries LogEntries
2935 // Query view (retry loop to wait for indexing)
2936 for i := 0; i < 10; i++ {
2937 var err error
2938 entries, err = collection.getChangesInChannelFromQuery(ctx, "*", 0, 100, 0, false)
2939
2940 assert.NoError(t, err, "Couldn't create document")
2941 if len(entries) >= 1 {
2942 break
2943 }
2944 log.Printf("No entries found - retrying (%d/10)", i+1)
2945 time.Sleep(500 * time.Millisecond)
2946 }
2947
2948 for i, entry := range entries {
2949 log.Printf("View Query returned entry (%d): %v", i, entry)
2950 }
2951 assert.Len(t, entries, 1)
2952 require.Equal(t, "doc1", entries[0].DocID)
2953 collection.RequireCurrentVersion(t, "doc1", entries[0].SourceID, entries[0].Version)
2954}
2955
2956func TestChannelQuery(t *testing.T) {
2957

Callers

nothing calls this directly

Calls 9

AddCollectionContextMethod · 0.80
RequireCurrentVersionMethod · 0.80
CloseMethod · 0.65
PutMethod · 0.65
LenMethod · 0.65
EqualMethod · 0.45

Tested by

no test coverage detected