func RunServiceName()

in pkg/index/testcases/service_name.go [36:85]


func RunServiceName(t *testing.T, store SimpleStore) {
	tester := assert.New(t)
	tests := []struct {
		want    posting.List
		name    string
		arg     index.Field
		wantErr bool
	}{
		{
			name: "match gateway",
			arg: index.Field{
				Key:  serviceName,
				Term: []byte("gateway"),
			},
			want: roaring.NewRange(0, 50),
		},
		{
			name: "match webpage",
			arg: index.Field{
				Key:  serviceName,
				Term: []byte("webpage"),
			},
			want: roaring.NewRange(50, 100),
		},
		{
			name: "unknown field",
			want: roaring.DummyPostingList,
		},
		{
			name: "unknown term",
			arg: index.Field{
				Key:  serviceName,
				Term: []byte("unknown"),
			},
			want: roaring.DummyPostingList,
		},
	}
	for _, tt := range tests {
		t.Run(tt.name, func(t *testing.T) {
			list, err := store.MatchTerms(tt.arg)
			if tt.wantErr {
				tester.Error(err)
				return
			}
			tester.NoError(err)
			tester.NotNil(list)
			tester.True(tt.want.Equal(list))
		})
	}
}