@@ -68,12 +68,14 @@ func TestSlidesReplaceText(t *testing.T) {
6868
6969func TestSlidesReplaceText_ObjectScopedShapeText (t * testing.T ) {
7070 var captured []* slides.Request
71+ var capturedWriteControl * slides.WriteControl
7172 srv := httptest .NewServer (http .HandlerFunc (func (w http.ResponseWriter , r * http.Request ) {
7273 w .Header ().Set ("Content-Type" , "application/json" )
7374 switch {
7475 case r .Method == http .MethodGet && strings .Contains (r .URL .Path , "/presentations/pres1" ):
7576 _ = json .NewEncoder (w ).Encode (map [string ]any {
7677 "presentationId" : "pres1" ,
78+ "revisionId" : "rev-read" ,
7779 "slides" : []any {
7880 map [string ]any {
7981 "objectId" : "slide_1" ,
@@ -102,6 +104,7 @@ func TestSlidesReplaceText_ObjectScopedShapeText(t *testing.T) {
102104 var req slides.BatchUpdatePresentationRequest
103105 if err := json .NewDecoder (r .Body ).Decode (& req ); err == nil {
104106 captured = req .Requests
107+ capturedWriteControl = req .WriteControl
105108 }
106109 _ = json .NewEncoder (w ).Encode (map [string ]any {
107110 "presentationId" : "pres1" ,
@@ -133,6 +136,9 @@ func TestSlidesReplaceText_ObjectScopedShapeText(t *testing.T) {
133136 if len (captured ) != 4 {
134137 t .Fatalf ("expected delete+insert for 2 matches, got %d: %+v" , len (captured ), captured )
135138 }
139+ if capturedWriteControl == nil || capturedWriteControl .RequiredRevisionId != "rev-read" {
140+ t .Fatalf ("expected write control requiredRevisionId=rev-read, got %#v" , capturedWriteControl )
141+ }
136142 firstDelete := captured [0 ].DeleteText
137143 if firstDelete == nil || firstDelete .ObjectId != "shape_1" ||
138144 firstDelete .TextRange == nil || * firstDelete .TextRange .StartIndex != 7 || * firstDelete .TextRange .EndIndex != 10 {
0 commit comments