Explorar o código

integration: add serialized range to TestV3CompactCurrentRev

To catch compaction bugs in the proxy key cache.
Anthony Romano %!s(int64=8) %!d(string=hai) anos
pai
achega
b9cfa4cef9
Modificáronse 1 ficheiros con 10 adicións e 1 borrados
  1. 10 1
      integration/v3_grpc_test.go

+ 10 - 1
integration/v3_grpc_test.go

@@ -123,16 +123,25 @@ func TestV3CompactCurrentRev(t *testing.T) {
 			t.Fatalf("couldn't put key (%v)", err)
 		}
 	}
+	// get key to add to proxy cache, if any
+	if _, err := kvc.Range(context.TODO(), &pb.RangeRequest{Key: []byte("foo")}); err != nil {
+		t.Fatal(err)
+	}
 	// compact on current revision
 	_, err := kvc.Compact(context.Background(), &pb.CompactionRequest{Revision: 4})
 	if err != nil {
 		t.Fatalf("couldn't compact kv space (%v)", err)
 	}
-	// key still exists?
+	// key still exists when linearized?
 	_, err = kvc.Range(context.Background(), &pb.RangeRequest{Key: []byte("foo")})
 	if err != nil {
 		t.Fatalf("couldn't get key after compaction (%v)", err)
 	}
+	// key still exists when serialized?
+	_, err = kvc.Range(context.Background(), &pb.RangeRequest{Key: []byte("foo"), Serializable: true})
+	if err != nil {
+		t.Fatalf("couldn't get serialized key after compaction (%v)", err)
+	}
 }
 
 func TestV3TxnTooManyOps(t *testing.T) {